Hi,

just for the records, specifying the MEP inside the Camel RouteBuilder
seems to work.

I just changed my route from
"jbi:endpoint:urn:corp::connector:inbound:file:endpoint" to
"jbi:endpoint:urn:corp::connector:inbound:file:endpoint?mep=in-only"

Note that you have to specify "?mep=in-only" as "?mep=in" doesn't seem
to be sufficient.

Kind regards,

Benoît


On Thu, Jun 4, 2009 at 5:26 PM, Jean-Baptiste Onofré<[email protected]> wrote:
> 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