Hi Guillaume,
you remember correctly, the possible values are given:
- org.apache.ode.jbi.msgmap.JbiWsdl11WrapperMapper
- org.apache.ode.jbi.msgmap.ServiceMixMapper
- org.apache.ode.jbi.msgmap.DocLitMapper
Unfortunately, it seems not working. If I use the WSDL11Wrapper I get a
parsing error (see 1°) and if I use the DocLit mapper I get the same error I
get with the ServiceMix mapper (see 2°).
If I use ServiceMixMapper or DocLitMapper with http-bc it works.
1°
ERREUR : 'L''objet source transmis α ''{0}'' est vide.'
ERROR - OdeConsumer - Error translating message.
org.apache.ode.jbi.msgmap.MessageTranslationException: Message parsing
exception
at
org.apache.ode.jbi.msgmap.BaseXmlMapper.parse(BaseXmlMapper.java:55)
at
org.apache.ode.jbi.msgmap.JbiWsdl11WrapperMapper.toFaultType(JbiWsdl1
1WrapperMapper.java:166)
at org.apache.ode.jbi.OdeConsumer$4.call(OdeConsumer.java:221)
at org.apache.ode.jbi.OdeConsumer$4.call(OdeConsumer.java:204)
at
org.apache.ode.scheduler.simple.SimpleScheduler.execTransaction(Simpl
eScheduler.java:179)
at org.apache.ode.jbi.OdeConsumer.outResponse(OdeConsumer.java:202)
at
org.apache.ode.jbi.OdeConsumer.onJbiMessageExchange(OdeConsumer.java:
160)
at
org.apache.ode.jbi.JbiMessageExchangeEventRouter.onJbiMessageExchange
(JbiMessageExchangeEventRouter.java:40)
at org.apache.ode.jbi.Receiver$1.run(Receiver.java:179)
at
java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:41
7)
at
java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:269)
at java.util.concurrent.FutureTask.run(FutureTask.java:123)
at
java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExec
utor.java:650)
at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor
.java:675)
at java.lang.Thread.run(Thread.java:595)
Caused by: java.io.IOException: javax.xml.transform.TransformerException:
L''obj
et source transmis α ''{0}'' est vide.
at
com.sun.org.apache.xalan.internal.xsltc.trax.TransformerImpl.transfor
m(TransformerImpl.java:654)
at
com.sun.org.apache.xalan.internal.xsltc.trax.TransformerImpl.transfor
m(TransformerImpl.java:281)
at org.apache.ode.utils.DOMUtils.sourceToDOM(DOMUtils.java:661)
at
org.apache.ode.jbi.msgmap.BaseXmlMapper.parse(BaseXmlMapper.java:51)
... 14 more
ERROR - INVOKE - Failure during invoke: Message
parsing
exception
2°
ERROR - OdeService - Error invoking ODE.
org.apache.ode.jbi.msgmap.MessageTranslationException: Could not find a
mapper f
or request message for JBI MEX ID:10.217.96.173-1183737680c-5:0; ODE MEX
hqejbhc
nphr321bo0cf0sk is failed.
at org.apache.ode.jbi.OdeService.invokeOde(OdeService.java:240)
at
org.apache.ode.jbi.OdeService.onJbiMessageExchange(OdeService.java:14
8)
at
org.apache.ode.jbi.JbiMessageExchangeEventRouter.onJbiMessageExchange
(JbiMessageExchangeEventRouter.java:47)
at org.apache.ode.jbi.Receiver$1.run(Receiver.java:179)
at
java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:41
7)
at
java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:269)
at java.util.concurrent.FutureTask.run(FutureTask.java:123)
at
java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExec
utor.java:650)
at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor
.java:675)
at java.lang.Thread.run(Thread.java:595)
20-fΘvr.-2008 15:21:14 org.apache.cxf.phase.PhaseInterceptorChain
doIntercept
INFO: Interceptor has thrown exception, unwinding now
org.apache.cxf.interceptor.Fault: Could not find a mapper for request
message fo
r JBI MEX ID:10.217.96.173-1183737680c-5:0; ODE MEX hqejbhcnphr321bo0cf0sk
is fa
iled.
at
org.apache.servicemix.cxfbc.CxfBcConsumer$JbiPostInvokerInterceptor.h
andleMessage(CxfBcConsumer.java:454)
at
org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseIntercept
orChain.java:207)
at
org.apache.cxf.phase.PhaseInterceptorChain.resume(PhaseInterceptorCha
in.java:184)
at
org.apache.servicemix.cxfbc.CxfBcConsumer.process(CxfBcConsumer.java:
183)
at
org.apache.servicemix.cxfbc.CxfBcConsumer$JbiInvokerInterceptor.handl
eMessage(CxfBcConsumer.java:430)
at
org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseIntercept
orChain.java:207)
at
org.apache.cxf.transport.ChainInitiationObserver.onMessage(ChainIniti
ationObserver.java:73)
at
org.apache.cxf.transport.http_jetty.JettyHTTPDestination.serviceReque
st(JettyHTTPDestination.java:268)
at
org.apache.cxf.transport.http_jetty.JettyHTTPDestination.doService(Je
ttyHTTPDestination.java:224)
at
org.apache.cxf.transport.http_jetty.JettyHTTPHandler.handle(JettyHTTP
Handler.java:54)
at
org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:7
12)
at
org.mortbay.jetty.handler.ContextHandlerCollection.handle(ContextHand
lerCollection.java:211)
at
org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:1
39)
at org.mortbay.jetty.Server.handle(Server.java:313)
at
org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:50
6)
at
org.mortbay.jetty.HttpConnection$RequestHandler.content(HttpConnectio
n.java:844)
at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:644)
at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:211)
at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:381)
at
org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.ja
va:396)
at
org.mortbay.thread.BoundedThreadPool$PoolThread.run(BoundedThreadPool
.java:442)
Caused by: org.apache.ode.jbi.msgmap.MessageTranslationException: Could not
find
a mapper for request message for JBI MEX ID:10.217.96.173-1183737680c-5:0;
ODE
MEX hqejbhcnphr321bo0cf0sk is failed.
at org.apache.ode.jbi.OdeService.invokeOde(OdeService.java:240)
at
org.apache.ode.jbi.OdeService.onJbiMessageExchange(OdeService.java:14
8)
at
org.apache.ode.jbi.JbiMessageExchangeEventRouter.onJbiMessageExchange
(JbiMessageExchangeEventRouter.java:47)
at org.apache.ode.jbi.Receiver$1.run(Receiver.java:179)
at
java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:41
7)
at
java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:269)
at java.util.concurrent.FutureTask.run(FutureTask.java:123)
at
java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExec
utor.java:650)
at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor
.java:675)
at java.lang.Thread.run(Thread.java:595)
KR
Quentin
gnodet wrote:
>
> Ode defines several mappers: one tailored to servicemix-http and a
> mapper which uses the jbi wrapper used by servicemix-cxf-bc too.
> I think if you configure Ode correctly, you should be able to use
> cxf-bc + ode very easily.
> IIRC, the parameter is in a property file inside a folder that looks
> like [smx]/data/components/ode/.../
> Just change the parameter to the right mapper (iirc the possible
> values are given) and restart smx (without redeploying ode).
>
>
> On Wed, Feb 20, 2008 at 2:28 PM, qdallons
> <[EMAIL PROTECTED]> wrote:
>>
>> No ideas?
>>
>> KR
>> Quentin
>>
>>
>>
>>
>>
>> qdallons wrote:
>> >
>> >
>> > My working use case is:
>> >
>> > A process exposed as a web service outside the bus. My bpel process
>> > orchestrates a call to an external Web Service bind to the bus through
>> a
>> > http-bc JBI endpoint and a second call to a JBI JSR181 Service
>> >
>> > HTTP BC <--> ODE SE <--> 1° HTTP BC <--> External Web Service on
>> tomcat
>> > <--> 2° JSR181 SE
>> >
>> > When I replace the HTTP BC exposing the ODE process by CXF BC, I get
>> the
>> > error described below.
>> >
>> > KR
>> > Quentin
>> >
>> >
>> >
>> > Freeman Fang wrote:
>> >>
>> >> Hi Quentin,
>> >>
>> >> Would you please append the message with your working env (http-bc
>> -->
>> >> ode ).
>> >> Thanks
>> >>
>> >> Freeman
>> >>
>> >> qdallons wrote:
>> >>> Hi Freeman,
>> >>>
>> >>> ok but what I don't understand is that it works with the HTTP-BC SE
>> >>> which
>> >>> also produces a JBI message.
>> >>>
>> >>> Any ideas?
>> >>>
>> >>> KR
>> >>> Quentin
>> >>>
>> >>>
>> >>>
>> >>> Freeman Fang wrote:
>> >>>
>> >>>> Hi Quentin,
>> >>>>
>> >>>> I am not an expert of Ode BPEL, so I don't know if Ode can only
>> handle
>> >>>> soap message as input?
>> >>>> Since cxf-bc always do the transformation between SOAP message and
>> JBI
>> >>>> message, so the workaround I can suggest is
>> >>>> 1) and transformer (xslt maybe) between the cxf-bc and Ode
>> >>>> 2) maybe we need add an option for cxf-bc to let soap message pass
>> in
>> >>>> and don't change it
>> >>>>
>> >>>> Actually, I don't think 1) and 2) is good suggestion, since I think
>> all
>> >>>> component on the JBI bus should handle the universal JBI message
>> >>>>
>> >>>> Best Regards
>> >>>>
>> >>>> Freeman
>> >>>>
>> >>>> qdallons wrote:
>> >>>>
>> >>>>> Hi Freeman,
>> >>>>>
>> >>>>> thanks for your reply.
>> >>>>> Now, my following question is: any idea how to fix/workaround this
>> to
>> >>>>> achieve my goal (exposing Ode BPEL process with a cxf-bc).
>> >>>>> Also, another question is: Is the cxf-bc behavior incorrect or Ode
>> JBI
>> >>>>> behavior.
>> >>>>>
>> >>>>> KR
>> >>>>> Quentin
>> >>>>>
>> >>>>>
>> >>>>>
>> >>>>> Freeman Fang wrote:
>> >>>>>
>> >>>>>
>> >>>>>> Hi Quentin,
>> >>>>>>
>> >>>>>> Sorry I miss your mail about the cxf-bc working with bpel
>> engine.
>> >>>>>> The cxf-bc will change soap message to jbi message, which use
>> jbi
>> >>>>>> wrapper, something like
>> >>>>>> <jbi:message>
>> >>>>>> ...
>> >>>>>> </jbi:message>
>> >>>>>> I guess that's why your bpel engine can't handle it.
>> >>>>>>
>> >>>>>> Best Regards
>> >>>>>>
>> >>>>>> Freeman
>> >>>>>>
>> >>>>>>
>> >>>>>> On Fri, Feb 15, 2008 at 8:54 PM, qdallons
>> >>>>>> <[EMAIL PROTECTED]>
>> >>>>>> wrote:
>> >>>>>>
>> >>>>>>
>> >>>>>>
>> >>>>>>> Hi,
>> >>>>>>>
>> >>>>>>> to expose your BPEL process you need to configure a consumer
>> CXF-BC
>> >>>>>>> su.
>> >>>>>>>
>> >>>>>>> I've tried and it seems cxf-bc is not happy with. See my
>> unreplied
>> >>>>>>> post
>> >>>>>>> here:
>> >>>>>>>
>> >>>>>>>
>> http://www.nabble.com/Problem-exposing-Ode-bpel-as-a-web-service-with-the-cxf-bc-td15286951s12049.html
>> >>>>>>>
>> >>>>>>> You can do it with a http-bc consumer su, in that case the
>> result is
>> >>>>>>> successful.
>> >>>>>>>
>> >>>>>>> KR
>> >>>>>>> Quentin
>> >>>>>>>
>> >>>>>>>
>> >>>>>>>
>> >>>>>>> jhpatti wrote:
>> >>>>>>>
>> >>>>>>>
>> >>>>>>>> I have an existing BPEL process within a BPE su. Is there a
>> way
>> >>>>>>>> to
>> >>>>>>>> access this process through cxf? If so, how.
>> >>>>>>>>
>> >>>>>>>> Thanks.
>> >>>>>>>>
>> >>>>>>>>
>> >>>>>>>>
>> >>>>>>> --
>> >>>>>>> View this message in context:
>> >>>>>>> http://www.nabble.com/CXF-to-BPEL-tp15499345s12049p15500393.html
>> >>>>>>> Sent from the ServiceMix - User mailing list archive at
>> Nabble.com.
>> >>>>>>>
>> >>>>>>>
>> >>>>>>>
>> >>>>>>>
>> >>>>>>
>> >>>>>>
>> >>>>>
>> >>>>>
>> >>>>
>> >>>
>> >>>
>> >>
>> >>
>> >
>> >
>>
>> --
>> View this message in context:
>> http://www.nabble.com/CXF-to-BPEL-tp15499345s12049p15589013.html
>>
>>
>> Sent from the ServiceMix - User mailing list archive at Nabble.com.
>>
>>
>
>
>
> --
> Cheers,
> Guillaume Nodet
> ------------------------
> Blog: http://gnodet.blogspot.com/
>
>
--
View this message in context:
http://www.nabble.com/CXF-to-BPEL-tp15499345s12049p15590192.html
Sent from the ServiceMix - User mailing list archive at Nabble.com.