we created two WSDI services.
1)
One service is just for testing. For this service only one operation is implemented requesting and returning only one column. A job using this service is working and there are no problems importing its definition to a Webservice Client Stage via the Webservice Meta Data Importer.
2)
The other service is the one that should be implemented. For this service more than one operation is implemented. The operations are requesting and returning more than one column. For testing this service only one operation was activeted.
Input and output columns of the activated operation are grouped into a structure. Trying to import the definitions of these service/operation returns the following message:
"Cannot complete the mapping automatically. The messagy may define some recursive constructs. You need to procedd to a manual mapping using the XML Meta Data Importer."
We tried the solution suggest by viewtopic.php?t=137003
to import it meta data.
An import of the service/operation and its definitions to the Webservice Client Stage with the XML Meta Data Importer is possible with this workaround. We set up the stage as mentioned in the post. Trying to run the job using this WS client is not succesful. The jobs aborts with the following error message in the Director log:
Code: Select all
TestWS01..SF_WSD01WSDI.IDENT1: com.ascentialsoftware.wsclient.ServiceInvocationException: Service invocation exception:
at com.ascentialsoftware.wsclient.WebService.callService(WebService.java:1602)
at com.ascentialsoftware.wsclient.WebService.callService(WebService.java:1544)
at com.ascentialsoftware.wspack.Transformer.process(Transformer.java:104)
at com.ascentialsoftware.jds.StageFactory.runStage(StageFactory.java:544)
at com.ascentialsoftware.jds.StageFactory.runSource(StageFactory.java:335)
Caused by: java.lang.NullPointerException
at com.ascentialsoftware.wsclient.xml.DerivationParser.match(DerivationParser.java:622)
at com.ascentialsoftware.wsclient.xml.DerivationParser.element(DerivationParser.java:367)
at com.ascentialsoftware.wsclient.xml.DerivationParser.segment(DerivationParser.java:271)
at com.ascentialsoftware.wsclient.xml.DerivationParser.segment(DerivationParser.java:293)
at com.ascentialsoftware.wsclient.xml.DerivationParser.segment(DerivationParser.java:293)
at com.ascentialsoftware.wsclient.xml.DerivationParser.segment(DerivationParser.java:208)
at com.ascentialsoftware.wsclient.xml.DerivationParser.expr(DerivationParser.java:171)
at com.ascentialsoftware.wsclient.xml.DerivationParser.parse(DerivationParser.java:138)
at com.ascentialsoftware.wsclient.xml.TreeBuilder.compileRules(TreeBuilder.java:84)
at com.ascentialsoftware.wsclient.MappingHandler.fromArray(MappingHandler.java:304)
at com.ascentialsoftware.wsclient.InputRequest.buildRequestBodyDocument(InputRequest.java:908)
at com.ascentialsoftware.wsclient.WebService.callServiceInternal(WebService.java:1625)
at com.ascentialsoftware.wsclient.WebService.callService(WebService.java:1591)
... 4 more
best regards
Michael