tWebServiceInput: return errors

One Star

tWebServiceInput: return errors

Hi,
I´m using tWebServiceInput but when i run the job i got the message:
"02/07/2007 14:43:27 org.apache.axis.client.Call invoke
SEVERE: Exception:
org.xml.sax.SAXException: Found character data inside an array element while deserializing"
Somebody could help me ?

tks, Regards
Zida
Employee

Re: tWebServiceInput: return errors

Hello
Your description is not really detailed.
Did you choose the good return type for your Web Service ?
Hope it helps
Michaël.
One Star

Re: tWebServiceInput: return errors

Hi,
My webservice just return an "OK" or an error message. But the type is always String.
One Star

Re: tWebServiceInput: return errors

I changed the return type of my webservice to Object[], and deleted the webservice's parameters.
When i run the job i got the message: "Exception in component tWebServiceInput_1
java.lang.ArrayIndexOutOfBoundsException: 0".
The line number in the message error points to this line in the source:
"results_tWebServiceInput_1 = String.valueOf(tempArray_tWebServiceInput_1);"
The webserviceinput work just with Object[] parameters and returns ?
Zida
Employee

Re: tWebServiceInput: return errors

Hi,
Can you share your webservice wsdl ?
One Star

Re: tWebServiceInput: return errors

Hi
I could get the return value of webservice, but i have to change the type of the return.
In my webservice i set the return with the type Object and create the return like this:
Object var = new String();
var = "OK: " ;
return var;
Now i have one more trouble. I created one parameter named cdEmpresa, type: Long, value: 101.
My webservice are like this:
@WebMethod
public Object EnviaDadosServidor(@WebParam(name = "cdEmpresa") long cdEmpresa) {......
And i´m setting the return with this parameter:
return var + " " + cdEmpresa; and the value is always 0.
How i need to set my parameters ?! If i set just one parameter with Object[], it´s doesn´t work either.
Zida
One Star

Re: tWebServiceInput: return errors

mhirt, sorry about the other thread i´m very shamed...
So,
My webservice was writted in Java (netbeans).
The name of parameters are the same in talend parameter and in my webservice.
The application server is JBoss.
My WSDL is this:
<?xml version="1.0" encoding="UTF-8" ?>
- <definitions xmlns="http://schemas.xmlsoap.org/wsdl/" xmlns:tns="http://maxiconsistemas.com.br/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" targetNamespace="http://maxiconsistemas.com.br/" name="TransmiteDadosEmbarcadorService">
- <types>
- <xsd:schema>
<xsd:import schemaLocation="http://192.168.180.154:8080/TransmiteDadosEmbarcador/TransmiteDadosEmbarcador?xsd=1" namespace="http://maxiconsistemas.com.br/" />
</xsd:schema>
</types>
- <message name="EnviaDadosServidor">
<part element="tns:EnviaDadosServidor" name="parameters" />
</message>
- <message name="EnviaDadosServidorResponse">
<part element="tns:EnviaDadosServidorResponse" name="parameters" />
</message>
- <message name="RecebeDadosServidor">
<part element="tns:RecebeDadosServidor" name="parameters" />
</message>
- <message name="RecebeDadosServidorResponse">
<part element="tns:RecebeDadosServidorResponse" name="parameters" />
</message>
- <portType name="TransmiteDadosEmbarcador">
- <operation name="EnviaDadosServidor">
<input message="tns:EnviaDadosServidor" />
<output message="tns:EnviaDadosServidorResponse" />
</operation>
- <operation name="RecebeDadosServidor">
<input message="tns:RecebeDadosServidor" />
<output message="tns:RecebeDadosServidorResponse" />
</operation>
</portType>
- <binding name="TransmiteDadosEmbarcadorPortBinding" type="tns:TransmiteDadosEmbarcador">
<soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http" />
- <operation name="EnviaDadosServidor">
<soapSmiley Surprisedperation soapAction="" />
- <input>
<soap:body use="literal" />
</input>
- <output>
<soap:body use="literal" />
</output>
</operation>
- <operation name="RecebeDadosServidor">
<soapSmiley Surprisedperation soapAction="" />
- <input>
<soap:body use="literal" />
</input>
- <output>
<soap:body use="literal" />
</output>
</operation>
</binding>
- <service name="TransmiteDadosEmbarcadorService">
- <port name="TransmiteDadosEmbarcadorPort" binding="tns:TransmiteDadosEmbarcadorPortBinding">
<soap:address location="http://192.168.180.154:8080/TransmiteDadosEmbarcador/TransmiteDadosEmbarcador" />
</port>
</service>
</definitions>
One Star

Re: tWebServiceInput: return errors

Complementing ...
On talend, field "EndPoint URI", i´m setting: "http://maxiconsistemas.com.br/"
field "WSDL" , i´m setting: "http://192.168.180.154:8080/TransmiteDadosEmbarcador/TransmiteDadosEmbarcador?wsdl"
SOAPAction URI: ""
i´m not filling the check "Need authentication"
Method Name: "EnviaDadosServidor", return class: "java.lang.String.class"
tks
rZida
Employee

Re: tWebServiceInput: return errors

Great , with all the details, I finally reproduce and identify the bug with the tWebServiceInput.
I'm going to declare it, and give you news before 2.1.0 final.
Thanks for your support.
One Star

Re: tWebServiceInput: return errors

Tks mhirt
I´ll wait for 2.1.0 final Smiley Tongue
One Star

Re: tWebServiceInput: return errors

Hi ~
I make use of "tWebServiceInput" to call general WebService OK!!
But Calling Talend Webservice (export Job Script --> Aixs Webservice --> Deploy AP Server)appears error message :
Starting job test1 at 09:40 05/12/2007.
Exception in component tWebServiceInput_1
java.lang.RuntimeException: not know how to convert '--context=Default' into org.apache.axis.client.Call@542529
at org.talend.DynamicInvoker.getParamData(DynamicInvoker.java:277)
at org.talend.DynamicInvoker.invokeMethod(DynamicInvoker.java:236)
at org.talend.DynamicInvoker.main(DynamicInvoker.java:125)
at org.talend.DynamicInvoker.main(DynamicInvoker.java:101)
at demo___java.test1.test1.tWebServiceInput_1Process(test1.java:149)
at demo___java.test1.test1.runJob(test1.java:391)
at demo___java.test1.test1.main(test1.java:337)
Job test1 ended at 09:40 05/12/2007.


I checked Program, Find to only support (WSDL BaseType) currently

Ken Lin
Community Manager

Re: tWebServiceInput: return errors

Hi Ken Lin
Yes, you are right. Currently, tWebServiceInput component only support the BaseType.
Best regards
shong
----------------------------------------------------------
Talend | Data Agility for Modern Business