Hi Freeman,

Yeah, i've not problem to contribute my experience, the problem is that actually i've found a way ( mixin of code modification and configuration ) to obtain *what i need in my use case*, but i really don't know if i'm doing the right things from *servicemix point of view*.

What i'm saying is that, it's possible that for some things need it's possible that i reinvented something that is already there, but unfortunately is not documented well, so i've found my personal solution to do that, this is the point.

btw let me know if you want, i open a jira with my code.

Andrea


Freeman Fang ha scritto:
Hi Andrea,
Thanks for your comment.
And it's always welcome if you get any valuable experience with servicemix and wanna share it with other users.
It would be great if you can contribute patch, document or user case.

Thanks very much

Freeman

Andrea Zoppello wrote:
Hi Freeman,

If i add both MapAggregator and MapCodec, i'm experimenting some not
predictable exception in the cxf-bc-component. See my previous post in this email.

BTW My problem, is not the addressing configuration, but *how the Normalized Message sould be* so that we've WSA Headers in SOAP call.

I found a solution to my problem doing this:

1) I've enabled only the MapCodec interceptor, at this point it seems i found in the cxf Soap
Message object an attribute called "javax.ws.addressing.inbound"

2) I modified my cxf bc consumer so it will copy the proerty "javax.ws.addressing.inbound" to
the normalized message properties.

3) If in the soap response i need the headers, it seems the right way to proceed is to have a property called "javax.ws.addressing.outbound" in the cxf SOAP Message.


If i can suggest i thing, the documentation on how to use *cxf-bc decoupled from cxf-se* is not so clear, and i've spent a lot of time to understand what happen inside the code.

There are some situations, where it's needed to use cxf-bc only as a simple replacment of http and this is really difficult to understant quite now.

Regards



Freeman Fang ha scritto:
Hi Andrea,

You can add bean ref to you cxf bc provider configuration. something like <bean id="mapAggregator" class="org.apache.cxf.ws.addressing.MAPAggregator"/> <bean id="mapCodec" class="org.apache.cxf.ws.addressing.soap.MAPCodec"/>

<cxfbc:provider wsdl="/wsdl/hello_world.wsdl"
locationURI="http://localhost:9002/providertest_oneway";
                     endpoint="SoapPort"
                     service="greeter:SOAPService"
                     interfaceName="greeter:Greeter"
                     >
       <cxfbc:inInterceptors>
         <ref bean="mapAggregator"/>
         <ref bean="mapCodec">
       </cxfbc:inInterceptors>
       <cxfbc:outInterceptors>
         <ref bean="mapAggregator"/>
         <ref bean="mapCodec">
       </cxfbc:outInterceptors>
     </cxfbc:provider>

Best Regards

Freeman


Andrea Zoppello wrote:
Hi,

After doing a lot of debug i don't really understand how to prepare
a normalize message, so that when this is pass to a servicemix cxf-provider this will result in a SOAP Call with WSA Addressing elements in soap header.

This problem is blocking me, because i've to call external webservice that needs
WSA addressing in soap header..

Any idea on how to solve this???

Andrea Zoppello





Reply via email to