Do not input private or sensitive data. View Qlik Privacy & Cookie Policy.
Skip to main content

Announcements
Save an extra $150 Dec 1–7 with code CYBERWEEK - stackable with early bird savings: Register
cancel
Showing results for 
Search instead for 
Did you mean: 
hbandarra
Contributor
Contributor

Web services output

Hi guys, thanks for the nice work so far!
But here goes a question:
I'm consuming a web service with your tWebServiceInput component and I'm getting the soap message instead of the actual list of results that my web service produces. It seams that you cannot parse complex types.
Could you please tell-me what kind of lists Talend can properly parse? Is Talend expecting specific names for the list and list element xml nodes?
Also: Do I have to configure the output schema in any special way?
The output of my web service is something like:
<?xml version="1.0" encoding="utf-8" ?>
<ArrayOfMyClass xmlns:xsi=" http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd=" http://www.w3.org/2001/XMLSchema" xmlns=" http://xxx.com/webservices/xxx">
<MyClass>
<b>10</b>
</MyClass>
<MyClass>
<b>11</b>
</MyClass>
<MyClass>
<b>12</b>
</MyClass>
</ArrayOfMyClass>
My web service is done using Managed C++ returning System::Collections::Generic::List<MyClass^>I^.
The class is

public ref class MyClass
{
public:
int b;
};
And the WSDL part that describes my class is:
<s:element name="GetArray">
<s:complexType />
</s:element>
<s:element name="GetArrayResponse">
<s:complexType>
<s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="GetArrayResult" type="tns:ArrayOfMyClass" />
</s:sequence>
</s:complexType>
</s:element>
<s:complexType name="ArrayOfMyClass">
<s:sequence>
<s:element minOccurs="0" maxOccurs="unbounded" name="MyClass" nillable="true" type="tns:MyClass" />
</s:sequence>
</s:complexType>
<s:complexType name="MyClass">
<s:sequence>
<s:element minOccurs="1" maxOccurs="1" name="b" type="s:int" />
</s:sequence>
</s:complexType>
Thanks!
HB
Labels (4)
18 Replies
Anonymous
Not applicable

Turns out this problem is because of the complex data types. I can get data when the project is in perl, but not in Java.
I have opened the following issue for this:
http://www.talendforge.org/bugs/view.php?id=3814
Anonymous
Not applicable

Any update on this? I got a message on bugtracker that someone was going to contact me about a button on the advanced menu. Only thing I see is a check box for the stats.
Anonymous
Not applicable

Hello
I got a message on bugtracker that someone was going to contact me about a button on the advanced menu. Only thing I see is a check box for the stats.

This button is only available on Java project now. I have sent a email to parham, a Talend designer. He will give some explaination about this issue.
Best regards
shong
Anonymous
Not applicable

Hi, are you sure this is on my version? (TIS 2.3.2.r12707)
I don't see it on a java project.
Anonymous
Not applicable

Hello dweaver
It is built on the latest version 2.4 0683p000009MACn.png
Best regards

shong
Anonymous
Not applicable

I wasn't aware that this is a stable build.
_AnonymousUser
Specialist III
Specialist III

Can you please let us know what is the Advance option in 2.4 I see that there is a WSDL2java button,but then how do one map the complex data types using this? please help
Anonymous
Not applicable

Hello
Can you please let us know what is the Advance option in 2.4 I see that there is a WSDL2java button,but then how do one map the complex data types using this? please help

Pease read 2997
Best regards
shong
Anonymous
Not applicable

Hello
About the complex type in tWebServiceInput, we design a new button "WSDL2Java" to process this case in version 2.4.
as we know tWebServiceInput is a webservice client provide by TOS, and it can work with the FLOW link with others TOS components to complete an integral job.
"WSDL2java" it will generate a stub client, and then user can write some simple code with the stub, it is a common use way with the webservice client,
and nearly all the people create the client following this way. So, TOS support this function, it can deal with all the case. but need user write some code.
I add a usecase about the this button, please see: tWebServiceInput_test.zip, it contains a TOS java project, and a war file. I test it on Tomcat5.5. it is ok. It can show how TOS process the complex type in webservice.
regards
xtan