Correct, processInOut method in ProviderEndpoint only raise the exception.

From my point of view, it makes sense to support InOut MEP at least in the sender endpoint.

Maybe you can raise a JIRA to add this MEP support.

Nevertheless, using Camel, you can define the Camel endpoint MEP, for example, in a route like this:

from("jbi:endpoint:http://foo.bar.org/MyService/MyEndpoint";).to("jbi:endpoint:http://foo.bar.org/MyService/OtherEndpoint?mep=in";);

I have never do this, but you can try :)

Regards
JB

Benoît Clouet wrote:
Thanks,

in case it is needed here's the full stacktrace :
java.lang.UnsupportedOperationException: Unsupported MEP:
http://www.w3.org/2004/08/wsdl/in-out
        at 
org.apache.servicemix.common.endpoints.ProviderEndpoint.processInOut(ProviderEndpoint.java:134)
        at 
org.apache.servicemix.file.FileSenderEndpoint.processInOut(FileSenderEndpoint.java:105)
        at 
org.apache.servicemix.common.endpoints.ProviderEndpoint.process(ProviderEndpoint.java:109)
        at 
org.apache.servicemix.common.AsyncBaseLifeCycle.doProcess(AsyncBaseLifeCycle.java:538)
        at 
org.apache.servicemix.common.AsyncBaseLifeCycle.processExchange(AsyncBaseLifeCycle.java:490)
        at 
org.apache.servicemix.common.BaseLifeCycle.onMessageExchange(BaseLifeCycle.java:46)
        at 
org.apache.servicemix.jbi.messaging.DeliveryChannelImpl.processInBound(DeliveryChannelImpl.java:610)
        at 
org.apache.servicemix.jbi.nmr.flow.AbstractFlow.doRouting(AbstractFlow.java:172)
        at 
org.apache.servicemix.jbi.nmr.flow.seda.SedaFlow.doRouting(SedaFlow.java:167)
        at 
org.apache.servicemix.jbi.nmr.flow.seda.SedaQueue$1.run(SedaQueue.java:134)
        at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown 
Source)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
        at java.lang.Thread.run(Unknown Source)

I also discovered in the source code of ProviderEndpoint that the
method simply throws the exception.

Now the questions becomes : How can I transform an InOut MEP issued by
the CXF-bc into an InOnly message ? Is there a way to do this cleanly
with, let's say Camel (I'm really reluctant to write a bean for this)
?

Kind regards,

Benoît

On Thu, Jun 4, 2009 at 4:21 PM, Jean-Baptiste Onofré <[email protected]> wrote:
Hi Benoît,

I have checked into the servicemix-file component. Regarding the
FileSenderEndpoint, it supports InOnly and InOut MEP: it contains
processInOnly() and processInOut() methods.
Nevertheless the processInOut() method simply calls the super class
processInOut() method aka the ProviderEndpoint class.

Let me try.

Regards
JB

Benoît Clouet wrote:
Hi,

I'm currently trying to implement a cxf-bc consumer to file-bc sender
exchange. A WSDL defines the messages (IN and OUT) and is referenced by the
cxf-bc. The client of the cxf web service expects some ack as a response to
the webservice call.

An XML to csv transformation is done at file marshaller level.

My first try results in an unsupported MEP error. I guess it is because
the file-bc only supports in-only MEP.

I know I could achieve this by using a bean-se, but I really would like to
leverage the file component functionalities.  Is there a way to work this
around either at the cxf level or by using some other component like the
camel-se ? Should I consider another approach ?

Benoît

Reply via email to