Hi,

My comment inline.
On 2011-8-10, at 下午6:59, Naira & Kobo wrote:

Hi all,

I am trying to migrate a csf service from SMX 4.3 to 4.4 and when I deployed
in the new SMX 4.4.0-fuse-00-43, it throws the following exception:


11:50:48,442 | ContextLoaderListener            | 85 -
org.springframework.osgi.extender - 1.2.1 | Application context refresh failed (OsgiBundleXmlApplicationContext(bundle=generic-soap-consumer- bridge,
config=osgibundle:/META-INF/spring/*.xml))
java.lang.NoClassDefFoundError: javax.xml.namespace.QName not found from
bundle [generic-soap-consumer-bridge]

Firstly you need check if your generic-soap-consumer-bridge customer bundle already import package javax.xml.namespace. FUSE ESB 4.3 by default use equinox which don't strictly require it but FUSE ESB 4.4 by default use felix which need import all package which isn't start with "java."(Per OSGi spec)
        at $Proxy94.<clinit>(Unknown Source)
        at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native
Method)[:1.6.0_25-ea]
        at
sun .reflect .NativeConstructorAccessorImpl .newInstance(NativeConstructorAccessorImpl.java:39)[:1.6.0_25-ea]
        at
sun .reflect .DelegatingConstructorAccessorImpl .newInstance(DelegatingConstructorAccessorImpl.java:27)[:1.6.0_25-ea]
        at
java.lang.reflect.Constructor.newInstance(Constructor.java:513)[: 1.6.0_25-ea] at java.lang.reflect.Proxy.newProxyInstance(Proxy.java:588)[: 1.6.0_25-ea]
        at
org .apache.cxf.tools.util.SOAPBindingUtil.getProxy(SOAPBindingUtil.java: 89)
        at
org .apache .cxf.tools.util.SOAPBindingUtil.getSoapBinding(SOAPBindingUtil.java: 286)
        at
org .apache .cxf.tools.util.SOAPBindingUtil.getSoapBinding(SOAPBindingUtil.java: 278)
        at
org .apache .cxf .binding .soap.SoapBindingFactory.createBindingInfo(SoapBindingFactory.java: 627)
        at
org .apache .cxf.wsdl11.WSDLServiceBuilder.buildBinding(WSDLServiceBuilder.java: 487)
        at
org .apache .cxf.wsdl11.WSDLServiceBuilder.buildServices(WSDLServiceBuilder.java: 349)
        at
org .apache .cxf.wsdl11.WSDLServiceBuilder.buildServices(WSDLServiceBuilder.java: 198)
        at
org .apache.cxf.wsdl11.WSDLServiceFactory.create(WSDLServiceFactory.java: 142)
        at
org .apache .cxf .service .factory .ReflectionServiceFactoryBean .buildServiceFromWSDL(ReflectionServiceFactoryBean.java:382)
        at
org .apache .cxf .service .factory .ReflectionServiceFactoryBean .initializeServiceModel(ReflectionServiceFactoryBean.java:499)
        at
org .apache .cxf .service .factory .ReflectionServiceFactoryBean .create(ReflectionServiceFactoryBean.java:241)
        at
org .apache .cxf .frontend .AbstractWSDLBasedEndpointFactory .createEndpoint(AbstractWSDLBasedEndpointFactory.java:101)
        at
org .apache.cxf.frontend.ServerFactoryBean.create(ServerFactoryBean.java: 157) at org.apache.camel.component.cxf.CxfConsumer.<init>(CxfConsumer.java: 249)
        at
org .apache .camel.component.cxf.CxfEndpoint.createConsumer(CxfEndpoint.java:130)
        at
org .apache .camel .impl .EventDrivenConsumerRoute.addServices(EventDrivenConsumerRoute.java: 61)
        at
org .apache.camel.impl.DefaultRoute.onStartingServices(DefaultRoute.java: 75)
        at org.apache.camel.impl.RouteService.warmUp(RouteService.java:128)
        at
org .apache .camel .impl.DefaultCamelContext.doWarmUpRoutes(DefaultCamelContext.java: 1839)
        at
org .apache .camel .impl .DefaultCamelContext .safelyStartRouteServices(DefaultCamelContext.java:1765)
        at
org .apache .camel .impl .DefaultCamelContext.doStartOrResumeRoutes(DefaultCamelContext.java: 1555)
        at
org .apache .camel .impl.DefaultCamelContext.doStartCamel(DefaultCamelContext.java:1447)
        at
org .apache .camel.impl.DefaultCamelContext.doStart(DefaultCamelContext.java:1338)
        at
org .apache .camel.spring.SpringCamelContext.doStart(SpringCamelContext.java:164)
        at org.apache.camel.impl.ServiceSupport.start(ServiceSupport.java:67)
        at org.apache.camel.impl.ServiceSupport.start(ServiceSupport.java:54)
        at
org .apache .camel.impl.DefaultCamelContext.start(DefaultCamelContext.java:1316)
        at
org .apache .camel.spring.SpringCamelContext.maybeStart(SpringCamelContext.java: 203)
        at
org .apache .camel .spring .SpringCamelContext.onApplicationEvent(SpringCamelContext.java:101)
        at
org .apache .camel .spring .CamelContextFactoryBean .onApplicationEvent(CamelContextFactoryBean.java:238)
        at
org .springframework .context .event .SimpleApplicationEventMulticaster .multicastEvent(SimpleApplicationEventMulticaster.java:97) [70:org.springframework.context:3.0.5.RELEASE]
        at
org .springframework .context .support .AbstractApplicationContext .publishEvent(AbstractApplicationContext.java:303) [70:org.springframework.context:3.0.5.RELEASE]
        at
org .springframework .context .support .AbstractApplicationContext .finishRefresh(AbstractApplicationContext.java:911) [70:org.springframework.context:3.0.5.RELEASE]
        at
org .springframework .osgi .context .support .AbstractOsgiBundleApplicationContext .finishRefresh(AbstractOsgiBundleApplicationContext.java:235) [82:org.springframework.osgi.core:1.2.1]
        at
org .springframework .osgi.context.support.AbstractDelegatedExecutionApplicationContext $4.run(AbstractDelegatedExecutionApplicationContext.java:358) [82:org.springframework.osgi.core:1.2.1]
        at
org .springframework .osgi .util .internal.PrivilegedUtils.executeWithCustomTCCL(PrivilegedUtils.java: 85)[82:org.springframework.osgi.core:1.2.1]
        at
org .springframework .osgi .context .support .AbstractDelegatedExecutionApplicationContext .completeRefresh(AbstractDelegatedExecutionApplicationContext.java: 320)[82:org.springframework.osgi.core:1.2.1]
        at
org .springframework .osgi .extender .internal .dependencies.startup.DependencyWaiterApplicationContextExecutor $ CompleteRefreshTask .run(DependencyWaiterApplicationContextExecutor.java:132) [85:org.springframework.osgi.extender:1.2.1]
        at java.lang.Thread.run(Thread.java:662)[:1.6.0_25-ea]




See the context.xml file:


<?xml version="1.0" encoding="UTF-8"?>

<beans xmlns="http://www.springframework.org/schema/beans";
      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
      xmlns:osgi="http://camel.apache.org/schema/osgi";
xmlns:osgix="http://www.springframework.org/schema/osgi-compendium "
      xmlns:cxf="http://camel.apache.org/schema/cxf";
      xmlns:jaxrs="http://cxf.apache.org/jaxrs";
       xmlns:isw="http://techquest.interswitchng.com/services";
       xmlns:beans="http://www.springframework.org/schema/beans";
      xsi:schemaLocation="
      http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-2.0.xsd
      http://camel.apache.org/schema/spring
http://camel.apache.org/schema/spring/camel-spring.xsd
      http://camel.apache.org/schema/osgi
http://camel.apache.org/schema/osgi/camel-osgi.xsd
      http://www.springframework.org/schema/osgi-compendium
http://www.springframework.org/schema/osgi-compendium/spring-osgi-compendium.xsd
      http://www.springframework.org/schema/osgi
http://www.springframework.org/schema/osgi/spring-osgi.xsd
      http://cxf.apache.org/jaxws http://cxf.apache.org/schemas/jaxws.xsd
      http://camel.apache.org/schema/cxf
http://camel.apache.org/schema/cxf/camel-cxf.xsd
      http://cxf.apache.org/jaxrs http://cxf.apache.org/schemas/jaxrs.xsd
      http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context.xsd
http://cxf.apache.org/core http://cxf.apache.org/schemas/ core.xsd
      http://servicemix.apache.org/cxfbc/1.0
http://servicemix.apache.org/cxfbc/1.0/servicemix-cxf-bc.xsd
      http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-2.0.xsd";>

        <import resource="classpath:META-INF/cxf/cxf.xml"/>
        <import resource="classpath:META-INF/cxf/cxf-extension-soap.xml" />
        <import resource="classpath:META-INF/cxf/cxf-extension-http.xml" />
<import resource="classpath:META-INF/cxf/cxf-extension-jaxrs- binding.xml"
/>
<import resource="classpath:META-INF/cxf/osgi/cxf-extension- osgi.xml" /> <import resource="classpath:META-INF/cxf/cxf-extension-http- jetty.xml"/>
Also FUSE ESB 4.4 use cxf 2.4 underlying so you don't need import those cxf-extension-*.xml except the cxf-extension-osgi.xml if you need use http-osgi transport.

Freeman
        

 <cxf:cxfEndpoint id="ServiceEndpoint"
address="${generic-soap-request-url}"
                wsdlURL="${karaf.home}/data/conf/wsdl/Services.wsdl"
                endpointName="s:EnrollmentServicesSoap12Endpoint"
                serviceName="s:Services"
        xmlns:s="http://temp.org/"; >
        
                 <cxf:properties>
               <entry key="dataFormat" value="MESSAGE"/>
         </cxf:properties>
    </cxf:cxfEndpoint>

    <bean id="deadLetter"
class="org.apache.camel.builder.DeadLetterChannelBuilder">
            <property name="deadLetterUri" value="direct:errorHandler"/>
        </bean>
        
 <osgi:camelContext xmlns="http://camel.apache.org/schema/spring";
trace="true">
        <route>
        <from uri="cxf:bean:ServiceEndpoint" />
...........


--
View this message in context: 
http://camel.465427.n5.nabble.com/NoClassDefFoundError-javax-xml-namespace-QName-CXF-SOAP-Consumer-tp4685413p4685413.html
Sent from the Camel - Users mailing list archive at Nabble.com.

---------------------------------------------
Freeman Fang

FuseSource
Email:[email protected]
Web: fusesource.com
Twitter: freemanfang
Blog: http://freemanfang.blogspot.com









Reply via email to