tESBConsumer throwing GetWeather fault

One Star

tESBConsumer throwing GetWeather fault

Hi There,
We have a job that call several web services using tESBConsumer components. The components get their wsdl and url settings from the context file. This has been running without issue for several months. What has begun to happen is one of the components is throwing an exceptions complaining about the GetWeather service? I believe this is the default setting when you first put a component in a job, but I have no idea where it is coming from now. Has anyone come across this before? Any thoughts on know to debug this?
We execute the request manually with soapUI and it runs without issue, so it does not seem to be a web service issue. I also rebuilt the job and redeployed...still the same problem.
Here is the exception we are seeing in the log...
has thrown exception, unwinding now
org.apache.cxf.interceptor.Fault: The given SOAPAction http://litwinconsulting.com/webservices/GetWeather does not match an operation.
at org.apache.cxf.binding.soap.interceptor.SoapActionInInterceptor$SoapActionInAttemptTwoInterceptor.handleMessage(SoapActionInInterceptor.java:188)
at org.apache.cxf.binding.soap.interceptor.SoapActionInInterceptor$SoapActionInAttemptTwoInterceptor.handleMessage(SoapActionInInterceptor.java:162)
at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:271)
at org.apache.cxf.transport.ChainInitiationObserver.onMessage(ChainInitiationObserver.java:121)
at org.apache.cxf.transport.http.AbstractHTTPDestination.invoke(AbstractHTTPDestination.java:239)
at org.apache.cxf.transport.servlet.ServletController.invokeDestination(ServletController.java:218)
at org.apache.cxf.transport.servlet.ServletController.invoke(ServletController.java:198)
at org.apache.cxf.transport.servlet.ServletController.invoke(ServletController.java:137)
at org.apache.cxf.transport.servlet.CXFNonSpringServlet.invoke(CXFNonSpringServlet.java:158)
at org.apache.cxf.transport.servlet.AbstractHTTPServlet.handleRequest(AbstractHTTPServlet.java:243)
at org.apache.cxf.transport.servlet.AbstractHTTPServlet.doPost(AbstractHTTPServlet.java:163)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:637)
at org.apache.cxf.transport.servlet.AbstractHTTPServlet.service(AbstractHTTPServlet.java:219)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103)
at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:615)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:293)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:861)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:606)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)
at java.lang.Thread.run(Thread.java:662)

Thanks,
Gregg
Community Manager

Re: tESBConsumer throwing GetWeather fault

It looks strange if you don't have a component that is calling the GetWeather web service. I have no idea except checking the job in Talend Studio, to see it is which component throws the exception and reset its properties.
Shong
----------------------------------------------------------
Talend | Data Agility for Modern Business
One Star

Re: tESBConsumer throwing GetWeather fault

Hi Shong,
I think I have found out some more details...and I have a new question. First the new details... Smiley Happy
We configured the job to run in the IDE and executed it...what we found was the wsdl that the component was trying to parse was not the wsdl we have entered in the config file and is used by the component. BTW: It is not the GetWeather endpoint either. It was actually a QA instance of the web service...which was down. So it acts like it was trying to get the wsdl from that location. Though when it runs correctly it does call the production web service url we have configured.
My new question...since we can use a context property to specify the wsdl, url and timeout values for the tESBConsumer...each time the job runs, does it not get the wsdl (and parse it) from the wsdl we have configured? I would think it would not remember, and use, the wsdl we used at development time when first choosing the endpoint and method?
Thanks!
Gregg
Community Manager

Re: tESBConsumer throwing GetWeather fault

since we can use a context property to specify the wsdl, url and timeout values for the tESBConsumer...each time the job runs, does it not get the wsdl (and parse it) from the wsdl we have configured? I would think it would not remember, and use, the wsdl we used at development time when first choosing the endpoint and method?

It sounds like a bug when you set the wsdl with a context variable, and load the value from a config file at run time. Which version are you using? I would like to investigate it further and check if it was a bug, can you email me your web service consumer job?
Shong
----------------------------------------------------------
Talend | Data Agility for Modern Business
One Star

Re: tESBConsumer throwing GetWeather fault

Hi Shong,
The issue was in 5.3, I upgraded to 5.3.1 and 5.4 (TOS DI), and the issue did not go away until I did what I described in my previous post in 5.4. To upgrade, I open the new version of Talend and import an archive file...
I am happy to provide a copy of the job. How would you like me to send it to you?
Thanks,
Gregg
Community Manager

Re: tESBConsumer throwing GetWeather fault

I am happy to provide a copy of the job. How would you like me to send it to you?

Yes, please. shong@talend.com
----------------------------------------------------------
Talend | Data Agility for Modern Business
One Star

Re: tESBConsumer throwing GetWeather fault

Hi Shong,
Thanks! Just emailed the archive file.
Gregg
One Star

Re: tESBConsumer throwing GetWeather fault

Hi Shong,
Did you ever find anything out about this issue? I am seeing a similar issue in the IDE itself. Version 5.4.1. I get
"Error getting service description: Invalid thread access" in configuration dialog when I push the refresh button.
Thanks,
Gregg
One Star

Re: tESBConsumer throwing GetWeather fault

Hi There,
I have found the issue and a work around. I have 3 groups in my context properties (DEV, QA, PROD). I needed to create a "Default" group and remove DEV, QA and PROD. I can then refresh the the component in the IDE and see the available methods in the service.
Thanks,
Gregg