You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@servicemix.apache.org by Anthony <an...@rmb.co.za> on 2007/02/02 10:17:06 UTC
Calling external web service
hi guys, me again...
i'm having trouble deploying the following SA with these SU's:
1. JMS consumer (rmb:jms-in) that reads from test.in queue and forwards to
<beans xmlns:sm="http://servicemix.apache.org/config/1.0"
xmlns:rmb="http://www.rmb.co.za"
xmlns:jms="http://servicemix.apache.org/jms/1.0">
<jms:endpoint service="rmb:jms-in"
endpoint="jms"
targetService="rmb:EaiServiceService"
role="consumer"
destinationStyle="queue"
jmsProviderDestinationName="test.in"
connectionFactory="#connectionFactory"/>
<bean id="connectionFactory"
class="org.apache.activemq.ActiveMQConnectionFactory">
<property name="brokerURL" value="vm://localhost" />
</bean>
</beans>
2. HTTP provider (rmb:EaiServiceService) to call an external web service
(Axis/Tomcat)
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns:http="http://servicemix.apache.org/http/1.0"
xmlns:rmb="http://localhost:8080/eai-web-1.0/services/EaiService">
<http:endpoint service="rmb:EaiServiceService"
endpoint="EaiService"
role="provider"
locationURI="http://localhost:8080/eai-web-1.0/services/EaiService"
wsdlResource="http://localhost:8080/eai-web-1.0/eai.wsdl"/>
</beans>
3. HTTP consumer (rmb:EaiServiceConsumer) reads result from web service call
and forwards to
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns:http="http://servicemix.apache.org/http/1.0"
xmlns:rmb="http://localhost:8080/eai-web-1.0/services/EaiService">
<http:endpoint service="rmb:EaiServiceConsumer"
endpoint="EaiEndpointConsumer"
role="consumer"
targetService="rmb:jms-out"
locationURI="http://localhost:8080/eai-web-1.0/services/EaiService"
defaultMep="http://www.w3.org/2004/08/wsdl/in-out"/>
</beans>
4. JMS provider (rmb:jms-out) which puts message on test.out queue
<beans xmlns:sm="http://servicemix.apache.org/config/1.0"
xmlns:rmb="http://www.rmb.co.za"
xmlns:jms="http://servicemix.apache.org/jms/1.0">
<jms:endpoint service="rmb:jms-out"
endpoint="endpoint"
role="provider"
destinationStyle="queue"
jmsProviderDestinationName="test.out"
connectionFactory="#connectionFactory" />
<bean id="connectionFactory"
class="org.apache.activemq.ActiveMQConnectionFactory">
<property name="brokerURL" value="vm://localhost" />
</bean>
</beans>
my Axis generated wsdl looks like this:
<?xml version="1.0" encoding="UTF-8"?>
<wsdl:definitions targetNamespace="za.co.rmb.eai.web.services"
xmlns:apachesoap="http://xml.apache.org/xml-soap"
xmlns:impl="za.co.rmb.eai.web.services"
xmlns:intf="za.co.rmb.eai.web.services"
xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
xmlns:wsdlsoap="http://schemas.xmlsoap.org/wsdl/soap/"
xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<!--WSDL created by Apache Axis version: 1.2.1
Built on Jun 14, 2005 (09:15:57 EDT)-->
<wsdl:message name="processSessionAggregationRequest">
<wsdl:part name="in0" type="soapenc:string"/>
</wsdl:message>
<wsdl:message name="processSessionAggregationResponse">
<wsdl:part name="processSessionAggregationReturn"
type="soapenc:string"/>
</wsdl:message>
<wsdl:portType name="EaiService">
<wsdl:operation name="processSessionAggregation" parameterOrder="in0">
<wsdl:input message="impl:processSessionAggregationRequest"
name="processSessionAggregationRequest"/>
<wsdl:output message="impl:processSessionAggregationResponse"
name="processSessionAggregationResponse"/>
</wsdl:operation>
</wsdl:portType>
<wsdl:binding name="EaiServicePortSoapBinding" type="impl:EaiService">
<wsdlsoap:binding style="rpc"
transport="http://schemas.xmlsoap.org/soap/http"/>
<wsdl:operation name="processSessionAggregation">
<wsdlsoap:operation soapAction=""/>
<wsdl:input name="processSessionAggregationRequest">
<wsdlsoap:body
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
namespace="za.co.rmb.eai.web.services" use="encoded"/>
</wsdl:input>
<wsdl:output name="processSessionAggregationResponse">
<wsdlsoap:body
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
namespace="za.co.rmb.eai.web.services" use="encoded"/>
</wsdl:output>
</wsdl:operation>
</wsdl:binding>
<wsdl:service name="EaiServiceService">
<wsdl:port binding="impl:EaiServicePortSoapBinding"
name="EaiServicePort">
<wsdlsoap:address
location="http://localhost:8080/eai-web-1.0/services/EaiService"/>
</wsdl:port>
</wsdl:service>
</wsdl:definitions>
when i deploy my SA through the Servicemix console i get:
INFO - ServiceAssemblyLifeCycle - Starting service assembly:
session-aggregation-sa
INFO - ServiceUnitLifeCycle - Initializing service unit:
jms-in-su
INFO - ServiceUnitLifeCycle - Initializing service unit:
ws-consumer-su
INFO - ServiceUnitLifeCycle - Initializing service unit:
ws-provider-su
INFO - ServiceUnitLifeCycle - Initializing service unit:
jms-out-su
INFO - ServiceUnitLifeCycle - Starting service unit: jms-in-su
INFO - ServiceUnitLifeCycle - Starting service unit:
ws-consumer-su
INFO - jetty - jetty-6.0.1
WARN - jetty - failed SelectChannelConnector @
localhost:8080
WARN - jetty - failed Server@112fc47
INFO - ServiceUnitLifeCycle - Starting service unit:
ws-provider-su
WARN - HttpComponent - Could not load description from
resource
javax.wsdl.WSDLException: WSDLException: faultCode=OTHER_ERROR: Unable to
resolve imported document at 'http://localhost:8080/eai-web-1.0/eai.wsdl'.:
java.net.UnknownServiceException: no content-type
at com.ibm.wsdl.xml.WSDLReaderImpl.readWSDL(Unknown Source)
at com.ibm.wsdl.xml.WSDLReaderImpl.readWSDL(Unknown Source)
at
org.apache.servicemix.soap.SoapEndpoint.loadWsdl(SoapEndpoint.java:229)
at
org.apache.servicemix.soap.SoapEndpoint.activate(SoapEndpoint.java:339)
at
org.apache.servicemix.common.ServiceUnit.start(ServiceUnit.java:55)
at
org.apache.servicemix.common.BaseServiceUnitManager.start(BaseServiceUnitManager.java:151)
at
org.apache.servicemix.jbi.framework.ServiceUnitLifeCycle.start(ServiceUnitLifeCycle.java:103)
at
org.apache.servicemix.jbi.framework.ServiceAssemblyLifeCycle.start(ServiceAssemblyLifeCycle.java:130)
at
org.apache.servicemix.jbi.framework.DeploymentService.start(DeploymentService.java:374)
at
org.apache.servicemix.jbi.framework.AdminCommandsService.startServiceAssembly(AdminCommandsService.java:254)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at
org.apache.commons.beanutils.MethodUtils.invokeMethod(MethodUtils.java:216)
at
org.apache.servicemix.jbi.management.BaseStandardMBean.invoke(BaseStandardMBean.java:318)
at
com.sun.jmx.mbeanserver.DynamicMetaDataImpl.invoke(DynamicMetaDataImpl.java:213)
at
com.sun.jmx.mbeanserver.MetaDataImpl.invoke(MetaDataImpl.java:220)
at
com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:815)
at
com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:784)
at
javax.management.remote.rmi.RMIConnectionImpl.doOperation(RMIConnectionImpl.java:1408)
at
javax.management.remote.rmi.RMIConnectionImpl.access$100(RMIConnectionImpl.java:81)
at
javax.management.remote.rmi.RMIConnectionImpl$PrivilegedOperation.run(RMIConnectionImpl.java:1245)
at java.security.AccessController.doPrivileged(Native Method)
at
javax.management.remote.rmi.RMIConnectionImpl.doPrivilegedOperation(RMIConnectionImpl.java:1348)
at
javax.management.remote.rmi.RMIConnectionImpl.invoke(RMIConnectionImpl.java:782)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at
sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:294)
at sun.rmi.transport.Transport$1.run(Transport.java:153)
at java.security.AccessController.doPrivileged(Native Method)
at sun.rmi.transport.Transport.serviceCall(Transport.java:149)
at
sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:466)
at
sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:707)
at java.lang.Thread.run(Thread.java:595)
Caused by: java.net.UnknownServiceException: no content-type
at java.net.URLConnection.getContentHandler(URLConnection.java:1167)
at java.net.URLConnection.getContent(URLConnection.java:683)
at java.net.URL.getContent(URL.java:1021)
at com.ibm.wsdl.util.StringUtils.getContentAsInputStream(Unknown
Source)
... 37 more
INFO - ServiceUnitLifeCycle - Starting service unit: jms-out-su
INFO - DeploymentService - Error in start
java.lang.Exception: <?xml version="1.0" encoding="UTF-8"?>
<jbi-task xmlns="http://java.sun.com/xml/ns/jbi/management-message"
version="1.0">
<jbi-task-result>
<frmwk-task-result>
<frmwk-task-result-details>
<task-result-details>
<task-id>start</task-id>
<task-result>FAILED</task-result>
<message-type>ERROR</message-type>
</task-result-details>
</frmwk-task-result-details>
</frmwk-task-result>
<component-task-result
xmlns="http://java.sun.com/xml/ns/jbi/management-message">
<component-name>servicemix-http</component-name>
<component-task-result-details>
<task-result-details>
<task-id>start</task-id>
<task-result>FAILED</task-result>
<message-type>ERROR</message-type>
<task-status-msg>
<msg-loc-info>
<loc-token/>
<loc-message>Unable to start service unit</loc-message>
</msg-loc-info>
</task-status-msg>
<exception-info>
<nesting-level>1</nesting-level>
<msg-loc-info>
<loc-token/>
<loc-message>Address already in use:
bind</loc-message>
<stack-trace><![CDATA[java.net.BindException: Address already in use: bind
at sun.nio.ch.Net.bind(Native Method)
at
sun.nio.ch.ServerSocketChannelImpl.bind(ServerSocketChannelImpl.java:119)
at sun.nio.ch.ServerSocketAdaptor.bind(ServerSocketAdaptor.java:59)
at
org.mortbay.jetty.nio.SelectChannelConnector.open(SelectChannelConnector.java:152)
at
org.mortbay.jetty.AbstractConnector.doStart(AbstractConnector.java:313)
at
org.mortbay.jetty.nio.SelectChannelConnector.doStart(SelectChannelConnector.java:124)
at
org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:38)
at org.mortbay.jetty.Server.doStart(Server.java:217)
at
org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:38)
at
org.apache.servicemix.http.jetty.JettyContextManager.createServer(JettyContextManager.java:338)
at
org.apache.servicemix.http.jetty.JettyContextManager.createContext(JettyContextManager.java:143)
at
org.apache.servicemix.http.processors.ConsumerProcessor.start(ConsumerProcessor.java:113)
at
org.apache.servicemix.soap.SoapEndpoint.activate(SoapEndpoint.java:348)
at
org.apache.servicemix.common.ServiceUnit.start(ServiceUnit.java:55)
at
org.apache.servicemix.common.BaseServiceUnitManager.start(BaseServiceUnitManager.java:151)
at
org.apache.servicemix.jbi.framework.ServiceUnitLifeCycle.start(ServiceUnitLifeCycle.java:103)
at
org.apache.servicemix.jbi.framework.ServiceAssemblyLifeCycle.start(ServiceAssemblyLifeCycle.java:130)
at
org.apache.servicemix.jbi.framework.DeploymentService.start(DeploymentService.java:374)
at
org.apache.servicemix.jbi.framework.AdminCommandsService.startServiceAssembly(AdminCommandsService.java:254)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at
org.apache.commons.beanutils.MethodUtils.invokeMethod(MethodUtils.java:216)
at
org.apache.servicemix.jbi.management.BaseStandardMBean.invoke(BaseStandardMBean.java:318)
at
com.sun.jmx.mbeanserver.DynamicMetaDataImpl.invoke(DynamicMetaDataImpl.java:213)
at
com.sun.jmx.mbeanserver.MetaDataImpl.invoke(MetaDataImpl.java:220)
at
com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:815)
at
com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:784)
at
javax.management.remote.rmi.RMIConnectionImpl.doOperation(RMIConnectionImpl.java:1408)
at
javax.management.remote.rmi.RMIConnectionImpl.access$100(RMIConnectionImpl.java:81)
at
javax.management.remote.rmi.RMIConnectionImpl$PrivilegedOperation.run(RMIConnectionImpl.java:1245)
at java.security.AccessController.doPrivileged(Native Method)
at
javax.management.remote.rmi.RMIConnectionImpl.doPrivilegedOperation(RMIConnectionImpl.java:1348)
at
javax.management.remote.rmi.RMIConnectionImpl.invoke(RMIConnectionImpl.java:782)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at
sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:294)
at sun.rmi.transport.Transport$1.run(Transport.java:153)
at java.security.AccessController.doPrivileged(Native Method)
at sun.rmi.transport.Transport.serviceCall(Transport.java:149)
at
sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:466)
at
sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:707)
at java.lang.Thread.run(Thread.java:595)
]]></stack-trace>
</msg-loc-info>
</exception-info>
</task-result-details>
</component-task-result-details>
</component-task-result>
</jbi-task-result>
</jbi-task>
at
org.apache.servicemix.jbi.framework.ManagementSupport.failure(ManagementSupport.java:121)
at
org.apache.servicemix.jbi.framework.ManagementSupport.failure(ManagementSupport.java:107)
at
org.apache.servicemix.jbi.framework.ServiceAssemblyLifeCycle.start(ServiceAssemblyLifeCycle.java:144)
at
org.apache.servicemix.jbi.framework.DeploymentService.start(DeploymentService.java:374)
at
org.apache.servicemix.jbi.framework.AdminCommandsService.startServiceAssembly(AdminCommandsService.java:254)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at
org.apache.commons.beanutils.MethodUtils.invokeMethod(MethodUtils.java:216)
at
org.apache.servicemix.jbi.management.BaseStandardMBean.invoke(BaseStandardMBean.java:318)
at
com.sun.jmx.mbeanserver.DynamicMetaDataImpl.invoke(DynamicMetaDataImpl.java:213)
at
com.sun.jmx.mbeanserver.MetaDataImpl.invoke(MetaDataImpl.java:220)
at
com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:815)
at
com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:784)
at
javax.management.remote.rmi.RMIConnectionImpl.doOperation(RMIConnectionImpl.java:1408)
at
javax.management.remote.rmi.RMIConnectionImpl.access$100(RMIConnectionImpl.java:81)
at
javax.management.remote.rmi.RMIConnectionImpl$PrivilegedOperation.run(RMIConnectionImpl.java:1245)
at java.security.AccessController.doPrivileged(Native Method)
at
javax.management.remote.rmi.RMIConnectionImpl.doPrivilegedOperation(RMIConnectionImpl.java:1348)
at
javax.management.remote.rmi.RMIConnectionImpl.invoke(RMIConnectionImpl.java:782)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at
sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:294)
at sun.rmi.transport.Transport$1.run(Transport.java:153)
at java.security.AccessController.doPrivileged(Native Method)
at sun.rmi.transport.Transport.serviceCall(Transport.java:149)
at
sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:466)
at
sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:707)
at java.lang.Thread.run(Thread.java:595)
i also looked at this post but still no luck:
http://www.mail-archive.com/servicemix-users@geronimo.apache.org/msg06717.html
please assist,
anthony
--
View this message in context: http://www.nabble.com/Calling-external-web-service-tf3159837s12049.html#a8763921
Sent from the ServiceMix - User mailing list archive at Nabble.com.
Re: RE : Re: Calling external web service
Posted by patrosk <su...@rediffmail.com>.
Hello,
Even i am trying to call a external web service thru http-bc . but ended up
with the same problem you have mentioned.
org.apache.servicemix.soap.SoapFault: Unexpected fault code:
{http://www.w3.org/2003/05/soap-envelo
e}Server.userException
at
org.apache.servicemix.soap.marshalers.SoapReader.readFaultUsingDom(SoapReader.java:259)
at
org.apache.servicemix.soap.marshalers.SoapReader.readFaultUsingStax(SoapReader.java:341)
at
org.apache.servicemix.soap.marshalers.SoapReader.readSoapUsingStax(SoapReader.java:203)
at
org.apache.servicemix.soap.marshalers.SoapReader.read(SoapReader.java:89)
at
org.apache.servicemix.soap.marshalers.SoapReader.read(SoapReader.java:76)
at
org.apache.servicemix.http.processors.ProviderProcessor.process(ProviderProcessor.java:1
4)
at
org.apache.servicemix.common.AsyncBaseLifeCycle.doProcess(AsyncBaseLifeCycle.java:489)
at
org.apache.servicemix.common.AsyncBaseLifeCycle.processExchange(AsyncBaseLifeCycle.java:
41)
at
org.apache.servicemix.common.BaseLifeCycle.onMessageExchange(BaseLifeCycle.java:46)
at
org.apache.servicemix.jbi.messaging.DeliveryChannelImpl.processInBound(DeliveryChannelIm
l.java:595)
at
org.apache.servicemix.jbi.nmr.flow.AbstractFlow.doRouting(AbstractFlow.java:174)
at
org.apache.servicemix.jbi.nmr.flow.seda.SedaFlow.doRouting(SedaFlow.java:176)
at
org.apache.servicemix.jbi.nmr.flow.seda.SedaQueue$1.run(SedaQueue.java:134)
at
edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadP
olExecutor.java:665)
at
edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolE
ecutor.java:690)
at java.lang.Thread.run(Thread.java:595)
ERROR - BpelRuntimeContextImpl - Invalid response state for mex
hqejbhcnphr34ia95bhi2u: ASY
C
ERROR - OdeService - ODE MEX
{MyRoleMex#hqejbhcnphr34ia95bhi3u [Client ID:10.19
.56.109-118c133c48a-3:3] calling
{http://www.example.org/BpelService/}BpelServiceSOAP.inputRequest(
..)} was unroutable.
WARN - jetty - EXCEPTION
Did you find any way to go ahead?Please Do share, i am struggling with the
problem sicne a few days.
thank you.
gnodet wrote:
>
> You can generate the xml manually, or maybe use
> the jsr181 client proxy stuff to use a java interface ...
> How do you create the message currently ?
>
> On 2/14/07, Anthony <an...@rmb.co.za> wrote:
>>
>> so how would you call an external web service method with arguments
>> extracted
>> from the message body?
>>
>> example:
>>
>> webservice method:
>> public int addNumbers(final int num1, final int num2)
>>
>> message example:
>> <myMessage>
>> <num1>5</num1>
>> <num2>4</num2>
>> </myMessage>
>>
>> how can i use the http provider to do this or is there another way?
>> thanks!
>> --
>> View this message in context:
>> http://www.nabble.com/Calling-external-web-service-tf3159837s12049.html#a8959503
>> Sent from the ServiceMix - User mailing list archive at Nabble.com.
>>
>>
>
>
> --
> Cheers,
> Guillaume Nodet
> ------------------------
> Architect, LogicBlaze (http://www.logicblaze.com/)
> Blog: http://gnodet.blogspot.com/
>
>
--
View this message in context: http://www.nabble.com/Calling-external-web-service-tp8763921s12049p16117681.html
Sent from the ServiceMix - User mailing list archive at Nabble.com.
Re: RE : Re: Calling external web service
Posted by Guillaume Nodet <gn...@gmail.com>.
You can generate the xml manually, or maybe use
the jsr181 client proxy stuff to use a java interface ...
How do you create the message currently ?
On 2/14/07, Anthony <an...@rmb.co.za> wrote:
>
> so how would you call an external web service method with arguments extracted
> from the message body?
>
> example:
>
> webservice method:
> public int addNumbers(final int num1, final int num2)
>
> message example:
> <myMessage>
> <num1>5</num1>
> <num2>4</num2>
> </myMessage>
>
> how can i use the http provider to do this or is there another way? thanks!
> --
> View this message in context: http://www.nabble.com/Calling-external-web-service-tf3159837s12049.html#a8959503
> Sent from the ServiceMix - User mailing list archive at Nabble.com.
>
>
--
Cheers,
Guillaume Nodet
------------------------
Architect, LogicBlaze (http://www.logicblaze.com/)
Blog: http://gnodet.blogspot.com/
Re: RE : Re: Calling external web service
Posted by Anthony <an...@rmb.co.za>.
so how would you call an external web service method with arguments extracted
from the message body?
example:
webservice method:
public int addNumbers(final int num1, final int num2)
message example:
<myMessage>
<num1>5</num1>
<num2>4</num2>
</myMessage>
how can i use the http provider to do this or is there another way? thanks!
--
View this message in context: http://www.nabble.com/Calling-external-web-service-tf3159837s12049.html#a8959503
Sent from the ServiceMix - User mailing list archive at Nabble.com.
Re: RE : Re: Calling external web service
Posted by Guillaume Nodet <gn...@gmail.com>.
As you can see the request are completely different.
In one case, you send an xml as a string (using axis),
and you send the xml directly using servicemix.
You have to send a correct request. But it sounds a bit
weird to send an xml encoded in a string to a web service.
On 2/8/07, Anthony <an...@rmb.co.za> wrote:
>
> hi Guillaume, i intercepted the calls using tcpmon and these are the results:
>
>
> my java request using axis:
> POST /eai-web-1.0/services/EaiService HTTP/1.0
> Content-Type: text/xml; charset=utf-8
> Accept: application/soap+xml, application/dime, multipart/related, text/*
> User-Agent: Axis/1.4
> Host: localhost:80
> Cache-Control: no-cache
> Pragma: no-cache
> SOAPAction: ""
> Content-Length: 1365
>
> <?xml version="1.0" encoding="UTF-8"?><soapenv:Envelope
> xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
> xmlns:xsd="http://www.w3.org/2001/XMLSchema"
> xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"><soapenv:Body><ns1:processSessionAggregation
> soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
> xmlns:ns1="EaiService"><msg xsi:type="xsd:string"><?xml
> version="1.0" encoding="UTF-8"?>
> <xb:esbMessage
> xmlns:xb="http://www.rmb.co.za/eai/common/xmlbeans">
> <esbHeader>
> <sourceSystem>SOME_SYSTEM</sourceSystem>
> <date>2007-02-08T13:57:37.228+02:00</date>
> <esbAggregationProps>
>
> <sessionId>ecf76178-f0b5-4244-8294-4dac9ae30fbc</sessionId>
> <msgType>AGGREGATION-START</msgType>
>
> <destination>http://www.dummyDestination.co.za</destination>
> <timeoutSecs>9999</timeoutSecs>
> <maxBatchSize>1000</maxBatchSize>
> <totalMessages>3</totalMessages>
> </esbAggregationProps>
> </esbHeader>
> <esbBody>
> <body xsi:nil="true"
> xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"/>
> </esbBody>
> </xb:esbMessage></msg></ns1:processSessionAggregation></soapenv:Body></soapenv:Envelope>
>
>
> the correct response from the axis web service:
> HTTP/1.1 200 OK
> Content-Type: text/xml;charset=utf-8
> Date: Thu, 08 Feb 2007 11:57:37 GMT
> Server: Apache-Coyote/1.1
> Connection: close
>
> <?xml version="1.0" encoding="utf-8"?><soapenv:Envelope
> xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
> xmlns:xsd="http://www.w3.org/2001/XMLSchema"
> xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"><soapenv:Body><ns1:processSessionAggregationResponse
> soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
> xmlns:ns1="EaiService"><returnqname xsi:type="xsd:string"><xb:esbMessage
> xmlns:xb="http://www.rmb.co.za/eai/common/xmlbeans">
> <esbHeader>
> <sourceSystem>SOME_SYSTEM</sourceSystem>
> <date>2007-02-08T13:57:37.228+02:00</date>
> <esbAggregationProps>
>
> <sessionId>ecf76178-f0b5-4244-8294-4dac9ae30fbc</sessionId>
> <msgType>AGGREGATION-START-ACK</msgType>
>
> <destination>http://www.dummyDestination.co.za</destination>
> <timeoutSecs>9999</timeoutSecs>
> <maxBatchSize>1000</maxBatchSize>
> <totalMessages>3</totalMessages>
> </esbAggregationProps>
> </esbHeader>
> <esbBody>
> <body xsi:nil="true"
> xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"/>
> </esbBody>
> </xb:esbMessage></returnqname></ns1:processSessionAggregationResponse></soapenv:Body></soapenv:Envelope>
>
>
> the servicemix http provider request:
> POST /eai-web-1.0/services/EaiService HTTP/1.1
> Content-Type: text/xml
> Content-Length: 807
> SOAPAction: processSessionAggregation
> User-Agent: Jakarta Commons-HttpClient/3.0
> Host: localhost
>
> <?xml version='1.0' encoding='UTF-8'?><env:Envelope
> xmlns:env="http://schemas.xmlsoap.org/soap/envelope/"><env:Body><xb:esbMessage
> xmlns:xb="http://www.rmb.co.za/eai/common/xmlbeans">
> <esbHeader>
> <sourceSystem>Calypso</sourceSystem>
> <date>2007-02-08T13:58:34.605+02:00</date>
> <esbAggregationProps>
> <sessionId>61cc3b55-8dd8-437c-b6e9-685e4c13c9ce</sessionId>
> <msgType>AGGREGATION-START</msgType>
> <destination>some destination</destination>
> <timeoutSecs>-1</timeoutSecs>
> <maxBatchSize>0</maxBatchSize>
> <sequenceNo>0</sequenceNo>
> <totalMessages>0</totalMessages>
> </esbAggregationProps>
> </esbHeader>
> <esbBody>
> <body xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
> xsi:nil="true" />
> </esbBody>
> </xb:esbMessage></env:Body></env:Envelope>
>
>
> the response that contains the error:
> HTTP/1.1 500 Internal Server Error
> Content-Type: text/xml;charset=utf-8
> Transfer-Encoding: chunked
> Date: Thu, 08 Feb 2007 11:58:34 GMT
> Server: Apache-Coyote/1.1
> Connection: close
>
> 257
> <?xml version="1.0" encoding="UTF-8"?><soapenv:Envelope
> xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
> xmlns:xsd="http://www.w3.org/2001/XMLSchema"
> xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"><soapenv:Body><soapenv:Fault><faultcode>soapenv:Server.userException</faultcode><faultstring>org.xml.sax.SAXException:
> SimpleDeserializer encountered a child element, which is NOT expected, in
> something it was trying to deserialize.</faultstring><detail><ns1:hostname
> xmlns:ns1="http://xml.apache.org/axis/">HGO1</ns1:hostname></detail></soapenv:Fault></soapenv:Body></soapenv:Envelope>
> 0
>
>
> any idea what can cause this SAXException?
>
>
> thanks!
> --
> View this message in context: http://www.nabble.com/Calling-external-web-service-tf3159837s12049.html#a8864358
> Sent from the ServiceMix - User mailing list archive at Nabble.com.
>
>
--
Cheers,
Guillaume Nodet
------------------------
Architect, LogicBlaze (http://www.logicblaze.com/)
Blog: http://gnodet.blogspot.com/
Re: RE : Re: Calling external web service
Posted by Anthony <an...@rmb.co.za>.
hi Guillaume, i intercepted the calls using tcpmon and these are the results:
my java request using axis:
POST /eai-web-1.0/services/EaiService HTTP/1.0
Content-Type: text/xml; charset=utf-8
Accept: application/soap+xml, application/dime, multipart/related, text/*
User-Agent: Axis/1.4
Host: localhost:80
Cache-Control: no-cache
Pragma: no-cache
SOAPAction: ""
Content-Length: 1365
<?xml version="1.0" encoding="UTF-8"?><soapenv:Envelope
xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"><soapenv:Body><ns1:processSessionAggregation
soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:ns1="EaiService"><msg xsi:type="xsd:string"><?xml
version="1.0" encoding="UTF-8"?>
<xb:esbMessage
xmlns:xb="http://www.rmb.co.za/eai/common/xmlbeans">
<esbHeader>
<sourceSystem>SOME_SYSTEM</sourceSystem>
<date>2007-02-08T13:57:37.228+02:00</date>
<esbAggregationProps>
<sessionId>ecf76178-f0b5-4244-8294-4dac9ae30fbc</sessionId>
<msgType>AGGREGATION-START</msgType>
<destination>http://www.dummyDestination.co.za</destination>
<timeoutSecs>9999</timeoutSecs>
<maxBatchSize>1000</maxBatchSize>
<totalMessages>3</totalMessages>
</esbAggregationProps>
</esbHeader>
<esbBody>
<body xsi:nil="true"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"/>
</esbBody>
</xb:esbMessage></msg></ns1:processSessionAggregation></soapenv:Body></soapenv:Envelope>
the correct response from the axis web service:
HTTP/1.1 200 OK
Content-Type: text/xml;charset=utf-8
Date: Thu, 08 Feb 2007 11:57:37 GMT
Server: Apache-Coyote/1.1
Connection: close
<?xml version="1.0" encoding="utf-8"?><soapenv:Envelope
xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"><soapenv:Body><ns1:processSessionAggregationResponse
soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:ns1="EaiService"><returnqname xsi:type="xsd:string"><xb:esbMessage
xmlns:xb="http://www.rmb.co.za/eai/common/xmlbeans">
<esbHeader>
<sourceSystem>SOME_SYSTEM</sourceSystem>
<date>2007-02-08T13:57:37.228+02:00</date>
<esbAggregationProps>
<sessionId>ecf76178-f0b5-4244-8294-4dac9ae30fbc</sessionId>
<msgType>AGGREGATION-START-ACK</msgType>
<destination>http://www.dummyDestination.co.za</destination>
<timeoutSecs>9999</timeoutSecs>
<maxBatchSize>1000</maxBatchSize>
<totalMessages>3</totalMessages>
</esbAggregationProps>
</esbHeader>
<esbBody>
<body xsi:nil="true"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"/>
</esbBody>
</xb:esbMessage></returnqname></ns1:processSessionAggregationResponse></soapenv:Body></soapenv:Envelope>
the servicemix http provider request:
POST /eai-web-1.0/services/EaiService HTTP/1.1
Content-Type: text/xml
Content-Length: 807
SOAPAction: processSessionAggregation
User-Agent: Jakarta Commons-HttpClient/3.0
Host: localhost
<?xml version='1.0' encoding='UTF-8'?><env:Envelope
xmlns:env="http://schemas.xmlsoap.org/soap/envelope/"><env:Body><xb:esbMessage
xmlns:xb="http://www.rmb.co.za/eai/common/xmlbeans">
<esbHeader>
<sourceSystem>Calypso</sourceSystem>
<date>2007-02-08T13:58:34.605+02:00</date>
<esbAggregationProps>
<sessionId>61cc3b55-8dd8-437c-b6e9-685e4c13c9ce</sessionId>
<msgType>AGGREGATION-START</msgType>
<destination>some destination</destination>
<timeoutSecs>-1</timeoutSecs>
<maxBatchSize>0</maxBatchSize>
<sequenceNo>0</sequenceNo>
<totalMessages>0</totalMessages>
</esbAggregationProps>
</esbHeader>
<esbBody>
<body xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:nil="true" />
</esbBody>
</xb:esbMessage></env:Body></env:Envelope>
the response that contains the error:
HTTP/1.1 500 Internal Server Error
Content-Type: text/xml;charset=utf-8
Transfer-Encoding: chunked
Date: Thu, 08 Feb 2007 11:58:34 GMT
Server: Apache-Coyote/1.1
Connection: close
257
<?xml version="1.0" encoding="UTF-8"?><soapenv:Envelope
xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"><soapenv:Body><soapenv:Fault><faultcode>soapenv:Server.userException</faultcode><faultstring>org.xml.sax.SAXException:
SimpleDeserializer encountered a child element, which is NOT expected, in
something it was trying to deserialize.</faultstring><detail><ns1:hostname
xmlns:ns1="http://xml.apache.org/axis/">HGO1</ns1:hostname></detail></soapenv:Fault></soapenv:Body></soapenv:Envelope>
0
any idea what can cause this SAXException?
thanks!
--
View this message in context: http://www.nabble.com/Calling-external-web-service-tf3159837s12049.html#a8864358
Sent from the ServiceMix - User mailing list archive at Nabble.com.
Re: RE : Re: Calling external web service
Posted by Guillaume Nodet <gn...@gmail.com>.
Using the pipeline is the way to go.
However it seems that your external web service is sending
a fault back to the http endpoint, and that the http endpoint is
unable to read the fault correctly.
You need to put tcpmon between servicemix and your web service
and see what's going on. You should also have informations
if you increase the logging level to DEBUG.
On 2/8/07, Anthony <an...@rmb.co.za> wrote:
>
> i laso tried replacing my pipe with a static-routing-slip as i thought that
> might make more sense?
>
>
> <eip:static-routing-slip service="rmb-eip:static-routing-slip"
> endpoint="endpoint">
> <eip:targets>
> <eip:exchange-target service="rmb-http:EaiServiceImplService" />
> <eip:exchange-target service="rmb-jms:jms-out" />
> </eip:targets>
> </eip:static-routing-slip>
>
>
> but then i get this error:
>
>
> 10:35:31,096 | DEBUG | pool-component.servicemix-jms-thread-2 |
> plexingConsumerProcessor | ultiplexingConsumerProcessor$1 90 | Handling
> jms message ActiveMQTextMessage {commandId = 5, responseRequired = true,
> messageId = ID:HGO1-1828-1170923730019-1:0:1:1:1, originalDestination =
> null, originalTransactionId = null, producerId =
> ID:HGO1-1828-1170923730019-1:0:1:1, destination = queue://test.in,
> transactionId = null, expiration = 0, timestamp = 1170923731050, arrival =
> 0, correlationId = null, replyTo = null, persistent = true, type = null,
> priority = 4, groupID = null, groupSequence = 0, targetConsumerId = null,
> compressed = false, userID = null, content =
> org.apache.activemq.util.ByteSequence@18cb416, marshalledProperties = null,
> dataStructure = null, redeliveryCounter = 0, size = 1958, properties = null,
> readOnlyProperties = true, readOnlyBody = true, droppable = false, text =
> null}
> 10:35:31,128 | DEBUG | pool-component.servicemix-jms-thread-2 | JmsComponent
> | emix.common.AsyncBaseLifeCycle 532 | Created correlation id:
> ID:HGO1-1777-1170923655537-9:0
> 10:35:31,128 | DEBUG | pool-component.servicemix-jms-thread-2 |
> DeliveryChannelImpl | .messaging.DeliveryChannelImpl 411 | Send
> ID:HGO1-1777-1170923655537-9:0 in DeliveryChannel{servicemix-jms}
> 10:35:31,128 | DEBUG | pool-component.servicemix-jms-thread-2 | SedaFlow
> | emix.jbi.nmr.flow.AbstractFlow 121 | Called Flow send
> 10:35:31,143 | DEBUG | pool-flow.seda.servicemix-eip-thread-1 | SedaQueue
> | .jbi.nmr.flow.seda.SedaQueue$1 132 |
> org.apache.servicemix.jbi.nmr.flow.seda.SedaQueue$1@118e146 dequeued
> exchange: InOnly[
> id: ID:HGO1-1777-1170923655537-9:0
> status: Active
> role: provider
> service: {http://www.rmb.co.za/eip}static-routing-slip
> endpoint: endpoint
> in: <?xml version="1.0" encoding="UTF-8"?><xb:esbMessage
> xmlns:xb="http://www.rmb.co.za/eai/common/xmlbeans">
> <esbHeader>
> <sourceSystem>Calypso</sourceSystem>
> <date>2007-02-08T10:35:30.909+02:00</date>
> <esbAggregationProps>
> <sessionId>7ee3ab34-27c9-41d7-ada8-6b6eb16f23d2</sessionId>
> <msgType>AGGREGATION-START</msgType>
> <destination>some destination</destination>
> <timeoutSecs>-1</timeoutSecs>
> <maxBatchSize>0</maxBatchSize>
> <sequenceNo>0</sequenceNo>
> <totalMessages>0</totalMessages>
> </esbAggregationProps>
> </esbHeader>
> <esbBody>
> <body xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
> xsi:nil="true"/>
> </esbBody>
> </xb:esbMessage>
> ]
> 10:35:31,174 | DEBUG | pool-flow.seda.servicemix-eip-thread-1 | EIPComponent
> | emix.common.AsyncBaseLifeCycle 419 | Received exchange: status: Active,
> role: provider
> 10:35:31,174 | DEBUG | pool-flow.seda.servicemix-eip-thread-1 | EIPComponent
> | emix.common.AsyncBaseLifeCycle 487 | Retrieved correlation id:
> ID:HGO1-1777-1170923655537-9:0
> 10:35:31,190 | ERROR | pool-flow.seda.servicemix-eip-thread-1 | EIPComponent
> | ervicemix.common.BaseLifeCycle 48 | Error processing exchange InOnly[
> id: ID:HGO1-1777-1170923655537-9:0
> status: Active
> role: provider
> service: {http://www.rmb.co.za/eip}static-routing-slip
> endpoint: endpoint
> in: <?xml version="1.0" encoding="UTF-8"?><xb:esbMessage
> xmlns:xb="http://www.rmb.co.za/eai/common/xmlbeans">
> <esbHeader>
> <sourceSystem>Calypso</sourceSystem>
> <date>2007-02-08T10:35:30.909+02:00</date>
> <esbAggregationProps>
> <sessionId>7ee3ab34-27c9-41d7-ada8-6b6eb16f23d2</sessionId>
> <msgType>AGGREGATION-START</msgType>
> <destination>some destination</destination>
> <timeoutSecs>-1</timeoutSecs>
> <maxBatchSize>0</maxBatchSize>
> <sequenceNo>0</sequenceNo>
> <totalMessages>0</totalMessages>
> </esbAggregationProps>
> </esbHeader>
> <esbBody>
> <body xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
> xsi:nil="true"/>
> </esbBody>
> </xb:esbMessage>
> ]
> java.lang.IllegalStateException: Use an InOut MEP
> at
> org.apache.servicemix.eip.patterns.StaticRoutingSlip.processAsync(StaticRoutingSlip.java:157)
> at org.apache.servicemix.eip.EIPEndpoint.process(EIPEndpoint.java:160)
> at
> org.apache.servicemix.common.AsyncBaseLifeCycle.doProcess(AsyncBaseLifeCycle.java:489)
> at
> org.apache.servicemix.common.AsyncBaseLifeCycle.processExchange(AsyncBaseLifeCycle.java:441)
> at
> org.apache.servicemix.common.BaseLifeCycle.onMessageExchange(BaseLifeCycle.java:46)
> at
> org.apache.servicemix.jbi.messaging.DeliveryChannelImpl.processInBound(DeliveryChannelImpl.java:593)
> at
> org.apache.servicemix.jbi.nmr.flow.AbstractFlow.doRouting(AbstractFlow.java:174)
> at
> org.apache.servicemix.jbi.nmr.flow.seda.SedaFlow.doRouting(SedaFlow.java:176)
> at
> org.apache.servicemix.jbi.nmr.flow.seda.SedaQueue$1.run(SedaQueue.java:134)
> at
> edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:665)
> at
> edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:690)
> at java.lang.Thread.run(Thread.java:595)
> 10:35:31,284 | DEBUG | pool-flow.seda.servicemix-eip-thread-1 |
> DeliveryChannelImpl | .messaging.DeliveryChannelImpl 411 | Send
> ID:HGO1-1777-1170923655537-9:0 in DeliveryChannel{servicemix-eip}
> 10:35:31,284 | DEBUG | pool-flow.seda.servicemix-eip-thread-1 | SedaFlow
> | emix.jbi.nmr.flow.AbstractFlow 121 | Called Flow send
> 10:35:31,284 | DEBUG | pool-flow.seda.servicemix-eip-thread-2 | SedaQueue
> | .jbi.nmr.flow.seda.SedaQueue$1 132 |
> org.apache.servicemix.jbi.nmr.flow.seda.SedaQueue$1@1709b64 dequeued
> exchange: InOnly[
> id: ID:HGO1-1777-1170923655537-9:0
> status: Error
> role: consumer
> service: {http://www.rmb.co.za/eip}static-routing-slip
> endpoint: endpoint
> in: <?xml version="1.0" encoding="UTF-8"?><xb:esbMessage
> xmlns:xb="http://www.rmb.co.za/eai/common/xmlbeans">
> <esbHeader>
> <sourceSystem>Calypso</sourceSystem>
> <date>2007-02-08T10:35:30.909+02:00</date>
> <esbAggregationProps>
> <sessionId>7ee3ab34-27c9-41d7-ada8-6b6eb16f23d2</sessionId>
> <msgType>AGGREGATION-START</msgType>
> <destination>some destination</destination>
> <timeoutSecs>-1</timeoutSecs>
> <maxBatchSize>0</maxBatchSize>
> <sequenceNo>0</sequenceNo>
> <totalMessages>0</totalMessages>
> </esbAggregationProps>
> </esbHeader>
> <esbBody>
> <body xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
> xsi:nil="true"/>
> </esbBody>
> </xb:esbMessage>
> error: java.lang.IllegalStateException: Use an InOut MEP
> ]
> 10:35:31,346 | DEBUG | pool-flow.seda.servicemix-eip-thread-2 | JmsComponent
> | emix.common.AsyncBaseLifeCycle 419 | Received exchange: status: Error,
> role: consumer
> 10:35:31,346 | DEBUG | pool-flow.seda.servicemix-eip-thread-2 | JmsComponent
> | emix.common.AsyncBaseLifeCycle 487 | Retrieved correlation id:
> ID:HGO1-1777-1170923655537-9:0
> 10:35:31,346 | ERROR | pool-flow.seda.servicemix-eip-thread-2 | JmsComponent
> | ervicemix.common.BaseLifeCycle 48 | Error processing exchange InOnly[
> id: ID:HGO1-1777-1170923655537-9:0
> status: Error
> role: consumer
> service: {http://www.rmb.co.za/eip}static-routing-slip
> endpoint: endpoint
> in: <?xml version="1.0" encoding="UTF-8"?><xb:esbMessage
> xmlns:xb="http://www.rmb.co.za/eai/common/xmlbeans">
> <esbHeader>
> <sourceSystem>Calypso</sourceSystem>
> <date>2007-02-08T10:35:30.909+02:00</date>
> <esbAggregationProps>
> <sessionId>7ee3ab34-27c9-41d7-ada8-6b6eb16f23d2</sessionId>
> <msgType>AGGREGATION-START</msgType>
> <destination>some destination</destination>
> <timeoutSecs>-1</timeoutSecs>
> <maxBatchSize>0</maxBatchSize>
> <sequenceNo>0</sequenceNo>
> <totalMessages>0</totalMessages>
> </esbAggregationProps>
> </esbHeader>
> <esbBody>
> <body xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
> xsi:nil="true"/>
> </esbBody>
> </xb:esbMessage>
> error: java.lang.IllegalStateException: Use an InOut MEP
> ]
> java.lang.UnsupportedOperationException: A destination must be specified.
> at
> org.apache.activemq.ActiveMQMessageProducer.send(ActiveMQMessageProducer.java:448)
> at
> org.apache.activemq.ActiveMQMessageProducer.send(ActiveMQMessageProducer.java:356)
> at
> org.apache.servicemix.jms.multiplexing.MultiplexingConsumerProcessor.process(MultiplexingConsumerProcessor.java:125)
> at
> org.apache.servicemix.common.AsyncBaseLifeCycle.doProcess(AsyncBaseLifeCycle.java:489)
> at
> org.apache.servicemix.common.AsyncBaseLifeCycle.processExchange(AsyncBaseLifeCycle.java:463)
> at
> org.apache.servicemix.common.BaseLifeCycle.onMessageExchange(BaseLifeCycle.java:46)
> at
> org.apache.servicemix.jbi.messaging.DeliveryChannelImpl.processInBound(DeliveryChannelImpl.java:593)
> at
> org.apache.servicemix.jbi.nmr.flow.AbstractFlow.doRouting(AbstractFlow.java:174)
> at
> org.apache.servicemix.jbi.nmr.flow.seda.SedaFlow.doRouting(SedaFlow.java:176)
> at
> org.apache.servicemix.jbi.nmr.flow.seda.SedaQueue$1.run(SedaQueue.java:134)
> at
> edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:665)
> at
> edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:690)
> at java.lang.Thread.run(Thread.java:595)
> 10:35:31,440 | DEBUG | pool-flow.seda.servicemix-eip-thread-2 |
> DeliveryChannelImpl | .messaging.DeliveryChannelImpl 411 | Send
> ID:HGO1-1777-1170923655537-9:0 in DeliveryChannel{servicemix-jms}
> 10:35:31,440 | DEBUG | pool-flow.seda.servicemix-eip-thread-2 |
> DeliveryChannelImpl | .messaging.DeliveryChannelImpl 384 | Exception
> processing: ID:HGO1-1777-1170923655537-9:0 in
> DeliveryChannel{servicemix-jms}
> 10:35:31,440 | ERROR | pool-flow.seda.servicemix-eip-thread-2 | JmsComponent
> | ervicemix.common.BaseLifeCycle 60 | Error setting exchange status to
> ERROR
> javax.jbi.messaging.MessagingException: illegal call to send / sendSync
> at
> org.apache.servicemix.jbi.messaging.MessageExchangeImpl.handleSend(MessageExchangeImpl.java:571)
> at
> org.apache.servicemix.jbi.messaging.DeliveryChannelImpl.doSend(DeliveryChannelImpl.java:370)
> at
> org.apache.servicemix.jbi.messaging.DeliveryChannelImpl.send(DeliveryChannelImpl.java:417)
> at
> org.apache.servicemix.common.BaseLifeCycle.onMessageExchange(BaseLifeCycle.java:58)
> at
> org.apache.servicemix.jbi.messaging.DeliveryChannelImpl.processInBound(DeliveryChannelImpl.java:593)
> at
> org.apache.servicemix.jbi.nmr.flow.AbstractFlow.doRouting(AbstractFlow.java:174)
> at
> org.apache.servicemix.jbi.nmr.flow.seda.SedaFlow.doRouting(SedaFlow.java:176)
> at
> org.apache.servicemix.jbi.nmr.flow.seda.SedaQueue$1.run(SedaQueue.java:134)
> at
> edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:665)
> at
> edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:690)
> at java.lang.Thread.run(Thread.java:595)
>
>
> so is the pipe the correct way to achieve what i need to and how can i get
> this working?
> --
> View this message in context: http://www.nabble.com/Calling-external-web-service-tf3159837s12049.html#a8861413
> Sent from the ServiceMix - User mailing list archive at Nabble.com.
>
>
--
Cheers,
Guillaume Nodet
------------------------
Architect, LogicBlaze (http://www.logicblaze.com/)
Blog: http://gnodet.blogspot.com/
Re: RE : Re: Calling external web service
Posted by Anthony <an...@rmb.co.za>.
i laso tried replacing my pipe with a static-routing-slip as i thought that
might make more sense?
<eip:static-routing-slip service="rmb-eip:static-routing-slip"
endpoint="endpoint">
<eip:targets>
<eip:exchange-target service="rmb-http:EaiServiceImplService" />
<eip:exchange-target service="rmb-jms:jms-out" />
</eip:targets>
</eip:static-routing-slip>
but then i get this error:
10:35:31,096 | DEBUG | pool-component.servicemix-jms-thread-2 |
plexingConsumerProcessor | ultiplexingConsumerProcessor$1 90 | Handling
jms message ActiveMQTextMessage {commandId = 5, responseRequired = true,
messageId = ID:HGO1-1828-1170923730019-1:0:1:1:1, originalDestination =
null, originalTransactionId = null, producerId =
ID:HGO1-1828-1170923730019-1:0:1:1, destination = queue://test.in,
transactionId = null, expiration = 0, timestamp = 1170923731050, arrival =
0, correlationId = null, replyTo = null, persistent = true, type = null,
priority = 4, groupID = null, groupSequence = 0, targetConsumerId = null,
compressed = false, userID = null, content =
org.apache.activemq.util.ByteSequence@18cb416, marshalledProperties = null,
dataStructure = null, redeliveryCounter = 0, size = 1958, properties = null,
readOnlyProperties = true, readOnlyBody = true, droppable = false, text =
null}
10:35:31,128 | DEBUG | pool-component.servicemix-jms-thread-2 | JmsComponent
| emix.common.AsyncBaseLifeCycle 532 | Created correlation id:
ID:HGO1-1777-1170923655537-9:0
10:35:31,128 | DEBUG | pool-component.servicemix-jms-thread-2 |
DeliveryChannelImpl | .messaging.DeliveryChannelImpl 411 | Send
ID:HGO1-1777-1170923655537-9:0 in DeliveryChannel{servicemix-jms}
10:35:31,128 | DEBUG | pool-component.servicemix-jms-thread-2 | SedaFlow
| emix.jbi.nmr.flow.AbstractFlow 121 | Called Flow send
10:35:31,143 | DEBUG | pool-flow.seda.servicemix-eip-thread-1 | SedaQueue
| .jbi.nmr.flow.seda.SedaQueue$1 132 |
org.apache.servicemix.jbi.nmr.flow.seda.SedaQueue$1@118e146 dequeued
exchange: InOnly[
id: ID:HGO1-1777-1170923655537-9:0
status: Active
role: provider
service: {http://www.rmb.co.za/eip}static-routing-slip
endpoint: endpoint
in: <?xml version="1.0" encoding="UTF-8"?><xb:esbMessage
xmlns:xb="http://www.rmb.co.za/eai/common/xmlbeans">
<esbHeader>
<sourceSystem>Calypso</sourceSystem>
<date>2007-02-08T10:35:30.909+02:00</date>
<esbAggregationProps>
<sessionId>7ee3ab34-27c9-41d7-ada8-6b6eb16f23d2</sessionId>
<msgType>AGGREGATION-START</msgType>
<destination>some destination</destination>
<timeoutSecs>-1</timeoutSecs>
<maxBatchSize>0</maxBatchSize>
<sequenceNo>0</sequenceNo>
<totalMessages>0</totalMessages>
</esbAggregationProps>
</esbHeader>
<esbBody>
<body xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:nil="true"/>
</esbBody>
</xb:esbMessage>
]
10:35:31,174 | DEBUG | pool-flow.seda.servicemix-eip-thread-1 | EIPComponent
| emix.common.AsyncBaseLifeCycle 419 | Received exchange: status: Active,
role: provider
10:35:31,174 | DEBUG | pool-flow.seda.servicemix-eip-thread-1 | EIPComponent
| emix.common.AsyncBaseLifeCycle 487 | Retrieved correlation id:
ID:HGO1-1777-1170923655537-9:0
10:35:31,190 | ERROR | pool-flow.seda.servicemix-eip-thread-1 | EIPComponent
| ervicemix.common.BaseLifeCycle 48 | Error processing exchange InOnly[
id: ID:HGO1-1777-1170923655537-9:0
status: Active
role: provider
service: {http://www.rmb.co.za/eip}static-routing-slip
endpoint: endpoint
in: <?xml version="1.0" encoding="UTF-8"?><xb:esbMessage
xmlns:xb="http://www.rmb.co.za/eai/common/xmlbeans">
<esbHeader>
<sourceSystem>Calypso</sourceSystem>
<date>2007-02-08T10:35:30.909+02:00</date>
<esbAggregationProps>
<sessionId>7ee3ab34-27c9-41d7-ada8-6b6eb16f23d2</sessionId>
<msgType>AGGREGATION-START</msgType>
<destination>some destination</destination>
<timeoutSecs>-1</timeoutSecs>
<maxBatchSize>0</maxBatchSize>
<sequenceNo>0</sequenceNo>
<totalMessages>0</totalMessages>
</esbAggregationProps>
</esbHeader>
<esbBody>
<body xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:nil="true"/>
</esbBody>
</xb:esbMessage>
]
java.lang.IllegalStateException: Use an InOut MEP
at
org.apache.servicemix.eip.patterns.StaticRoutingSlip.processAsync(StaticRoutingSlip.java:157)
at org.apache.servicemix.eip.EIPEndpoint.process(EIPEndpoint.java:160)
at
org.apache.servicemix.common.AsyncBaseLifeCycle.doProcess(AsyncBaseLifeCycle.java:489)
at
org.apache.servicemix.common.AsyncBaseLifeCycle.processExchange(AsyncBaseLifeCycle.java:441)
at
org.apache.servicemix.common.BaseLifeCycle.onMessageExchange(BaseLifeCycle.java:46)
at
org.apache.servicemix.jbi.messaging.DeliveryChannelImpl.processInBound(DeliveryChannelImpl.java:593)
at
org.apache.servicemix.jbi.nmr.flow.AbstractFlow.doRouting(AbstractFlow.java:174)
at
org.apache.servicemix.jbi.nmr.flow.seda.SedaFlow.doRouting(SedaFlow.java:176)
at
org.apache.servicemix.jbi.nmr.flow.seda.SedaQueue$1.run(SedaQueue.java:134)
at
edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:665)
at
edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:690)
at java.lang.Thread.run(Thread.java:595)
10:35:31,284 | DEBUG | pool-flow.seda.servicemix-eip-thread-1 |
DeliveryChannelImpl | .messaging.DeliveryChannelImpl 411 | Send
ID:HGO1-1777-1170923655537-9:0 in DeliveryChannel{servicemix-eip}
10:35:31,284 | DEBUG | pool-flow.seda.servicemix-eip-thread-1 | SedaFlow
| emix.jbi.nmr.flow.AbstractFlow 121 | Called Flow send
10:35:31,284 | DEBUG | pool-flow.seda.servicemix-eip-thread-2 | SedaQueue
| .jbi.nmr.flow.seda.SedaQueue$1 132 |
org.apache.servicemix.jbi.nmr.flow.seda.SedaQueue$1@1709b64 dequeued
exchange: InOnly[
id: ID:HGO1-1777-1170923655537-9:0
status: Error
role: consumer
service: {http://www.rmb.co.za/eip}static-routing-slip
endpoint: endpoint
in: <?xml version="1.0" encoding="UTF-8"?><xb:esbMessage
xmlns:xb="http://www.rmb.co.za/eai/common/xmlbeans">
<esbHeader>
<sourceSystem>Calypso</sourceSystem>
<date>2007-02-08T10:35:30.909+02:00</date>
<esbAggregationProps>
<sessionId>7ee3ab34-27c9-41d7-ada8-6b6eb16f23d2</sessionId>
<msgType>AGGREGATION-START</msgType>
<destination>some destination</destination>
<timeoutSecs>-1</timeoutSecs>
<maxBatchSize>0</maxBatchSize>
<sequenceNo>0</sequenceNo>
<totalMessages>0</totalMessages>
</esbAggregationProps>
</esbHeader>
<esbBody>
<body xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:nil="true"/>
</esbBody>
</xb:esbMessage>
error: java.lang.IllegalStateException: Use an InOut MEP
]
10:35:31,346 | DEBUG | pool-flow.seda.servicemix-eip-thread-2 | JmsComponent
| emix.common.AsyncBaseLifeCycle 419 | Received exchange: status: Error,
role: consumer
10:35:31,346 | DEBUG | pool-flow.seda.servicemix-eip-thread-2 | JmsComponent
| emix.common.AsyncBaseLifeCycle 487 | Retrieved correlation id:
ID:HGO1-1777-1170923655537-9:0
10:35:31,346 | ERROR | pool-flow.seda.servicemix-eip-thread-2 | JmsComponent
| ervicemix.common.BaseLifeCycle 48 | Error processing exchange InOnly[
id: ID:HGO1-1777-1170923655537-9:0
status: Error
role: consumer
service: {http://www.rmb.co.za/eip}static-routing-slip
endpoint: endpoint
in: <?xml version="1.0" encoding="UTF-8"?><xb:esbMessage
xmlns:xb="http://www.rmb.co.za/eai/common/xmlbeans">
<esbHeader>
<sourceSystem>Calypso</sourceSystem>
<date>2007-02-08T10:35:30.909+02:00</date>
<esbAggregationProps>
<sessionId>7ee3ab34-27c9-41d7-ada8-6b6eb16f23d2</sessionId>
<msgType>AGGREGATION-START</msgType>
<destination>some destination</destination>
<timeoutSecs>-1</timeoutSecs>
<maxBatchSize>0</maxBatchSize>
<sequenceNo>0</sequenceNo>
<totalMessages>0</totalMessages>
</esbAggregationProps>
</esbHeader>
<esbBody>
<body xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:nil="true"/>
</esbBody>
</xb:esbMessage>
error: java.lang.IllegalStateException: Use an InOut MEP
]
java.lang.UnsupportedOperationException: A destination must be specified.
at
org.apache.activemq.ActiveMQMessageProducer.send(ActiveMQMessageProducer.java:448)
at
org.apache.activemq.ActiveMQMessageProducer.send(ActiveMQMessageProducer.java:356)
at
org.apache.servicemix.jms.multiplexing.MultiplexingConsumerProcessor.process(MultiplexingConsumerProcessor.java:125)
at
org.apache.servicemix.common.AsyncBaseLifeCycle.doProcess(AsyncBaseLifeCycle.java:489)
at
org.apache.servicemix.common.AsyncBaseLifeCycle.processExchange(AsyncBaseLifeCycle.java:463)
at
org.apache.servicemix.common.BaseLifeCycle.onMessageExchange(BaseLifeCycle.java:46)
at
org.apache.servicemix.jbi.messaging.DeliveryChannelImpl.processInBound(DeliveryChannelImpl.java:593)
at
org.apache.servicemix.jbi.nmr.flow.AbstractFlow.doRouting(AbstractFlow.java:174)
at
org.apache.servicemix.jbi.nmr.flow.seda.SedaFlow.doRouting(SedaFlow.java:176)
at
org.apache.servicemix.jbi.nmr.flow.seda.SedaQueue$1.run(SedaQueue.java:134)
at
edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:665)
at
edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:690)
at java.lang.Thread.run(Thread.java:595)
10:35:31,440 | DEBUG | pool-flow.seda.servicemix-eip-thread-2 |
DeliveryChannelImpl | .messaging.DeliveryChannelImpl 411 | Send
ID:HGO1-1777-1170923655537-9:0 in DeliveryChannel{servicemix-jms}
10:35:31,440 | DEBUG | pool-flow.seda.servicemix-eip-thread-2 |
DeliveryChannelImpl | .messaging.DeliveryChannelImpl 384 | Exception
processing: ID:HGO1-1777-1170923655537-9:0 in
DeliveryChannel{servicemix-jms}
10:35:31,440 | ERROR | pool-flow.seda.servicemix-eip-thread-2 | JmsComponent
| ervicemix.common.BaseLifeCycle 60 | Error setting exchange status to
ERROR
javax.jbi.messaging.MessagingException: illegal call to send / sendSync
at
org.apache.servicemix.jbi.messaging.MessageExchangeImpl.handleSend(MessageExchangeImpl.java:571)
at
org.apache.servicemix.jbi.messaging.DeliveryChannelImpl.doSend(DeliveryChannelImpl.java:370)
at
org.apache.servicemix.jbi.messaging.DeliveryChannelImpl.send(DeliveryChannelImpl.java:417)
at
org.apache.servicemix.common.BaseLifeCycle.onMessageExchange(BaseLifeCycle.java:58)
at
org.apache.servicemix.jbi.messaging.DeliveryChannelImpl.processInBound(DeliveryChannelImpl.java:593)
at
org.apache.servicemix.jbi.nmr.flow.AbstractFlow.doRouting(AbstractFlow.java:174)
at
org.apache.servicemix.jbi.nmr.flow.seda.SedaFlow.doRouting(SedaFlow.java:176)
at
org.apache.servicemix.jbi.nmr.flow.seda.SedaQueue$1.run(SedaQueue.java:134)
at
edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:665)
at
edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:690)
at java.lang.Thread.run(Thread.java:595)
so is the pipe the correct way to achieve what i need to and how can i get
this working?
--
View this message in context: http://www.nabble.com/Calling-external-web-service-tf3159837s12049.html#a8861413
Sent from the ServiceMix - User mailing list archive at Nabble.com.
Re: RE : Re: Calling external web service
Posted by Anthony <an...@rmb.co.za>.
many thanks for the reply (i was losing faith :)), i changed my http provider
endpoint as follows but i still get the same error as per previous post...
<http:endpoint service="rmb-http:EaiServiceImplService"
endpoint="EaiService"
role="provider"
locationURI="http://localhost:9080/eai-web-1.0/services/EaiService"
wsdlResource="http://localhost:9080/eai-web-1.0/services/EaiService?wsdl"
soap="true"
soapAction="processSessionAggregation"
soapVersion="1.1"/>
is my approach correct in using a pipeline to call the external web service
(in the eip:transformer tag) and then passing the result from the web
service to my output jms endpoint (in the eip:target tag)
--
View this message in context: http://www.nabble.com/Calling-external-web-service-tf3159837s12049.html#a8843602
Sent from the ServiceMix - User mailing list archive at Nabble.com.
RE : Re: Calling external web service
Posted by ke...@yahoo.fr.
it seems you have got a problem when you reading
your web external service reply.
please try force soapVersion="1.1" into your
http-endpoint.
Cordialement,
Grégoire A.
--- Anthony <an...@rmb.co.za> a écrit :
>
> hi guys, i'm getting desperate over here...
>
> has any of you ever called an external web service
> from servicemix??? all i
> need to do is:
> - read a message from a queue
> - send the content of the message to an external web
> service
> - put the reply from the web service back onto
> another queue
> that's it!
>
> here's my latest attempt (oh & i got axis to
> generate my wsdl now using the
> ?wsdl parm...):
>
> my jms-in-su:
> <jms:endpoint service="rmb-jms:jms-in"
> endpoint="endpoint"
> targetService="rmb-eip:pipe"
> role="consumer"
> destinationStyle="queue"
> jmsProviderDestinationName="test.in"
> connectionFactory="#connectionFactory"
>
>
defaultMep="http://www.w3.org/2004/08/wsdl/in-only"/>
> <bean id="connectionFactory"
>
class="org.apache.activemq.ActiveMQConnectionFactory">
> <property name="brokerURL"
> value="vm://localhost" />
> </bean>
>
> my pipe-su:
> <eip:pipeline service="rmb-eip:pipe"
> endpoint="endpoint">
> <eip:transformer>
> <eip:exchange-target
> service="rmb-http:EaiServiceImplService" />
> </eip:transformer>
> <eip:target>
> <eip:exchange-target service="rmb-jms:jms-out" />
> </eip:target>
> </eip:pipeline>
>
> my ws-provider-su:
> <http:endpoint
> service="rmb-http:EaiServiceImplService"
> endpoint="EaiService"
> role="provider"
>
>
locationURI="http://localhost:9080/eai-web-1.0/services/EaiService"
>
>
wsdlResource="http://localhost:9080/eai-web-1.0/services/EaiService?wsdl"
> soap="true"
>
> soapAction="processSessionAggregation"/>
> i've tried it with & without the soap and soapAction
> properties but no luck
>
> my jms-out-su:
> <jms:endpoint service="rmb-jms:jms-out"
> endpoint="jms-out"
> role="provider"
> destinationStyle="queue"
> jmsProviderDestinationName="test.out"
> connectionFactory="#connectionFactory"
> />
> <bean id="connectionFactory"
>
class="org.apache.activemq.ActiveMQConnectionFactory">
> <property name="brokerURL"
> value="vm://localhost" />
> </bean>
>
> my wsdl:
> <?xml version="1.0" encoding="UTF-8" ?>
> - <wsdl:definitions
>
targetNamespace="http://localhost:9080/eai-web-1.0/services/EaiService"
> xmlns:apachesoap="http://xml.apache.org/xml-soap"
>
xmlns:impl="http://localhost:9080/eai-web-1.0/services/EaiService"
>
xmlns:intf="http://localhost:9080/eai-web-1.0/services/EaiService"
>
xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/"
> xmlns:tns1="EaiService"
> xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
>
xmlns:wsdlsoap="http://schemas.xmlsoap.org/wsdl/soap/"
> xmlns:xsd="http://www.w3.org/2001/XMLSchema">
> - <!--
> WSDL created by Apache Axis version: 1.4
> Built on Apr 22, 2006 (06:55:48 PDT)
>
> -->
> - <wsdl:types>
> - <schema
> targetNamespace="http://www.w3.org/2001/XMLSchema"
> xmlns="http://www.w3.org/2001/XMLSchema">
> <import namespace="EaiService" />
> <import
>
namespace="http://schemas.xmlsoap.org/soap/encoding/"
> />
> </schema>
> - <schema targetNamespace="EaiService"
> xmlns="http://www.w3.org/2001/XMLSchema">
> <import
>
namespace="http://schemas.xmlsoap.org/soap/encoding/"
> />
> - <complexType name="DataHandler">
> - <simpleContent>
> <extension />
> </simpleContent>
> </complexType>
> </schema>
> </wsdl:types>
> - <wsdl:message
> name="processSessionAggregationRequest">
> <wsdl:part name="msg" type="xsd:string" />
> </wsdl:message>
> - <wsdl:message
> name="processSessionAggregationResponse">
> <wsdl:part name="returnqname"
> type="tns1:DataHandler" />
> </wsdl:message>
> - <wsdl:portType name="EaiServiceImpl">
> - <wsdl:operation name="processSessionAggregation"
> parameterOrder="msg">
> <wsdl:input
> message="impl:processSessionAggregationRequest"
> name="processSessionAggregationRequest" />
> <wsdl:output
> message="impl:processSessionAggregationResponse"
> name="processSessionAggregationResponse" />
> </wsdl:operation>
> </wsdl:portType>
> - <wsdl:binding name="EaiServiceSoapBinding"
> type="impl:EaiServiceImpl">
> <wsdlsoap:binding style="rpc"
> transport="http://schemas.xmlsoap.org/soap/http" />
> - <wsdl:operation name="processSessionAggregation">
> <wsdlsoap:operation soapAction="" />
> - <wsdl:input
> name="processSessionAggregationRequest">
> <wsdlsoap:body
>
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
>
namespace="http://localhost:9080/eai-web-1.0/services/EaiService"
> use="encoded" />
> </wsdl:input>
> - <wsdl:output
> name="processSessionAggregationResponse">
> <wsdlsoap:body
>
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
>
namespace="http://localhost:9080/eai-web-1.0/services/EaiService"
> use="encoded" />
> </wsdl:output>
> </wsdl:operation>
> </wsdl:binding>
> - <wsdl:service name="EaiServiceImplService">
> - <wsdl:port binding="impl:EaiServiceSoapBinding"
> name="EaiService">
> <wsdlsoap:address
>
location="http://localhost:9080/eai-web-1.0/services/EaiService"
> />
> </wsdl:port>
> </wsdl:service>
> </wsdl:definitions>
>
> the error i'm getting currently:
> 10:30:29,045 | DEBUG |
> pool-component.servicemix-jms-thread-2 |
> plexingConsumerProcessor |
> ultiplexingConsumerProcessor$1 90 | Handling
> jms message ActiveMQTextMessage {commandId = 5,
> responseRequired = true,
> messageId = ID:HGO1-3463-1170837028154-1:0:1:1:1,
> originalDestination =
> null, originalTransactionId = null, producerId =
> ID:HGO1-3463-1170837028154-1:0:1:1, destination =
> queue://test.in,
> transactionId = null, expiration = 0, timestamp =
> 1170837028998, arrival =
> 0, correlationId = null, replyTo = null, persistent
> = true, type = null,
> priority = 4, groupID = null, groupSequence = 0,
> targetConsumerId = null,
> compressed = false, userID = null, content =
> org.apache.activemq.util.ByteSequence@4cbcaf,
> marshalledProperties = null,
> dataStructure = null, redeliveryCounter = 0, size =
> 1958, properties = null,
> readOnlyProperties = true, readOnlyBody = true,
> droppable = false, text =
> null}
> 10:30:29,076 | DEBUG |
> pool-component.servicemix-jms-thread-2 |
> JmsComponent
> | emix.common.AsyncBaseLifeCycle 532 | Created
> correlation id:
> ID:HGO1-3259-1170836765143-9:0
> 10:30:29,076 | DEBUG |
> pool-component.servicemix-jms-thread-2 |
> DeliveryChannelImpl |
> .messaging.DeliveryChannelImpl 411 | Send
> ID:HGO1-3259-1170836765143-9:0 in
> DeliveryChannel{servicemix-jms}
> 10:30:29,076 | DEBUG |
> pool-component.servicemix-jms-thread-2 | SedaFlow
>
> | emix.jbi.nmr.flow.AbstractFlow 121 | Called Flow
> send
> 10:30:29,092 | DEBUG |
> pool-flow.seda.servicemix-eip-thread-1 | SedaQueue
>
> | .jbi.nmr.flow.seda.SedaQueue$1 132 |
>
org.apache.servicemix.jbi.nmr.flow.seda.SedaQueue$1@10417ad
> dequeued
> exchange: InOnly[
> id: ID:HGO1-3259-1170836765143-9:0
> status: Active
> role: provider
> service: {http://www.rmb.co.za/eip}pipe
> endpoint: endpoint
> in: <?xml version="1.0"
> encoding="UTF-8"?><xb:esbMessage
> xmlns:xb="http://www.rmb.co.za/eai/common/xmlbeans">
> <esbHeader>
> <sourceSystem>Calypso</sourceSystem>
> <date>2007-02-07T10:30:28.858+02:00</date>
> <esbAggregationProps>
>
>
<sessionId>0e35beba-15b1-4554-abf8-285c60dcce50</sessionId>
> <msgType>AGGREGATION-START</msgType>
> <destination>some destination</destination>
> <timeoutSecs>-1</timeoutSecs>
> <maxBatchSize>0</maxBatchSize>
> <sequenceNo>0</sequenceNo>
> <totalMessages>0</totalMessages>
> </esbAggregationProps>
> </esbHeader>
> <esbBody>
> <body
>
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
> xsi:nil="true"/>
> </esbBody>
> </xb:esbMessage>
> ]
> 10:30:29,092 | DEBUG |
> pool-flow.seda.servicemix-eip-thread-1 |
> EIPComponent
> | emix.common.AsyncBaseLifeCycle 419 | Received
> exchange: status: Active,
> role: provider
> 10:30:29,092 | DEBUG |
> pool-flow.seda.servicemix-eip-thread-1 |
> EIPComponent
> | emix.common.AsyncBaseLifeCycle 487 | Retrieved
> correlation id:
> ID:HGO1-3259-1170836765143-9:0
> 10:30:29,092 | DEBUG |
> pool-flow.seda.servicemix-eip-thread-1 | MemoryStore
>
> | cemix.store.memory.MemoryStore 51 | Storing
> object with id:
> ID:HGO1-3259-1170836765143-9:0
> 10:30:29,092 | DEBUG |
> pool-flow.seda.servicemix-eip-thread-1 |
> EIPComponent
> | emix.common.AsyncBaseLifeCycle 538 | Correlation
> id retrieved from
> ThreadLocal: ID:HGO1-3259-1170836765143-9:0
> 10:30:29,092 | DEBUG |
> pool-flow.seda.servicemix-eip-thread-1 |
> DeliveryChannelImpl |
> .messaging.DeliveryChannelImpl 411 | Send
> ID:HGO1-3259-1170836765143-5:0 in
> DeliveryChannel{servicemix-eip}
> 10:30:29,092 | DEBUG |
> pool-flow.seda.servicemix-eip-thread-1 | SedaFlow
>
> | emix.jbi.nmr.flow.AbstractFlow 121 | Called Flow
> send
> 10:30:29,092 | DEBUG |
> pool-flow.seda.servicemix-http-thread-1 | SedaQueue
>
> | .jbi.nmr.flow.seda.SedaQueue$1 132 |
>
org.apache.servicemix.jbi.nmr.flow.seda.SedaQueue$1@196de7e
> dequeued
> exchange: InOut[
> id: ID:HGO1-3259-1170836765143-5:0
> status: Active
> role: provider
> service:
>
{http://localhost:9080/eai-web-1.0/services/EaiService}EaiServiceImplService
> endpoint: EaiService
> in: <?xml version="1.0"
> encoding="UTF-8"?><xb:esbMessage
> xmlns:xb="http://www.rmb.co.za/eai/common/xmlbeans">
> <esbHeader>
> <sourceSystem>Calypso</sourceSystem>
> <date>2007-02-07T10:30:28.858+02:00</date>
> <esbAggregationProps>
>
>
<sessionId>0e35beba-15b1-4554-abf8-285c60dcce50</sessionId>
> <msgType>AGGREGATION-START</msgType>
> <destination>some destination</destination>
> <timeoutSecs>-1</timeoutSecs>
> <maxBatchSize>0</maxBatchSize>
> <sequenceNo>0</sequenceNo>
> <totalMessages>0</totalMessages>
> </esbAggregationProps>
> </esbHeader>
> <esbBody>
> <body
>
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
> xsi:nil="true"/>
> </esbBody>
> </xb:esbMessage>
> ]
> 10:30:29,092 | DEBUG |
> pool-flow.seda.servicemix-http-thread-1 |
> HttpComponent |
> emix.common.AsyncBaseLifeCycle 419 | Received
> exchange: status: Active, role: provider
> 10:30:29,092 | DEBUG |
> pool-flow.seda.servicemix-http-thread-1 |
> HttpComponent |
> emix.common.AsyncBaseLifeCycle 487 | Retrieved
> correlation id: ID:HGO1-3259-1170836765143-9:0
> 10:30:29,811 | ERROR |
> pool-flow.seda.servicemix-http-thread-1 |
> HttpComponent |
> ervicemix.common.BaseLifeCycle 48 | Error
> processing exchange InOut[
> id: ID:HGO1-3259-1170836765143-5:0
> status: Active
> role: provider
> service:
>
{http://localhost:9080/eai-web-1.0/services/EaiService}EaiServiceImplService
> endpoint: EaiService
> in: <?xml version="1.0"
> encoding="UTF-8"?><xb:esbMessage
> xmlns:xb="http://www.rmb.co.za/eai/common/xmlbeans">
> <esbHeader>
> <sourceSystem>Calypso</sourceSystem>
> <date>2007-02-07T10:30:28.858+02:00</date>
> <esbAggregationProps>
>
>
<sessionId>0e35beba-15b1-4554-abf8-285c60dcce50</sessionId>
> <msgType>AGGREGATION-START</msgType>
> <destination>some destination</destination>
> <timeoutSecs>-1</timeoutSecs>
> <maxBatchSize>0</maxBatchSize>
> <sequenceNo>0</sequenceNo>
> <totalMessages>0</totalMessages>
> </esbAggregationProps>
> </esbHeader>
> <esbBody>
> <body
>
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
> xsi:nil="true"/>
> </esbBody>
> </xb:esbMessage>
> ]
> org.apache.servicemix.soap.SoapFault: Unexpected
> fault code:
>
{http://www.w3.org/2003/05/soap-envelope}Server.userException
> at
>
org.apache.servicemix.soap.marshalers.SoapReader.readFaultUsingDom(SoapReader.java:256)
> at
>
org.apache.servicemix.soap.marshalers.SoapReader.readFaultUsingStax(SoapReader.java:321)
> at
>
org.apache.servicemix.soap.marshalers.SoapReader.readSoapUsingStax(SoapReader.java:193)
> at
>
org.apache.servicemix.soap.marshalers.SoapReader.read(SoapReader.java:82)
> at
>
org.apache.servicemix.soap.marshalers.SoapReader.read(SoapReader.java:73)
> at
>
org.apache.servicemix.http.processors.ProviderProcessor.process(ProviderProcessor.java:173)
> at
>
org.apache.servicemix.common.AsyncBaseLifeCycle.doProcess(AsyncBaseLifeCycle.java:489)
> at
>
org.apache.servicemix.common.AsyncBaseLifeCycle.processExchange(AsyncBaseLifeCycle.java:441)
> at
>
org.apache.servicemix.common.BaseLifeCycle.onMessageExchange(BaseLifeCycle.java:46)
> at
>
org.apache.servicemix.jbi.messaging.DeliveryChannelImpl.processInBound(DeliveryChannelImpl.java:593)
> at
>
org.apache.servicemix.jbi.nmr.flow.AbstractFlow.doRouting(AbstractFlow.java:174)
> at
>
org.apache.servicemix.jbi.nmr.flow.seda.SedaFlow.doRouting(SedaFlow.java:176)
> at
>
org.apache.servicemix.jbi.nmr.flow.seda.SedaQueue$1.run(SedaQueue.java:134)
> at
>
edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:665)
> at
>
edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:690)
> at java.lang.Thread.run(Thread.java:595)
> 10:30:29,873 | DEBUG |
> pool-flow.seda.servicemix-http-thread-1 |
> DeliveryChannelImpl |
> .messaging.DeliveryChannelImpl 411 | Send
> ID:HGO1-3259-1170836765143-5:0 in
> DeliveryChannel{servicemix-http}
> 10:30:29,905 | DEBUG |
> pool-flow.seda.servicemix-http-thread-1 | SedaFlow
>
> | emix.jbi.nmr.flow.AbstractFlow 121 | Called Flow
> send
> 10:30:29,905 | DEBUG |
> pool-flow.seda.servicemix-http-thread-2 | SedaQueue
>
> | .jbi.nmr.flow.seda.SedaQueue$1 132 |
>
org.apache.servicemix.jbi.nmr.flow.seda.SedaQueue$1@186e8cb
> dequeued
> exchange: InOut[
> id: ID:HGO1-3259-1170836765143-5:0
> status: Error
> role: consumer
> service:
>
{http://localhost:9080/eai-web-1.0/services/EaiService}EaiServiceImplService
> endpoint: EaiService
> in: <?xml version="1.0"
> encoding="UTF-8"?><xb:esbMessage
> xmlns:xb="http://www.rmb.co.za/eai/common/xmlbeans">
> <esbHeader>
> <sourceSystem>Calypso</sourceSystem>
> <date>2007-02-07T10:30:28.858+02:00</date>
> <esbAggregationProps>
>
>
<sessionId>0e35beba-15b1-4554-abf8-285c60dcce50</sessionId>
> <msgType>AGGREGATION-START</msgType>
> <destination>some destination</destination>
> <timeoutSecs>-1</timeoutSecs>
> <maxBatchSize>0</maxBatchSize>
> <sequenceNo>0</sequenceNo>
> <totalMessages>0</totalMessages>
> </esbAggregationProps>
> </esbHeader>
> <esbBody>
> <body
>
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
> xsi:nil="true"/>
> </esbBody>
> </xb:esbMessage>
> error: org.apache.servicemix.soap.SoapFault:
> Unexpected fault code:
>
{http://www.w3.org/2003/05/soap-envelope}Server.userException
> ]
> 10:30:29,967 | DEBUG |
> pool-flow.seda.servicemix-http-thread-2 |
> EIPComponent |
> emix.common.AsyncBaseLifeCycle 419 | Received
> exchange: status: Error, role: consumer
> 10:30:29,967 | DEBUG |
> pool-flow.seda.servicemix-http-thread-2 |
> EIPComponent |
> emix.common.AsyncBaseLifeCycle 487 | Retrieved
> correlation id: ID:HGO1-3259-1170836765143-9:0
> 10:30:29,967 | DEBUG |
> pool-flow.seda.servicemix-http-thread-2 |
> MemoryStore
> | cemix.store.memory.MemoryStore 62 | Loading
> object with id:
> ID:HGO1-3259-1170836765143-9:0
> 10:30:29,967 | DEBUG |
> pool-flow.seda.servicemix-http-thread-2 |
> DeliveryChannelImpl |
> .messaging.DeliveryChannelImpl 411 | Send
> ID:HGO1-3259-1170836765143-9:0 in
> DeliveryChannel{servicemix-eip}
> 10:30:29,967 | DEBUG |
> pool-flow.seda.servicemix-http-thread-2 | SedaFlow
>
> | emix.jbi.nmr.flow.AbstractFlow 121 | Called Flow
> send
> 10:30:29,967 | DEBUG |
> pool-flow.seda.servicemix-eip-thread-2 | SedaQueue
>
> | .jbi.nmr.flow.seda.SedaQueue$1 132 |
>
org.apache.servicemix.jbi.nmr.flow.seda.SedaQueue$1@125f027
> dequeued
> exchange: InOnly[
> id: ID:HGO1-3259-1170836765143-9:0
> status: Error
> role: consumer
> service: {http://www.rmb.co.za/eip}pipe
> endpoint: endpoint
> in: <?xml version="1.0"
> encoding="UTF-8"?><xb:esbMessage
> xmlns:xb="http://www.rmb.co.za/eai/common/xmlbeans">
> <esbHeader>
> <sourceSystem>Calypso</sourceSystem>
> <date>2007-02-07T10:30:28.858+02:00</date>
> <esbAggregationProps>
>
>
<sessionId>0e35beba-15b1-4554-abf8-285c60dcce50</sessionId>
> <msgType>AGGREGATION-START</msgType>
> <destination>some destination</destination>
> <timeoutSecs>-1</timeoutSecs>
> <maxBatchSize>0</maxBatchSize>
> <sequenceNo>0</sequenceNo>
> <totalMessages>0</totalMessages>
> </esbAggregationProps>
> </esbHeader>
> <esbBody>
> <body
>
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
> xsi:nil="true"/>
> </esbBody>
> </xb:esbMessage>
> error: org.apache.servicemix.soap.SoapFault:
> Unexpected fault code:
>
{http://www.w3.org/2003/05/soap-envelope}Server.userException
> ]
> 10:30:30,030 | DEBUG |
> pool-flow.seda.servicemix-eip-thread-2 |
> JmsComponent
> | emix.common.AsyncBaseLifeCycle 419 | Received
> exchange: status: Error,
> role: consumer
> 10:30:30,030 | DEBUG |
> pool-flow.seda.servicemix-eip-thread-2 |
> JmsComponent
> | emix.common.AsyncBaseLifeCycle 487 | Retrieved
> correlation id:
> ID:HGO1-3259-1170836765143-9:0
> 10:30:30,030 | ERROR |
> pool-flow.seda.servicemix-eip-thread-2 |
> JmsComponent
> | ervicemix.common.BaseLifeCycle 48 | Error
> processing exchange InOnly[
> id: ID:HGO1-3259-1170836765143-9:0
> status: Error
> role: consumer
> service: {http://www.rmb.co.za/eip}pipe
> endpoint: endpoint
> in: <?xml version="1.0"
> encoding="UTF-8"?><xb:esbMessage
> xmlns:xb="http://www.rmb.co.za/eai/common/xmlbeans">
> <esbHeader>
> <sourceSystem>Calypso</sourceSystem>
> <date>2007-02-07T10:30:28.858+02:00</date>
> <esbAggregationProps>
>
>
<sessionId>0e35beba-15b1-4554-abf8-285c60dcce50</sessionId>
> <msgType>AGGREGATION-START</msgType>
> <destination>some destination</destination>
> <timeoutSecs>-1</timeoutSecs>
> <maxBatchSize>0</maxBatchSize>
> <sequenceNo>0</sequenceNo>
> <totalMessages>0</totalMessages>
> </esbAggregationProps>
> </esbHeader>
> <esbBody>
> <body
>
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
> xsi:nil="true"/>
> </esbBody>
> </xb:esbMessage>
> error: org.apache.servicemix.soap.SoapFault:
> Unexpected fault code:
>
{http://www.w3.org/2003/05/soap-envelope}Server.userException
> ]
> java.lang.UnsupportedOperationException: A
> destination must be specified.
> at
>
org.apache.activemq.ActiveMQMessageProducer.send(ActiveMQMessageProducer.java:448)
> at
>
org.apache.activemq.ActiveMQMessageProducer.send(ActiveMQMessageProducer.java:356)
> at
>
org.apache.servicemix.jms.multiplexing.MultiplexingConsumerProcessor.process(MultiplexingConsumerProcessor.java:125)
> at
>
org.apache.servicemix.common.AsyncBaseLifeCycle.doProcess(AsyncBaseLifeCycle.java:489)
> at
>
org.apache.servicemix.common.AsyncBaseLifeCycle.processExchange(AsyncBaseLifeCycle.java:463)
> at
>
org.apache.servicemix.common.BaseLifeCycle.onMessageExchange(BaseLifeCycle.java:46)
> at
>
org.apache.servicemix.jbi.messaging.DeliveryChannelImpl.processInBound(DeliveryChannelImpl.java:593)
> at
>
org.apache.servicemix.jbi.nmr.flow.AbstractFlow.doRouting(AbstractFlow.java:174)
> at
>
org.apache.servicemix.jbi.nmr.flow.seda.SedaFlow.doRouting(SedaFlow.java:176)
> at
>
org.apache.servicemix.jbi.nmr.flow.seda.SedaQueue$1.run(SedaQueue.java:134)
> at
>
edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:665)
> at
>
edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:690)
> at java.lang.Thread.run(Thread.java:595)
> 10:30:30,139 | DEBUG |
> pool-flow.seda.servicemix-eip-thread-2 |
> DeliveryChannelImpl |
> .messaging.DeliveryChannelImpl 411 | Send
> ID:HGO1-3259-1170836765143-9:0 in
> DeliveryChannel{servicemix-jms}
> 10:30:30,139 | DEBUG |
> pool-flow.seda.servicemix-eip-thread-2 |
> DeliveryChannelImpl |
> .messaging.DeliveryChannelImpl 384 | Exception
> processing: ID:HGO1-3259-1170836765143-9:0 in
> DeliveryChannel{servicemix-jms}
> 10:30:30,139 | ERROR |
> pool-flow.seda.servicemix-eip-thread-2 |
> JmsComponent
> | ervicemix.common.BaseLifeCycle 60 | Error
> setting exchange status to
> ERROR
> javax.jbi.messaging.MessagingException: illegal call
> to send / sendSync
> at
>
org.apache.servicemix.jbi.messaging.MessageExchangeImpl.handleSend(MessageExchangeImpl.java:571)
> at
>
org.apache.servicemix.jbi.messaging.DeliveryChannelImpl.doSend(DeliveryChannelImpl.java:370)
> at
>
org.apache.servicemix.jbi.messaging.DeliveryChannelImpl.send(DeliveryChannelImpl.java:417)
> at
>
org.apache.servicemix.common.BaseLifeCycle.onMessageExchange(BaseLifeCycle.java:58)
> at
>
org.apache.servicemix.jbi.messaging.DeliveryChannelImpl.processInBound(DeliveryChannelImpl.java:593)
> at
>
org.apache.servicemix.jbi.nmr.flow.AbstractFlow.doRouting(AbstractFlow.java:174)
> at
>
org.apache.servicemix.jbi.nmr.flow.seda.SedaFlow.doRouting(SedaFlow.java:176)
> at
>
org.apache.servicemix.jbi.nmr.flow.seda.SedaQueue$1.run(SedaQueue.java:134)
> at
>
edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:665)
> at
>
edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:690)
> at java.lang.Thread.run(Thread.java:595)
>
>
> please any pointers would be greatly appreciated!
>
> anthony
> --
> View this message in context:
>
http://www.nabble.com/Calling-external-web-service-tf3159837s12049.html#a8841609
> Sent from the ServiceMix - User mailing list archive
> at Nabble.com.
>
>
___________________________________________________________________________
Découvrez une nouvelle façon d'obtenir des réponses à toutes vos questions !
Profitez des connaissances, des opinions et des expériences des internautes sur Yahoo! Questions/Réponses
http://fr.answers.yahoo.com
Re: Calling external web service
Posted by Anthony <an...@rmb.co.za>.
hi guys, i'm getting desperate over here...
has any of you ever called an external web service from servicemix??? all i
need to do is:
- read a message from a queue
- send the content of the message to an external web service
- put the reply from the web service back onto another queue
that's it!
here's my latest attempt (oh & i got axis to generate my wsdl now using the
?wsdl parm...):
my jms-in-su:
<jms:endpoint service="rmb-jms:jms-in"
endpoint="endpoint"
targetService="rmb-eip:pipe"
role="consumer"
destinationStyle="queue"
jmsProviderDestinationName="test.in"
connectionFactory="#connectionFactory"
defaultMep="http://www.w3.org/2004/08/wsdl/in-only"/>
<bean id="connectionFactory"
class="org.apache.activemq.ActiveMQConnectionFactory">
<property name="brokerURL" value="vm://localhost" />
</bean>
my pipe-su:
<eip:pipeline service="rmb-eip:pipe" endpoint="endpoint">
<eip:transformer>
<eip:exchange-target service="rmb-http:EaiServiceImplService" />
</eip:transformer>
<eip:target>
<eip:exchange-target service="rmb-jms:jms-out" />
</eip:target>
</eip:pipeline>
my ws-provider-su:
<http:endpoint service="rmb-http:EaiServiceImplService"
endpoint="EaiService"
role="provider"
locationURI="http://localhost:9080/eai-web-1.0/services/EaiService"
wsdlResource="http://localhost:9080/eai-web-1.0/services/EaiService?wsdl"
soap="true"
soapAction="processSessionAggregation"/>
i've tried it with & without the soap and soapAction properties but no luck
my jms-out-su:
<jms:endpoint service="rmb-jms:jms-out"
endpoint="jms-out"
role="provider"
destinationStyle="queue"
jmsProviderDestinationName="test.out"
connectionFactory="#connectionFactory" />
<bean id="connectionFactory"
class="org.apache.activemq.ActiveMQConnectionFactory">
<property name="brokerURL" value="vm://localhost" />
</bean>
my wsdl:
<?xml version="1.0" encoding="UTF-8" ?>
- <wsdl:definitions
targetNamespace="http://localhost:9080/eai-web-1.0/services/EaiService"
xmlns:apachesoap="http://xml.apache.org/xml-soap"
xmlns:impl="http://localhost:9080/eai-web-1.0/services/EaiService"
xmlns:intf="http://localhost:9080/eai-web-1.0/services/EaiService"
xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:tns1="EaiService" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
xmlns:wsdlsoap="http://schemas.xmlsoap.org/wsdl/soap/"
xmlns:xsd="http://www.w3.org/2001/XMLSchema">
- <!--
WSDL created by Apache Axis version: 1.4
Built on Apr 22, 2006 (06:55:48 PDT)
-->
- <wsdl:types>
- <schema targetNamespace="http://www.w3.org/2001/XMLSchema"
xmlns="http://www.w3.org/2001/XMLSchema">
<import namespace="EaiService" />
<import namespace="http://schemas.xmlsoap.org/soap/encoding/" />
</schema>
- <schema targetNamespace="EaiService"
xmlns="http://www.w3.org/2001/XMLSchema">
<import namespace="http://schemas.xmlsoap.org/soap/encoding/" />
- <complexType name="DataHandler">
- <simpleContent>
<extension />
</simpleContent>
</complexType>
</schema>
</wsdl:types>
- <wsdl:message name="processSessionAggregationRequest">
<wsdl:part name="msg" type="xsd:string" />
</wsdl:message>
- <wsdl:message name="processSessionAggregationResponse">
<wsdl:part name="returnqname" type="tns1:DataHandler" />
</wsdl:message>
- <wsdl:portType name="EaiServiceImpl">
- <wsdl:operation name="processSessionAggregation" parameterOrder="msg">
<wsdl:input message="impl:processSessionAggregationRequest"
name="processSessionAggregationRequest" />
<wsdl:output message="impl:processSessionAggregationResponse"
name="processSessionAggregationResponse" />
</wsdl:operation>
</wsdl:portType>
- <wsdl:binding name="EaiServiceSoapBinding" type="impl:EaiServiceImpl">
<wsdlsoap:binding style="rpc"
transport="http://schemas.xmlsoap.org/soap/http" />
- <wsdl:operation name="processSessionAggregation">
<wsdlsoap:operation soapAction="" />
- <wsdl:input name="processSessionAggregationRequest">
<wsdlsoap:body encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
namespace="http://localhost:9080/eai-web-1.0/services/EaiService"
use="encoded" />
</wsdl:input>
- <wsdl:output name="processSessionAggregationResponse">
<wsdlsoap:body encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
namespace="http://localhost:9080/eai-web-1.0/services/EaiService"
use="encoded" />
</wsdl:output>
</wsdl:operation>
</wsdl:binding>
- <wsdl:service name="EaiServiceImplService">
- <wsdl:port binding="impl:EaiServiceSoapBinding" name="EaiService">
<wsdlsoap:address
location="http://localhost:9080/eai-web-1.0/services/EaiService" />
</wsdl:port>
</wsdl:service>
</wsdl:definitions>
the error i'm getting currently:
10:30:29,045 | DEBUG | pool-component.servicemix-jms-thread-2 |
plexingConsumerProcessor | ultiplexingConsumerProcessor$1 90 | Handling
jms message ActiveMQTextMessage {commandId = 5, responseRequired = true,
messageId = ID:HGO1-3463-1170837028154-1:0:1:1:1, originalDestination =
null, originalTransactionId = null, producerId =
ID:HGO1-3463-1170837028154-1:0:1:1, destination = queue://test.in,
transactionId = null, expiration = 0, timestamp = 1170837028998, arrival =
0, correlationId = null, replyTo = null, persistent = true, type = null,
priority = 4, groupID = null, groupSequence = 0, targetConsumerId = null,
compressed = false, userID = null, content =
org.apache.activemq.util.ByteSequence@4cbcaf, marshalledProperties = null,
dataStructure = null, redeliveryCounter = 0, size = 1958, properties = null,
readOnlyProperties = true, readOnlyBody = true, droppable = false, text =
null}
10:30:29,076 | DEBUG | pool-component.servicemix-jms-thread-2 | JmsComponent
| emix.common.AsyncBaseLifeCycle 532 | Created correlation id:
ID:HGO1-3259-1170836765143-9:0
10:30:29,076 | DEBUG | pool-component.servicemix-jms-thread-2 |
DeliveryChannelImpl | .messaging.DeliveryChannelImpl 411 | Send
ID:HGO1-3259-1170836765143-9:0 in DeliveryChannel{servicemix-jms}
10:30:29,076 | DEBUG | pool-component.servicemix-jms-thread-2 | SedaFlow
| emix.jbi.nmr.flow.AbstractFlow 121 | Called Flow send
10:30:29,092 | DEBUG | pool-flow.seda.servicemix-eip-thread-1 | SedaQueue
| .jbi.nmr.flow.seda.SedaQueue$1 132 |
org.apache.servicemix.jbi.nmr.flow.seda.SedaQueue$1@10417ad dequeued
exchange: InOnly[
id: ID:HGO1-3259-1170836765143-9:0
status: Active
role: provider
service: {http://www.rmb.co.za/eip}pipe
endpoint: endpoint
in: <?xml version="1.0" encoding="UTF-8"?><xb:esbMessage
xmlns:xb="http://www.rmb.co.za/eai/common/xmlbeans">
<esbHeader>
<sourceSystem>Calypso</sourceSystem>
<date>2007-02-07T10:30:28.858+02:00</date>
<esbAggregationProps>
<sessionId>0e35beba-15b1-4554-abf8-285c60dcce50</sessionId>
<msgType>AGGREGATION-START</msgType>
<destination>some destination</destination>
<timeoutSecs>-1</timeoutSecs>
<maxBatchSize>0</maxBatchSize>
<sequenceNo>0</sequenceNo>
<totalMessages>0</totalMessages>
</esbAggregationProps>
</esbHeader>
<esbBody>
<body xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:nil="true"/>
</esbBody>
</xb:esbMessage>
]
10:30:29,092 | DEBUG | pool-flow.seda.servicemix-eip-thread-1 | EIPComponent
| emix.common.AsyncBaseLifeCycle 419 | Received exchange: status: Active,
role: provider
10:30:29,092 | DEBUG | pool-flow.seda.servicemix-eip-thread-1 | EIPComponent
| emix.common.AsyncBaseLifeCycle 487 | Retrieved correlation id:
ID:HGO1-3259-1170836765143-9:0
10:30:29,092 | DEBUG | pool-flow.seda.servicemix-eip-thread-1 | MemoryStore
| cemix.store.memory.MemoryStore 51 | Storing object with id:
ID:HGO1-3259-1170836765143-9:0
10:30:29,092 | DEBUG | pool-flow.seda.servicemix-eip-thread-1 | EIPComponent
| emix.common.AsyncBaseLifeCycle 538 | Correlation id retrieved from
ThreadLocal: ID:HGO1-3259-1170836765143-9:0
10:30:29,092 | DEBUG | pool-flow.seda.servicemix-eip-thread-1 |
DeliveryChannelImpl | .messaging.DeliveryChannelImpl 411 | Send
ID:HGO1-3259-1170836765143-5:0 in DeliveryChannel{servicemix-eip}
10:30:29,092 | DEBUG | pool-flow.seda.servicemix-eip-thread-1 | SedaFlow
| emix.jbi.nmr.flow.AbstractFlow 121 | Called Flow send
10:30:29,092 | DEBUG | pool-flow.seda.servicemix-http-thread-1 | SedaQueue
| .jbi.nmr.flow.seda.SedaQueue$1 132 |
org.apache.servicemix.jbi.nmr.flow.seda.SedaQueue$1@196de7e dequeued
exchange: InOut[
id: ID:HGO1-3259-1170836765143-5:0
status: Active
role: provider
service:
{http://localhost:9080/eai-web-1.0/services/EaiService}EaiServiceImplService
endpoint: EaiService
in: <?xml version="1.0" encoding="UTF-8"?><xb:esbMessage
xmlns:xb="http://www.rmb.co.za/eai/common/xmlbeans">
<esbHeader>
<sourceSystem>Calypso</sourceSystem>
<date>2007-02-07T10:30:28.858+02:00</date>
<esbAggregationProps>
<sessionId>0e35beba-15b1-4554-abf8-285c60dcce50</sessionId>
<msgType>AGGREGATION-START</msgType>
<destination>some destination</destination>
<timeoutSecs>-1</timeoutSecs>
<maxBatchSize>0</maxBatchSize>
<sequenceNo>0</sequenceNo>
<totalMessages>0</totalMessages>
</esbAggregationProps>
</esbHeader>
<esbBody>
<body xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:nil="true"/>
</esbBody>
</xb:esbMessage>
]
10:30:29,092 | DEBUG | pool-flow.seda.servicemix-http-thread-1 |
HttpComponent | emix.common.AsyncBaseLifeCycle 419 | Received
exchange: status: Active, role: provider
10:30:29,092 | DEBUG | pool-flow.seda.servicemix-http-thread-1 |
HttpComponent | emix.common.AsyncBaseLifeCycle 487 | Retrieved
correlation id: ID:HGO1-3259-1170836765143-9:0
10:30:29,811 | ERROR | pool-flow.seda.servicemix-http-thread-1 |
HttpComponent | ervicemix.common.BaseLifeCycle 48 | Error
processing exchange InOut[
id: ID:HGO1-3259-1170836765143-5:0
status: Active
role: provider
service:
{http://localhost:9080/eai-web-1.0/services/EaiService}EaiServiceImplService
endpoint: EaiService
in: <?xml version="1.0" encoding="UTF-8"?><xb:esbMessage
xmlns:xb="http://www.rmb.co.za/eai/common/xmlbeans">
<esbHeader>
<sourceSystem>Calypso</sourceSystem>
<date>2007-02-07T10:30:28.858+02:00</date>
<esbAggregationProps>
<sessionId>0e35beba-15b1-4554-abf8-285c60dcce50</sessionId>
<msgType>AGGREGATION-START</msgType>
<destination>some destination</destination>
<timeoutSecs>-1</timeoutSecs>
<maxBatchSize>0</maxBatchSize>
<sequenceNo>0</sequenceNo>
<totalMessages>0</totalMessages>
</esbAggregationProps>
</esbHeader>
<esbBody>
<body xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:nil="true"/>
</esbBody>
</xb:esbMessage>
]
org.apache.servicemix.soap.SoapFault: Unexpected fault code:
{http://www.w3.org/2003/05/soap-envelope}Server.userException
at
org.apache.servicemix.soap.marshalers.SoapReader.readFaultUsingDom(SoapReader.java:256)
at
org.apache.servicemix.soap.marshalers.SoapReader.readFaultUsingStax(SoapReader.java:321)
at
org.apache.servicemix.soap.marshalers.SoapReader.readSoapUsingStax(SoapReader.java:193)
at
org.apache.servicemix.soap.marshalers.SoapReader.read(SoapReader.java:82)
at
org.apache.servicemix.soap.marshalers.SoapReader.read(SoapReader.java:73)
at
org.apache.servicemix.http.processors.ProviderProcessor.process(ProviderProcessor.java:173)
at
org.apache.servicemix.common.AsyncBaseLifeCycle.doProcess(AsyncBaseLifeCycle.java:489)
at
org.apache.servicemix.common.AsyncBaseLifeCycle.processExchange(AsyncBaseLifeCycle.java:441)
at
org.apache.servicemix.common.BaseLifeCycle.onMessageExchange(BaseLifeCycle.java:46)
at
org.apache.servicemix.jbi.messaging.DeliveryChannelImpl.processInBound(DeliveryChannelImpl.java:593)
at
org.apache.servicemix.jbi.nmr.flow.AbstractFlow.doRouting(AbstractFlow.java:174)
at
org.apache.servicemix.jbi.nmr.flow.seda.SedaFlow.doRouting(SedaFlow.java:176)
at
org.apache.servicemix.jbi.nmr.flow.seda.SedaQueue$1.run(SedaQueue.java:134)
at
edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:665)
at
edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:690)
at java.lang.Thread.run(Thread.java:595)
10:30:29,873 | DEBUG | pool-flow.seda.servicemix-http-thread-1 |
DeliveryChannelImpl | .messaging.DeliveryChannelImpl 411 | Send
ID:HGO1-3259-1170836765143-5:0 in DeliveryChannel{servicemix-http}
10:30:29,905 | DEBUG | pool-flow.seda.servicemix-http-thread-1 | SedaFlow
| emix.jbi.nmr.flow.AbstractFlow 121 | Called Flow send
10:30:29,905 | DEBUG | pool-flow.seda.servicemix-http-thread-2 | SedaQueue
| .jbi.nmr.flow.seda.SedaQueue$1 132 |
org.apache.servicemix.jbi.nmr.flow.seda.SedaQueue$1@186e8cb dequeued
exchange: InOut[
id: ID:HGO1-3259-1170836765143-5:0
status: Error
role: consumer
service:
{http://localhost:9080/eai-web-1.0/services/EaiService}EaiServiceImplService
endpoint: EaiService
in: <?xml version="1.0" encoding="UTF-8"?><xb:esbMessage
xmlns:xb="http://www.rmb.co.za/eai/common/xmlbeans">
<esbHeader>
<sourceSystem>Calypso</sourceSystem>
<date>2007-02-07T10:30:28.858+02:00</date>
<esbAggregationProps>
<sessionId>0e35beba-15b1-4554-abf8-285c60dcce50</sessionId>
<msgType>AGGREGATION-START</msgType>
<destination>some destination</destination>
<timeoutSecs>-1</timeoutSecs>
<maxBatchSize>0</maxBatchSize>
<sequenceNo>0</sequenceNo>
<totalMessages>0</totalMessages>
</esbAggregationProps>
</esbHeader>
<esbBody>
<body xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:nil="true"/>
</esbBody>
</xb:esbMessage>
error: org.apache.servicemix.soap.SoapFault: Unexpected fault code:
{http://www.w3.org/2003/05/soap-envelope}Server.userException
]
10:30:29,967 | DEBUG | pool-flow.seda.servicemix-http-thread-2 |
EIPComponent | emix.common.AsyncBaseLifeCycle 419 | Received
exchange: status: Error, role: consumer
10:30:29,967 | DEBUG | pool-flow.seda.servicemix-http-thread-2 |
EIPComponent | emix.common.AsyncBaseLifeCycle 487 | Retrieved
correlation id: ID:HGO1-3259-1170836765143-9:0
10:30:29,967 | DEBUG | pool-flow.seda.servicemix-http-thread-2 | MemoryStore
| cemix.store.memory.MemoryStore 62 | Loading object with id:
ID:HGO1-3259-1170836765143-9:0
10:30:29,967 | DEBUG | pool-flow.seda.servicemix-http-thread-2 |
DeliveryChannelImpl | .messaging.DeliveryChannelImpl 411 | Send
ID:HGO1-3259-1170836765143-9:0 in DeliveryChannel{servicemix-eip}
10:30:29,967 | DEBUG | pool-flow.seda.servicemix-http-thread-2 | SedaFlow
| emix.jbi.nmr.flow.AbstractFlow 121 | Called Flow send
10:30:29,967 | DEBUG | pool-flow.seda.servicemix-eip-thread-2 | SedaQueue
| .jbi.nmr.flow.seda.SedaQueue$1 132 |
org.apache.servicemix.jbi.nmr.flow.seda.SedaQueue$1@125f027 dequeued
exchange: InOnly[
id: ID:HGO1-3259-1170836765143-9:0
status: Error
role: consumer
service: {http://www.rmb.co.za/eip}pipe
endpoint: endpoint
in: <?xml version="1.0" encoding="UTF-8"?><xb:esbMessage
xmlns:xb="http://www.rmb.co.za/eai/common/xmlbeans">
<esbHeader>
<sourceSystem>Calypso</sourceSystem>
<date>2007-02-07T10:30:28.858+02:00</date>
<esbAggregationProps>
<sessionId>0e35beba-15b1-4554-abf8-285c60dcce50</sessionId>
<msgType>AGGREGATION-START</msgType>
<destination>some destination</destination>
<timeoutSecs>-1</timeoutSecs>
<maxBatchSize>0</maxBatchSize>
<sequenceNo>0</sequenceNo>
<totalMessages>0</totalMessages>
</esbAggregationProps>
</esbHeader>
<esbBody>
<body xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:nil="true"/>
</esbBody>
</xb:esbMessage>
error: org.apache.servicemix.soap.SoapFault: Unexpected fault code:
{http://www.w3.org/2003/05/soap-envelope}Server.userException
]
10:30:30,030 | DEBUG | pool-flow.seda.servicemix-eip-thread-2 | JmsComponent
| emix.common.AsyncBaseLifeCycle 419 | Received exchange: status: Error,
role: consumer
10:30:30,030 | DEBUG | pool-flow.seda.servicemix-eip-thread-2 | JmsComponent
| emix.common.AsyncBaseLifeCycle 487 | Retrieved correlation id:
ID:HGO1-3259-1170836765143-9:0
10:30:30,030 | ERROR | pool-flow.seda.servicemix-eip-thread-2 | JmsComponent
| ervicemix.common.BaseLifeCycle 48 | Error processing exchange InOnly[
id: ID:HGO1-3259-1170836765143-9:0
status: Error
role: consumer
service: {http://www.rmb.co.za/eip}pipe
endpoint: endpoint
in: <?xml version="1.0" encoding="UTF-8"?><xb:esbMessage
xmlns:xb="http://www.rmb.co.za/eai/common/xmlbeans">
<esbHeader>
<sourceSystem>Calypso</sourceSystem>
<date>2007-02-07T10:30:28.858+02:00</date>
<esbAggregationProps>
<sessionId>0e35beba-15b1-4554-abf8-285c60dcce50</sessionId>
<msgType>AGGREGATION-START</msgType>
<destination>some destination</destination>
<timeoutSecs>-1</timeoutSecs>
<maxBatchSize>0</maxBatchSize>
<sequenceNo>0</sequenceNo>
<totalMessages>0</totalMessages>
</esbAggregationProps>
</esbHeader>
<esbBody>
<body xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:nil="true"/>
</esbBody>
</xb:esbMessage>
error: org.apache.servicemix.soap.SoapFault: Unexpected fault code:
{http://www.w3.org/2003/05/soap-envelope}Server.userException
]
java.lang.UnsupportedOperationException: A destination must be specified.
at
org.apache.activemq.ActiveMQMessageProducer.send(ActiveMQMessageProducer.java:448)
at
org.apache.activemq.ActiveMQMessageProducer.send(ActiveMQMessageProducer.java:356)
at
org.apache.servicemix.jms.multiplexing.MultiplexingConsumerProcessor.process(MultiplexingConsumerProcessor.java:125)
at
org.apache.servicemix.common.AsyncBaseLifeCycle.doProcess(AsyncBaseLifeCycle.java:489)
at
org.apache.servicemix.common.AsyncBaseLifeCycle.processExchange(AsyncBaseLifeCycle.java:463)
at
org.apache.servicemix.common.BaseLifeCycle.onMessageExchange(BaseLifeCycle.java:46)
at
org.apache.servicemix.jbi.messaging.DeliveryChannelImpl.processInBound(DeliveryChannelImpl.java:593)
at
org.apache.servicemix.jbi.nmr.flow.AbstractFlow.doRouting(AbstractFlow.java:174)
at
org.apache.servicemix.jbi.nmr.flow.seda.SedaFlow.doRouting(SedaFlow.java:176)
at
org.apache.servicemix.jbi.nmr.flow.seda.SedaQueue$1.run(SedaQueue.java:134)
at
edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:665)
at
edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:690)
at java.lang.Thread.run(Thread.java:595)
10:30:30,139 | DEBUG | pool-flow.seda.servicemix-eip-thread-2 |
DeliveryChannelImpl | .messaging.DeliveryChannelImpl 411 | Send
ID:HGO1-3259-1170836765143-9:0 in DeliveryChannel{servicemix-jms}
10:30:30,139 | DEBUG | pool-flow.seda.servicemix-eip-thread-2 |
DeliveryChannelImpl | .messaging.DeliveryChannelImpl 384 | Exception
processing: ID:HGO1-3259-1170836765143-9:0 in
DeliveryChannel{servicemix-jms}
10:30:30,139 | ERROR | pool-flow.seda.servicemix-eip-thread-2 | JmsComponent
| ervicemix.common.BaseLifeCycle 60 | Error setting exchange status to
ERROR
javax.jbi.messaging.MessagingException: illegal call to send / sendSync
at
org.apache.servicemix.jbi.messaging.MessageExchangeImpl.handleSend(MessageExchangeImpl.java:571)
at
org.apache.servicemix.jbi.messaging.DeliveryChannelImpl.doSend(DeliveryChannelImpl.java:370)
at
org.apache.servicemix.jbi.messaging.DeliveryChannelImpl.send(DeliveryChannelImpl.java:417)
at
org.apache.servicemix.common.BaseLifeCycle.onMessageExchange(BaseLifeCycle.java:58)
at
org.apache.servicemix.jbi.messaging.DeliveryChannelImpl.processInBound(DeliveryChannelImpl.java:593)
at
org.apache.servicemix.jbi.nmr.flow.AbstractFlow.doRouting(AbstractFlow.java:174)
at
org.apache.servicemix.jbi.nmr.flow.seda.SedaFlow.doRouting(SedaFlow.java:176)
at
org.apache.servicemix.jbi.nmr.flow.seda.SedaQueue$1.run(SedaQueue.java:134)
at
edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:665)
at
edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:690)
at java.lang.Thread.run(Thread.java:595)
please any pointers would be greatly appreciated!
anthony
--
View this message in context: http://www.nabble.com/Calling-external-web-service-tf3159837s12049.html#a8841609
Sent from the ServiceMix - User mailing list archive at Nabble.com.