Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
Hi everybody,
I actually work on a project where I have to call WSDL. I use Talend Studio 7.2.1.
This WSDL is not mine (
the customer give it to me)
and was compiled with Apache Axis version 1.4.I use a tWebService component and configure it correctly (I think). WSDL is correctly loaded and I can get methods.
When I run my job, I have errors about the compilation of the WSDL. I paste only a part of logs because it's always the same error on differents type (Array, arrayType)
Errors:
[FATAL]: test_ws_0_1.TEST_WS - tWebService_2 Error compiling schema from WSDL at {file:/C:/Users/User1/AppData/Local/Temp/wsdl16406854865101/mainWSDL.wsdl}:
undefined simple or complex type 'soapenc:Array'
at line 22 column 6 of schema file:/C:/Users/User1/AppData/Local/Temp/wsdl16406854865101/mainWSDL.wsdl
(...)
undefined simple or complex type 'soapenc:Array'
at line 73 column 6 of schema file:/C:/Users/User1/AppData/Local/Temp/wsdl16406854865101/mainWSDL.wsdl
undefined attribute 'soapenc:arrayType'
at line 74 column 7 of schema file:/C:/Users/User1/AppData/Local/Temp/wsdl16406854865101/mainWSDL.wsdl
at org.apache.cxf.endpoint.dynamic.DynamicClientFactory$InnerErrorListener.throwException(DynamicClientFactory.java:755)
at org.apache.cxf.endpoint.dynamic.DynamicClientFactory.createClient(DynamicClientFactory.java:342)
at org.talend.webservice.helper.ServiceInvokerHelper.createClient(ServiceInvokerHelper.java:144)
at org.talend.webservice.helper.ServiceInvokerHelper.getClient(ServiceInvokerHelper.java:135)
at org.talend.webservice.helper.ServiceInvokerHelper.invoke(ServiceInvokerHelper.java:236)
at test_ws_0_1.TEST_WS.tJavaFlex_3Process(TEST_WS.java:999)
at test_ws_0_1.TEST_WS.runJobInTOS(TEST_WS.java:1707)
at test_ws_0_1.TEST_WS.main(TEST_WS.java:1470)
Caused by: org.xml.sax.SAXParseExceptionpublicId: file:/C:/Users/User1/AppData/Local/Temp/wsdl16406854865101/mainWSDL.wsdl; systemId: file:/C:/Users/User1/AppData/Local/Temp/wsdl16406854865101/mainWSDL.wsdl; lineNumber: 22; columnNumber: 6; undefined simple or complex type 'soapenc:Array'
at com.sun.xml.xsom.impl.parser.ParserContext$1.reportError(ParserContext.java:180)
at com.sun.xml.xsom.impl.parser.NGCCRuntimeEx.reportError(NGCCRuntimeEx.java:175)
at com.sun.xml.xsom.impl.parser.DelayedRef.resolve(DelayedRef.java:110)
at com.sun.xml.xsom.impl.parser.DelayedRef.run(DelayedRef.java:85)
at com.sun.xml.xsom.impl.parser.ParserContext.getResult(ParserContext.java:135)
at com.sun.xml.xsom.parser.XSOMParser.getResult(XSOMParser.java:211)
at com.sun.tools.xjc.ModelLoader.createXSOM(ModelLoader.java:538)
at com.sun.tools.xjc.api.impl.s2j.SchemaCompilerImpl.bind(SchemaCompilerImpl.java:270)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.apache.cxf.common.util.ReflectionInvokationHandler.invoke(ReflectionInvokationHandler.java:89)
at com.sun.proxy.$Proxy15.bind(Unknown Source)
at org.apache.cxf.endpoint.dynamic.DynamicClientFactory.createClient(DynamicClientFactory.java:340)
... 6 more
[statistics] disconnected
Header of the generated WSDL (to have definition of tag soapenc):
<?xml version="1.0" encoding="UTF-8"?>
<wsdl:definitions targetNamespace="http://www.adonix.com/WSS" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:apachesoap="http://xml.apache.org/xml-soap" xmlns:intf="http://www.adonix.com/WSS" xmlns:wss="http://www.adonix.com/WSS" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:wsdlsoap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/">
<wsdl:types>
<schema targetNamespace="http://www.adonix.com/WSS" xmlns="http://www.w3.org/2001/XMLSchema">
<import namespace="http://schemas.xmlsoap.org/soap/encoding/"/>
I found one topic about this but I doesn't found the topic "MGENTO 21213" mentioned in the only comment.
If someone have an idea about this error, thanks.
Bests regards
Hello,
The soapenc: Array indicates a non-standard style of web service encoding called "RPC Encoding".
We are supposing that your wsdl contains soap:enc then you are unable to invoke the web service. Effectively we don't support RPC style. Would you mind attach the wsdl file so that we could take a testing on it?
Best regards
Sabrina
Hello,
Thanks for reply.
I attached file (but need to hide address of wsdlsoap because it is a private link of my vendor).
Is there an other possibility in talend to call invoke this kinfdof wsdl?
Bests regards
Do You have a solution?
Hello,
Effectively we don't support RPC style.
According to http://stackoverflow.com/questions/2455218/wsimport-cannot-resolve-the-name it seems obsolete. Maybe possible by requesting a feature for that.
Best regards
Sabrina