-
1. Re: Multiple locationURIs/service names using a single cxfbc:provider SU?
ffang Apr 2, 2010 10:15 PM (in response to gmotts_gary.motts)Hi,
Yeah, you can use dynamic uri.
something like
nm.setProperty(JbiConstants.HTTP_DESTINATION_URI, http://what_ever_you_want);
before send the NormalizedMessage to cxf bc provider. This way you can set dynamic uri per message.
Freeman
-
2. Re: Multiple locationURIs/service names using a single cxfbc:provider SU?
gmotts_gary.motts Apr 15, 2010 3:03 PM (in response to ffang)Freeman,
Hi,
I found that I can dynamically set the org.apache.servicemix.http.destination.uri one time by using a Camel processor class before sending the request to the servicemix-cxf provider. When the next requests is processed by the camel class, the property is updated to another URL but the CXF Provider ignores it - very odd. My CXF provider is defined in an Xbean that is currently implementing servicemix-cxf-bc 2009.0.1.4-fuse. Is the http.destination.uri value cached in some way?
-Gary
-
3. Re: Multiple locationURIs/service names using a single cxfbc:provider SU?
ffang Apr 15, 2010 9:06 PM (in response to gmotts_gary.motts)Hi,
This is a known issue and get fixed month ago, SMXCOMP-726[1] tracked it on apache side, and I believe servicemix-cxf-bc 2009.01.0.5-fuse already pick up this fix.
https://issues.apache.org/activemq/browse/SMXCOMP-726
http://repo.open.iona.com/maven2/org/apache/servicemix/servicemix-cxf-bc/2009.01.0.5-fuse/
Freeman
-
4. Re: Multiple locationURIs/service names using a single cxfbc:provider SU?
gmotts_gary.motts Apr 16, 2010 1:05 PM (in response to ffang)Hi Freeman,
I tried both 2009.01.0.5-fuse and 2010.01.0-fuse-01-00 and was unsuccessful, the servicemix-cxf destination url did not change after setting it once, it remained constant.
Basically what I did was change the dependency in my pom.xml file to:
and then I replaced the servicemix-cxf-bc in my hotdeploy directory with servicemix-cxf-bc-2010.01.0-fuse-01-00-installer.zip
In my logger file I can see the exchange property set as:
Properties:{org.apache.servicemix.http.destination.uri=http://dynamic-url/eSOMSServices/service.asmx}...notice the host name... Then when I call the endpoint using camel, I see:
2010-04-16 12:51:32:568 GMT-0400, INFO , pool-flow.seda.servicemix-cxf-bc-thread-2, org.apache.cxf.interceptor.LoggingOutInterceptor - Outbound Message
-
ID: 2
Address: http://atliss-e2/eSOMSServices/service.asmx
Encoding: UTF-8
Content-Type: application/soap+xml
Headers: {Accept=[/]}
Payload: <soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope"><soap:Body><esom:SOIInboundRequest xmlns:esom="http://www.TechAssist.com/eSOMSService/">
<esom:inboundXML> .....
notice the address has not changed.
Thanks for any help
-Gary
-
5. Re: Multiple locationURIs/service names using a single cxfbc:provider SU?
ffang Apr 16, 2010 8:59 PM (in response to gmotts_gary.motts)Hi,
Only 2009.01.0.5-fuse have this fix.
You need put smx-cxf-bc-2009.01.0.5-fuse and smx-sharedlib 2009.01.0.5-fuse to your hotdeploy and remove the old smx-cxf-bc-2009.01.0.4-fuse and smx-sharedlib 2009.01.0.4-fuse, also you need remove $SMX_HOME/data folder before your test.
Freeman
-
6. Re: Multiple locationURIs/service names using a single cxfbc:provider SU?
gmotts_gary.motts Apr 19, 2010 11:35 AM (in response to ffang)Hi Freeman,
Thank you very much! I made the configuration changes you had suggested and re-tested and have verified the locationURI specified in my Xbean.xml can now be changed dynamically.
-Gary
-
7. Re: Multiple locationURIs/service names using a single cxfbc:provider SU?
fsalceda May 4, 2010 10:22 AM (in response to gmotts_gary.motts)I have the same problem with my cxf-provider verion"2010.01.0-fuse-01-00. When I redeploy my router with updated routes the provider ignores them and keep the old ones.
Are you considering to fix this bug in a future version of this component?
Regards.
-
8. Re: Multiple locationURIs/service names using a single cxfbc:provider SU?
ffang May 4, 2010 9:47 PM (in response to fsalceda)Hi,
As I mentioned, this already get fixed and will be picked up for next release.
Freeman
-
9. Re: Multiple locationURIs/service names using a single cxfbc:provider SU?
fsalceda May 5, 2010 5:17 AM (in response to ffang)Ok.
How can I change the features version in fuse 4.2. Until now I did a features:uninstall of all servicemix-components (shared, cxf, bean...) but Im looking for the way to install an older version of them such as those you mentioned.
Thx.