|
View:
New views
3 Messages
—
Rating Filter:
Alert me
|
|
|
ODE could not find a mapper for request message with empty elementODE fails to find a mapper for request message when the request message is an empty element <userSearch/>. I am using ODE 1.2
It works when request message looks like <userSearch><userloginname/></userSearch>. Why is that? See below for the log messages and wsdl definition. WSDL: <wsdl:types> <xsd:schema targetNamespace="urn:/connector.wsdl" xmlns:tns="urn:/connector.wsdl" elementFormDefault="qualified"> <xsd:element name="userSearch"> <xsd:complexType> <xsd:sequence> <xsd:element name="userloginname" type="xsd:string" minOccurs="0" maxOccurs="1"/> <xsd:element name="username" type="xsd:string" minOccurs="0" maxOccurs="1"/> <xsd:element name="useremail" type="xsd:string" minOccurs="0" maxOccurs="1"/> <xsd:element name="usernotes" type="xsd:string" minOccurs="0" maxOccurs="1"/> <xsd:element name="groupname" type="xsd:string" minOccurs="0" maxOccurs="1"/> </xsd:sequence> </xsd:complexType> </xsd:element> </xsd:schema> </wsdl:types> <!-- Search message - user --> <wsdl:message name="userSearchRequest"> <wsdl:part name="body" element="tns:userSearch"/> </wsdl:message> <wsdl:message name="userSearchResponse"> <wsdl:part name="body" element="tns:users"/> </wsdl:message> <wsdl:portType name="ConnectoPortType"> <wsdl:operation name="searchuser"> <wsdl:input message="tns:userSearchRequest" /> <wsdl:output message="tns:userSearchResponse" /> </wsdl:operation> </wsdl:portType> LOG: 13:18:01,198 | DEBUG | pool-flow.seda.OdeBpelEngine-thread-39 | SedaQueue | .jbi.nmr.flow.seda.SedaQueue$1 132 | org.apache.servicemix.jbi.nmr.flow.seda.SedaQueue$1@536740 dequeued exchange: InOut[ id: ID:155.35.129.168-124c65af77c-15:17 status: Active role: provider service: {urn:/connector.wsdl}UserService endpoint: userport operation: {urn:/connector.wsdl}searchuser in: <?xml version="1.0" encoding="UTF-8"?><q0:userSearch xmlns:q0="urn:/connector.wsdl"/> ] 13:18:01,198 | DEBUG | Thread-13 | DeliveryChannelImpl | .messaging.DeliveryChannelImpl 282 | Accepting ID:155.35.129.168-124c65af77c-15:17 in DeliveryChannel{OdeBpelEngine} 13:18:01,198 | DEBUG | pool-6-thread-1 | OdeService | org.apache.ode.jbi.OdeService 225 | invokeOde() JBI exchangeId=ID:155.35.129.168-124c65af77c-15:17 endpoint={urn:/connector.wsdl}UserService:userport operation={urn:/connector.wsdl}searchuser 13:18:01,198 | DEBUG | pool-6-thread-1 | ServiceMixMapper | de.jbi.msgmap.ServiceMixMapper 59 | isRecognized() message: <?xml version="1.0" encoding="UTF-8"?> <q0:userSearch/> 13:18:01,214 | DEBUG | pool-6-thread-1 | ServiceMixMapper | de.jbi.msgmap.ServiceMixMapper 101 | element part body does not contain element {urn:/connector.wsdl}userSearch -- unrecognized 13:18:01,214 | ERROR | pool-6-thread-1 | OdeService | org.apache.ode.jbi.OdeService 239 | Could not find a mapper for request message for JBI MEX ID:155.35.129.168-124c65af77c-15:17; ODE MEX hqejbhcnphr4q8un46iics is failed. 13:18:01,214 | DEBUG | pool-6-thread-1 | OdeService | org.apache.ode.jbi.OdeService 272 | Rolling back ODE MEX {MyRoleMex#hqejbhcnphr4q8un46iics [Client ID:155.35.129.168-124c65af77c-15:17] calling {urn:/connector.wsdl}UserService.searchuser(...)} 13:18:01,214 | ERROR | pool-6-thread-1 | OdeService | org.apache.ode.jbi.OdeService 151 | Error invoking ODE. org.apache.ode.jbi.msgmap.MessageTranslationException: Could not find a mapper for request message for JBI MEX ID:155.35.129.168-124c65af77c-15:17; ODE MEX hqejbhcnphr4q8un46iics is failed. at org.apache.ode.jbi.OdeService.invokeOde(OdeService.java:240) at org.apache.ode.jbi.OdeService.onJbiMessageExchange(OdeService.java:148) at org.apache.ode.jbi.JbiMessageExchangeEventRouter.onJbiMessageExchange(JbiMessageExchangeEventRouter.java:67) at org.apache.ode.jbi.Receiver$1.run(Receiver.java:179) at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441) at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303) at java.util.concurrent.FutureTask.run(FutureTask.java:138) at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908) at java.lang.Thread.run(Thread.java:619) 13:18:01,214 | DEBUG | pool-6-thread-1 | DeliveryChannelImpl | .messaging.DeliveryChannelImpl 426 | Send ID:155.35.129.168-124c65af77c-15:17 in DeliveryChannel{OdeBpelEngine} 13:18:01,214 | DEBUG | pool-6-thread-1 | SecuredBroker | mix.jbi.security.SecuredBroker 66 | send exchange with secure broker 13:18:01,214 | DEBUG | pool-6-thread-1 | SedaFlow | emix.jbi.nmr.flow.AbstractFlow 118 | Called Flow send 13:18:01,214 | DEBUG | pool-flow.seda.OdeBpelEngine-thread-40 | SedaQueue | .jbi.nmr.flow.seda.SedaQueue$1 132 | org.apache.servicemix.jbi.nmr.flow.seda.SedaQueue$1@fff4a8 dequeued exchange: InOut[ id: ID:155.35.129.168-124c65af77c-15:17 status: Error role: consumer service: {urn:/connector.wsdl}UserService endpoint: userport operation: {urn:/connector.wsdl}searchuser in: <?xml version="1.0" encoding="UTF-8"?><q0:userSearch xmlns:q0="urn:/connector.wsdl"/> error: org.apache.ode.jbi.msgmap.MessageTranslationException: Could not find a mapper for request message for JBI MEX ID:155.35.129.168-124c65af77c-15:17; ODE MEX hqejbhcnphr4q8un46iics is failed. ] |
|
|
Re: ODE could not find a mapper for request message with empty elementPlease try snapshot version and give results:
http://people.apache.org/~rr/APACHE_ODE_1.X/org/apache/ode/ode-jbi/1.3.4-SNAPSHOT/ Also, please provide a version of ODE you used. 2009/11/5 LeeCK <leechin_kong@...>: > > ODE fails to find a mapper for request message when the request message is an > empty element <userSearch/>. > > It works when request message looks like > <userSearch><userloginname/></userSearch>. > > Why is that? See below for the log messages and wsdl definition. > > WSDL: > <wsdl:types> > <xsd:schema targetNamespace="urn:/connector.wsdl" > xmlns:tns="urn:/connector.wsdl" > elementFormDefault="qualified"> > <xsd:element name="userSearch"> > <xsd:complexType> > <xsd:sequence> > <xsd:element name="userloginname" type="xsd:string" > minOccurs="0" maxOccurs="1"/> > <xsd:element name="username" type="xsd:string" > minOccurs="0" maxOccurs="1"/> > <xsd:element name="useremail" type="xsd:string" > minOccurs="0" maxOccurs="1"/> > <xsd:element name="usernotes" type="xsd:string" > minOccurs="0" maxOccurs="1"/> > <xsd:element name="groupname" type="xsd:string" > minOccurs="0" maxOccurs="1"/> > </xsd:sequence> > </xsd:complexType> > </xsd:element> > </xsd:schema> > </wsdl:types> > > <!-- Search message - user --> > <wsdl:message name="userSearchRequest"> > <wsdl:part name="body" element="tns:userSearch"/> > </wsdl:message> > <wsdl:message name="userSearchResponse"> > <wsdl:part name="body" element="tns:users"/> > </wsdl:message> > > <wsdl:portType name="ConnectoPortType"> > <wsdl:operation name="searchuser"> > <wsdl:input message="tns:userSearchRequest" /> > <wsdl:output message="tns:userSearchResponse" /> > </wsdl:operation> > </wsdl:portType> > > LOG: > 13:18:01,198 | DEBUG | pool-flow.seda.OdeBpelEngine-thread-39 | SedaQueue > | .jbi.nmr.flow.seda.SedaQueue$1 132 | > org.apache.servicemix.jbi.nmr.flow.seda.SedaQueue$1@536740 dequeued > exchange: InOut[ > id: ID:155.35.129.168-124c65af77c-15:17 > status: Active > role: provider > service: {urn:/connector.wsdl}UserService > endpoint: userport > operation: {urn:/connector.wsdl}searchuser > in: <?xml version="1.0" encoding="UTF-8"?><q0:userSearch > xmlns:q0="urn:/connector.wsdl"/> > ] > 13:18:01,198 | DEBUG | Thread-13 | DeliveryChannelImpl | > .messaging.DeliveryChannelImpl 282 | Accepting > ID:155.35.129.168-124c65af77c-15:17 in DeliveryChannel{OdeBpelEngine} > 13:18:01,198 | DEBUG | pool-6-thread-1 | OdeService | > org.apache.ode.jbi.OdeService 225 | invokeOde() JBI > exchangeId=ID:155.35.129.168-124c65af77c-15:17 > endpoint={urn:/connector.wsdl}UserService:userport > operation={urn:/connector.wsdl}searchuser > 13:18:01,198 | DEBUG | pool-6-thread-1 | ServiceMixMapper | > de.jbi.msgmap.ServiceMixMapper 59 | isRecognized() message: <?xml > version="1.0" encoding="UTF-8"?> > <q0:userSearch/> > > 13:18:01,214 | DEBUG | pool-6-thread-1 | ServiceMixMapper | > de.jbi.msgmap.ServiceMixMapper 101 | element part body does not contain > element {urn:/connector.wsdl}userSearch -- unrecognized > 13:18:01,214 | ERROR | pool-6-thread-1 | OdeService | > org.apache.ode.jbi.OdeService 239 | Could not find a mapper for request > message for JBI MEX ID:155.35.129.168-124c65af77c-15:17; ODE MEX > hqejbhcnphr4q8un46iics is failed. > 13:18:01,214 | DEBUG | pool-6-thread-1 | OdeService | > org.apache.ode.jbi.OdeService 272 | Rolling back ODE MEX > {MyRoleMex#hqejbhcnphr4q8un46iics [Client > ID:155.35.129.168-124c65af77c-15:17] calling > {urn:/connector.wsdl}UserService.searchuser(...)} > 13:18:01,214 | ERROR | pool-6-thread-1 | OdeService | > org.apache.ode.jbi.OdeService 151 | Error invoking ODE. > org.apache.ode.jbi.msgmap.MessageTranslationException: Could not find a > mapper for request message for JBI MEX ID:155.35.129.168-124c65af77c-15:17; > ODE MEX hqejbhcnphr4q8un46iics is failed. > at org.apache.ode.jbi.OdeService.invokeOde(OdeService.java:240) > at org.apache.ode.jbi.OdeService.onJbiMessageExchange(OdeService.java:148) > at > org.apache.ode.jbi.JbiMessageExchangeEventRouter.onJbiMessageExchange(JbiMessageExchangeEventRouter.java:67) > at org.apache.ode.jbi.Receiver$1.run(Receiver.java:179) > at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441) > at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303) > at java.util.concurrent.FutureTask.run(FutureTask.java:138) > at > java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886) > at > java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908) > at java.lang.Thread.run(Thread.java:619) > 13:18:01,214 | DEBUG | pool-6-thread-1 | DeliveryChannelImpl | > .messaging.DeliveryChannelImpl 426 | Send > ID:155.35.129.168-124c65af77c-15:17 in DeliveryChannel{OdeBpelEngine} > 13:18:01,214 | DEBUG | pool-6-thread-1 | SecuredBroker | > mix.jbi.security.SecuredBroker 66 | send exchange with secure broker > 13:18:01,214 | DEBUG | pool-6-thread-1 | SedaFlow | > emix.jbi.nmr.flow.AbstractFlow 118 | Called Flow send > 13:18:01,214 | DEBUG | pool-flow.seda.OdeBpelEngine-thread-40 | SedaQueue > | .jbi.nmr.flow.seda.SedaQueue$1 132 | > org.apache.servicemix.jbi.nmr.flow.seda.SedaQueue$1@fff4a8 dequeued > exchange: InOut[ > id: ID:155.35.129.168-124c65af77c-15:17 > status: Error > role: consumer > service: {urn:/connector.wsdl}UserService > endpoint: userport > operation: {urn:/connector.wsdl}searchuser > in: <?xml version="1.0" encoding="UTF-8"?><q0:userSearch > xmlns:q0="urn:/connector.wsdl"/> > error: org.apache.ode.jbi.msgmap.MessageTranslationException: Could not > find a mapper for request message for JBI MEX > ID:155.35.129.168-124c65af77c-15:17; ODE MEX hqejbhcnphr4q8un46iics is > failed. > ] > -- > View this message in context: http://old.nabble.com/ODE-could-not-find-a-mapper-for-request-message-with-empty-element-tp26225649p26225649.html > Sent from the Apache Ode User mailing list archive at Nabble.com. > > Regards, -- Rafał Rusin http://www.touk.pl http://top.touk.pl http://people.apache.org/~rr/ |
|
|
Re: ODE could not find a mapper for request message with empty elementHi,
I am using ODE 1.2. Ode 1.3.4 fixes the issue. May I know when is the official release of this version? Thanks, Lee
|
| Free embeddable forum powered by Nabble | Forum Help |