Hi,
it seems this issue still happens, at least on Tomcat and at least on the
smx3 trunk (gave a try also on the 3.2 branch with no success either).
The CXF thing continues to start before the replaceDestinationFactory method
takes place thus resulting into a :
javax.jbi.management.DeploymentException: java.net.MalformedURLException: no
protocol: /MyRequest
at
org.apache.servicemix.cxfbc.CxfBcConsumer.validate(CxfBcConsumer.java:504)
at
org.apache.servicemix.common.AbstractDeployer.validate(AbstractDeployer.java:58)
at
org.apache.servicemix.common.xbean.BaseXBeanDeployer.validate(BaseXBeanDeployer.java:55)
at
org.apache.servicemix.common.xbean.AbstractXBeanDeployer.deploy(AbstractXBeanDeployer.java:97)
at
org.apache.servicemix.common.BaseServiceUnitManager.doDeploy(BaseServiceUnitManager.java:88)
at
org.apache.servicemix.common.BaseServiceUnitManager.init(BaseServiceUnitManager.java:109)
at
org.apache.servicemix.jbi.framework.ServiceUnitLifeCycle.init(ServiceUnitLifeCycle.java:85)
Before this, I see lots of messages related to the startup of the CXF bus.
Maybe there would be a possiblity to force CXF to call the
org.apache.cxf.transport.servlet.AbstractCXFServlet.replaceDestinationFactory
before the CXF jbi component gets started ?
Any idea on this ?
On Thu, Mar 5, 2009 at 3:57 AM, Freeman Fang <[email protected]> wrote:
> Hi,
>
> This already get resolved, [1] tracked this issue
>
> [1]https://issues.apache.org/activemq/browse/SM-1756
> Freeman
>
>
> Kirk Spencer wrote:
>
>> Freeman wrote:
>>
>>
>>
>>> The problem you see comes from that after you install cxf bc component
>>> >and SA, then restart the tomcat, the context listener(which load
>>> >servicemix container and then start the intalled cxf bc and sa) always >run
>>> before the CXFServlet(which replace the servlet transport), so that >the cxf
>>> bc has no chance to use the bus with replaced servlet transport.>If you run
>>> tomcat with clean servicemix (remove data and servicemixDB >folder in
>>> $TOMCAT_HOME/bin, but add CXFServlet in web.xml), then install >sharedLib,
>>> CXF component and your SA, then it works(because in this case >the
>>> CXFServlet get initialized first).>I will figure out how to resolve the case
>>> when you restart tomcat.
>>> Freeman
>>>
>>>
>>
>> Did you figure out a way to resolve the case when the tomcat instance is
>> restarted?
>>
>>
>>
>>
>
>