cxf-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Freeman Fang <freeman.f...@gmail.com>
Subject Re: feature cxf-specs installation do not install all bundles in SMX 4.5.0
Date Mon, 15 Oct 2012 01:03:31 GMT
Hi Christian,

First of all, for the SMX distribution, you shouldn't copy jre.properties.cxf to jre.properties,
you should just use default jre.properties as is, it's fine-tuned for the SMX distribution,
with the default jre.properties, all should be OK. And yeah, we should remove jre.properties.cxf
from SMX distribution as it just cause confusion, create SMX4-1262[1] to track it.

Secondly, the dependency="true" for the spec api bundle is intended here, it works with fetuture
attribute resolver='(obr)' which can prevent to install unnecessary bundle if the package
already available in the container. For the SMX 4.5(SNAPSHOT), we endorse jaxws/saaj/jaxb(etc)
spec api jars so those package already exported from system bundle 0,  have  dependency="true"
can prevent install those unnecessary spec api bundles.

[1]https://issues.apache.org/jira/browse/SMX4-1262

Freeman
-------------
Freeman(Yue) Fang

Red Hat, Inc. 
FuseSource is now part of Red Hat
Web: http://fusesource.com | http://www.redhat.com/
Twitter: freemanfang
Blog: http://freemanfang.blogspot.com
http://blog.sina.com.cn/u/1473905042
weibo: http://weibo.com/u/1473905042

On 2012-10-14, at 下午11:19, Christian Müller wrote:

> I have the same issue, if I add the CXF "wss4j" feature to the features
> boot path and start SMX (./servicemix clean). The feature is defined as:
> 
>    <feature name="wss4j" version="1.6.7" resolver='(obr)'>
>        <feature version="2.6.2">cxf-specs</feature>
>        <bundle start-level='25'
> dependency="true">mvn:joda-time/joda-time/1.6.2</bundle>
>        <bundle start-level='25'
> dependency="true">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.opensaml/2.5.1_2</bundle>
>        <bundle start-level='25'
> dependency="true">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.saaj-impl/1.3.18_1</bundle>
>        <bundle
> start-level='25'>mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.xmlresolver/1.2_5</bundle>
>        <bundle start-level='30'
> dependency="true">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.xerces/2.9.1_5</bundle>
>        <bundle start-level='30'
> dependency="true">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.bcel/5.2_4</bundle>
>        <bundle start-level='30'
> dependency="true">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.xalan/2.7.1_5</bundle>
>        <bundle start-level='30'
> dependency="true">mvn:org.apache.santuario/xmlsec/1.5.2</bundle>
>        <bundle
> start-level='30'>mvn:org.apache.ws.security/wss4j/1.6.7</bundle>
>    </feature>
> 
> karaf@root> features:list | grep -i wss4j
> [installed  ] [1.6.7           ] wss4j
> cxf-2.6.2
> 
> karaf@root> list -t 0 | grep -i xerces
> karaf@root> list -t 0 | grep -i xalan
> karaf@root> list -t 0 | grep -i saaj
> [  54] [Active     ] [            ] [       ] [   10] Apache ServiceMix ::
> Specs :: SAAJ API 1.3 (1.9.0)
> 
> I miss saaj-impl...
> 
> Now, when I deploy my service [1] which use wss4j, it fails with the stack
> trace:
> 17:16:24,976 | DEBUG | vice/SecureProxy | PhaseInterceptorChain
> | 115 - org.apache.cxf.cxf-api - 2.6.2 | Invoking handleMessage on
> interceptor org.apache.cxf.ws.policy.PolicyInInterceptor@79b9950e
> 17:16:24,979 | DEBUG | vice/SecureProxy | PhaseInterceptorChain
> | 115 - org.apache.cxf.cxf-api - 2.6.2 | Invoking handleMessage on
> interceptor org.apache.cxf.interceptor.AttachmentInInterceptor@70e98812
> 17:16:24,982 | DEBUG | vice/SecureProxy | PhaseInterceptorChain
> | 115 - org.apache.cxf.cxf-api - 2.6.2 | Invoking handleMessage on
> interceptor org.apache.cxf.transport.https.CertConstraintsInterceptor@cc6798
> 17:16:24,982 | DEBUG | vice/SecureProxy | PhaseInterceptorChain
> | 115 - org.apache.cxf.cxf-api - 2.6.2 | Invoking handleMessage on
> interceptor org.apache.cxf.interceptor.StaxInInterceptor@73e48fa7
> 17:16:24,984 | DEBUG | vice/SecureProxy | PhaseInterceptorChain
> | 115 - org.apache.cxf.cxf-api - 2.6.2 | Invoking handleMessage on
> interceptor
> org.apache.cxf.binding.soap.saaj.SAAJInInterceptor$SAAJPreInInterceptor@42e57c4c
> 17:16:29,991 | DEBUG | vice/SecureProxy | PhaseInterceptorChain
> | 115 - org.apache.cxf.cxf-api - 2.6.2 | Invoking handleFault on
> interceptor
> org.apache.cxf.binding.soap.saaj.SAAJInInterceptor$SAAJPreInInterceptor@42e57c4c
> 17:16:29,992 | DEBUG | vice/SecureProxy | PhaseInterceptorChain
> | 115 - org.apache.cxf.cxf-api - 2.6.2 | Invoking handleFault on
> interceptor org.apache.cxf.interceptor.StaxInInterceptor@73e48fa7
> 17:16:29,992 | DEBUG | vice/SecureProxy | PhaseInterceptorChain
> | 115 - org.apache.cxf.cxf-api - 2.6.2 | Invoking handleFault on
> interceptor org.apache.cxf.transport.https.CertConstraintsInterceptor@cc6798
> 17:16:29,992 | DEBUG | vice/SecureProxy | PhaseInterceptorChain
> | 115 - org.apache.cxf.cxf-api - 2.6.2 | Invoking handleFault on
> interceptor org.apache.cxf.interceptor.AttachmentInInterceptor@70e98812
> 17:16:29,992 | DEBUG | vice/SecureProxy | PhaseInterceptorChain
> | 115 - org.apache.cxf.cxf-api - 2.6.2 | Invoking handleFault on
> interceptor org.apache.cxf.ws.policy.PolicyInInterceptor@79b9950e
> 17:16:29,993 | WARN  | vice/SecureProxy | PhaseInterceptorChain
> | 115 - org.apache.cxf.cxf-api - 2.6.2 | Interceptor for {
> http://services.samples/xsd}SecureProxy has thrown exception, unwinding now
> org.apache.cxf.binding.soap.SoapFault: Error reading XMLStreamReader.
>        at
> org.apache.cxf.binding.soap.saaj.SAAJInInterceptor$SAAJPreInInterceptor.handleMessage(SAAJInInterceptor.java:139)[121:org.apache.cxf.cxf-rt-bindings-soap:2.6.2]
>        at
> org.apache.cxf.binding.soap.saaj.SAAJInInterceptor$SAAJPreInInterceptor.handleMessage(SAAJInInterceptor.java:101)[121:org.apache.cxf.cxf-rt-bindings-soap:2.6.2]
>        at
> org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:262)[115:org.apache.cxf.cxf-api:2.6.2]
>        at
> org.apache.cxf.transport.ChainInitiationObserver.onMessage(ChainInitiationObserver.java:121)[115:org.apache.cxf.cxf-api:2.6.2]
>        at
> org.apache.cxf.transport.http.AbstractHTTPDestination.invoke(AbstractHTTPDestination.java:211)[122:org.apache.cxf.cxf-rt-transports-http:2.6.2]
>        at
> org.apache.cxf.transport.servlet.ServletController.invokeDestination(ServletController.java:213)[122:org.apache.cxf.cxf-rt-transports-http:2.6.2]
>        at
> org.apache.cxf.transport.servlet.ServletController.invoke(ServletController.java:193)[122:org.apache.cxf.cxf-rt-transports-http:2.6.2]
>        at
> org.apache.cxf.transport.servlet.CXFNonSpringServlet.invoke(CXFNonSpringServlet.java:130)[122:org.apache.cxf.cxf-rt-transports-http:2.6.2]
>        at
> org.apache.cxf.transport.servlet.AbstractHTTPServlet.handleRequest(AbstractHTTPServlet.java:221)[122:org.apache.cxf.cxf-rt-transports-http:2.6.2]
>        at
> org.apache.cxf.transport.servlet.AbstractHTTPServlet.doPost(AbstractHTTPServlet.java:141)[122:org.apache.cxf.cxf-rt-transports-http:2.6.2]
>        at
> javax.servlet.http.HttpServlet.service(HttpServlet.java:713)[80:org.apache.geronimo.specs.geronimo-servlet_2.5_spec:1.1.2]
>        at
> org.apache.cxf.transport.servlet.AbstractHTTPServlet.service(AbstractHTTPServlet.java:197)[122:org.apache.cxf.cxf-rt-transports-http:2.6.2]
>        at
> org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:547)[69:org.eclipse.jetty.servlet:7.5.4.v20111024]
>        at
> org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:480)[69:org.eclipse.jetty.servlet:7.5.4.v20111024]
>        at
> org.ops4j.pax.web.service.jetty.internal.HttpServiceServletHandler.doHandle(HttpServiceServletHandler.java:70)[85:org.ops4j.pax.web.pax-web-jetty:1.0.11]
>        at
> org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:119)[71:org.eclipse.jetty.server:7.5.4.v20111024]
>        at
> org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:520)[68:org.eclipse.jetty.security:7.5.4.v20111024]
>        at
> org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:227)[71:org.eclipse.jetty.server:7.5.4.v20111024]
>        at
> org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:941)[71:org.eclipse.jetty.server:7.5.4.v20111024]
>        at
> org.ops4j.pax.web.service.jetty.internal.HttpServiceContext.doHandle(HttpServiceContext.java:117)[85:org.ops4j.pax.web.pax-web-jetty:1.0.11]
>        at
> org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:409)[69:org.eclipse.jetty.servlet:7.5.4.v20111024]
>        at
> org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:186)[71:org.eclipse.jetty.server:7.5.4.v20111024]
>        at
> org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:875)[71:org.eclipse.jetty.server:7.5.4.v20111024]
>        at
> org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:117)[71:org.eclipse.jetty.server:7.5.4.v20111024]
>        at
> org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.java:149)[71:org.eclipse.jetty.server:7.5.4.v20111024]
>        at
> org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:110)[71:org.eclipse.jetty.server:7.5.4.v20111024]
>        at
> org.eclipse.jetty.server.Server.handle(Server.java:345)[71:org.eclipse.jetty.server:7.5.4.v20111024]
>        at
> org.eclipse.jetty.server.HttpConnection.handleRequest(HttpConnection.java:441)[71:org.eclipse.jetty.server:7.5.4.v20111024]
>        at
> org.eclipse.jetty.server.HttpConnection$RequestHandler.content(HttpConnection.java:936)[71:org.eclipse.jetty.server:7.5.4.v20111024]
>        at
> org.eclipse.jetty.http.HttpParser.parseNext(HttpParser.java:801)[72:org.eclipse.jetty.http:7.5.4.v20111024]
>        at
> org.eclipse.jetty.http.HttpParser.parseAvailable(HttpParser.java:224)[72:org.eclipse.jetty.http:7.5.4.v20111024]
>        at
> org.eclipse.jetty.server.AsyncHttpConnection.handle(AsyncHttpConnection.java:51)[71:org.eclipse.jetty.server:7.5.4.v20111024]
>        at
> org.eclipse.jetty.io.nio.SelectChannelEndPoint.handle(SelectChannelEndPoint.java:586)[67:org.eclipse.jetty.io:7
> .5.4.v20111024]
>        at
> org.eclipse.jetty.io.nio.SelectChannelEndPoint$1.run(SelectChannelEndPoint.java:44)[67:org.eclipse.jetty.io:7
> .5.4.v20111024]
>        at
> org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:598)[75:org.eclipse.jetty.util:7.5.4.v20111024]
>        at
> org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:533)[75:org.eclipse.jetty.util:7.5.4.v20111024]
>        at java.lang.Thread.run(Thread.java:680)[:1.6.0_35]
> Caused by: javax.xml.soap.SOAPException: Unable to create message factory
> for SOAP: Provider org.apache.axis2.saaj.MessageFactoryImpl not found
>        at
> javax.xml.soap.MessageFactory.newInstance(MessageFactory.java:89)[54:org.apache.servicemix.specs.saaj-api-1.3:1.9.0]
>        at
> org.apache.cxf.binding.soap.saaj.SAAJFactoryResolver.createMessageFactory(SAAJFactoryResolver.java:56)[121:org.apache.cxf.cxf-rt-bindings-soap:2.6.2]
>        at
> org.apache.cxf.binding.soap.saaj.SAAJInInterceptor$SAAJPreInInterceptor.getFactory(SAAJInInterceptor.java:145)[121:org.apache.cxf.cxf-rt-bindings-soap:2.6.2]
>        at
> org.apache.cxf.binding.soap.saaj.SAAJInInterceptor$SAAJPreInInterceptor.handleMessage(SAAJInInterceptor.java:127)[121:org.apache.cxf.cxf-rt-bindings-soap:2.6.2]
>        ... 36 more
> 
> 
> When I remove the 'dependency="true"' statements from this feature, the
> "wss4j" feature and all bundles are installed as expected and I can deploy
> my service without this issue.
> 
> Is there a documentation what 'dependency="true"' means?
> 
> [1]
> https://github.com/muellerc/esbperformance/tree/master/servicemix-osgi/secure-proxy
> 
> Best,
> Christian


Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message