geronimo-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Jarek Gawor" <jga...@gmail.com>
Subject Re: Re: Re: Antwort: Re: Change Version of Apache CXF for Geronimo
Date Mon, 11 Aug 2008 14:02:34 GMT
Why is the "javax.xml.namespace" package listed in the hidden-classes
element? That's provided by the JVM. See if removing this filter
helps.

Jarek

On Mon, Aug 11, 2008 at 5:22 AM,  <Josef.Eisele@bgs-ag.de> wrote:
>
> Hi Jarek,
>
> I deployed using "Console - Install New Applications". I received the
> message:
> The application was successfully deployed.
> The application was successfully started
>
> -> But application didn't start. Log:
> 11:11:02,005 INFO  [JAXWSServiceBuilder] Configuring EJB JAX-WS Web Service:
> MyWSImpl at /MyService/MyWS
> 11:11:04,547 ERROR [GBeanInstanceState] Error while starting; GBean is now
> in the FAILED state:
> abstractName="myapp/app/1.0/ear?configurationName=myapp/app/1.0/ear"
> org.apache.geronimo.kernel.config.InvalidConfigException: Class not loadable
> in classloader: [org.apache.geronimo.kernel.config.MultiParentClassLoader
> id=myapp/app/1.0/ear]
>         at
> org.apache.geronimo.kernel.config.SerializedGBeanState.loadGBeans(SerializedGBeanState.java:120)
>         at
> org.apache.geronimo.kernel.config.SerializedGBeanState.getGBeans(SerializedGBeanState.java:65)
>         at
> org.apache.geronimo.kernel.config.ConfigurationData.getGBeans(ConfigurationData.java:172)
>         at
> org.apache.geronimo.kernel.config.Configuration.<init>(Configuration.java:278)
>         at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native
> Method)
>         at
> sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
>         at
> sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
>         at java.lang.reflect.Constructor.newInstance(Constructor.java:494)
>         at
> org.apache.geronimo.gbean.runtime.GBeanInstance.createInstance(GBeanInstance.java:948)
>         at
> org.apache.geronimo.gbean.runtime.GBeanInstanceState.attemptFullStart(GBeanInstanceState.java:268)
>         at
> org.apache.geronimo.gbean.runtime.GBeanInstanceState.start(GBeanInstanceState.java:102)
>         at
> org.apache.geronimo.gbean.runtime.GBeanInstance.start(GBeanInstance.java:541)
>         at
> org.apache.geronimo.kernel.basic.BasicKernel.startGBean(BasicKernel.java:361)
>         at
> org.apache.geronimo.kernel.config.KernelConfigurationManager.load(KernelConfigurationManager.java:161)
>         at
> org.apache.geronimo.kernel.config.SimpleConfigurationManager.loadConfiguration(SimpleConfigurationManager.java:312)
>         at
> org.apache.geronimo.kernel.config.SimpleConfigurationManager.loadConfiguration(SimpleConfigurationManager.java:280)
>         at
> org.apache.geronimo.kernel.config.SimpleConfigurationManager.loadConfiguration(SimpleConfigurationManager.java:255)
>         at
> org.apache.geronimo.kernel.config.KernelConfigurationManager.loadConfiguration(KernelConfigurationManager.java:112)
>         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>         at
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
>         at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>         at java.lang.reflect.Method.invoke(Method.java:585)
>         at
> org.apache.geronimo.gbean.runtime.ReflectionMethodInvoker.invoke(ReflectionMethodInvoker.java:34)
>         at
> org.apache.geronimo.gbean.runtime.GBeanOperation.invoke(GBeanOperation.java:124)
>         at
> org.apache.geronimo.gbean.runtime.GBeanInstance.invoke(GBeanInstance.java:832)
>         at
> org.apache.geronimo.gbean.runtime.RawInvoker.invoke(RawInvoker.java:57)
>         at
> org.apache.geronimo.kernel.basic.RawOperationInvoker.invoke(RawOperationInvoker.java:35)
>         at
> org.apache.geronimo.kernel.basic.ProxyMethodInterceptor.intercept(ProxyMethodInterceptor.java:96)
>         at
> org.apache.geronimo.kernel.config.EditableConfigurationManager$$EnhancerByCGLIB$$8a472d7f.loadConfiguration(<generated>)
>         at
> org.apache.geronimo.deployment.plugin.local.StartCommand.run(StartCommand.java:63)
>         at java.lang.Thread.run(Thread.java:595)
> Caused by: java.lang.ClassNotFoundException: Unable to find class used in
> GBeanData
> myapp/app/1.0/ear?J2EEApplication=myapp/app/1.0/ear,j2eeType=EJBModule,name=appEJB.jar
>         at
> org.apache.geronimo.gbean.GBeanData$V0Externalizable.readExternal(GBeanData.java:324)
>         at
> org.apache.geronimo.gbean.GBeanData.readExternal(GBeanData.java:247)
>         at
> org.apache.geronimo.kernel.config.SerializedGBeanState.loadGBeans(SerializedGBeanState.java:111)
>         ... 30 more
> Caused by: java.lang.ClassNotFoundException: Unable to find class used in
> GBeanData
> myapp/app/1.0/ear?J2EEApplication=myapp/app/1.0/ear,j2eeType=EJBModule,name=appEJB.jar,
> attribute: ejbJarInfo
>         at
> org.apache.geronimo.gbean.GBeanData$V0Externalizable.readExternal(GBeanData.java:293)
>         ... 32 more
> Caused by: java.lang.ClassNotFoundException: Could not load class
> javax.xml.namespace.QName from classloader: myapp/app/1.0/ear, destroyed
> state: false
>         at
> org.apache.geronimo.kernel.ClassLoading.loadClass(ClassLoading.java:213)
>         at
> org.apache.geronimo.kernel.ObjectInputStreamExt.resolveClass(ObjectInputStreamExt.java:38)
>         at
> java.io.ObjectInputStream.readNonProxyDesc(ObjectInputStream.java:1544)
>         at
> java.io.ObjectInputStream.readClassDesc(ObjectInputStream.java:1466)
>         at
> java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1699)
>         at
> java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1305)
>         at
> java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1908)
>         at
> java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1832)
>         at
> java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1719)
>         at
> java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1305)
>         at java.io.ObjectInputStream.readObject(ObjectInputStream.java:348)
>         at java.util.ArrayList.readObject(ArrayList.java:591)
>         at sun.reflect.GeneratedMethodAccessor161.invoke(Unknown Source)
>         at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>         at java.lang.reflect.Method.invoke(Method.java:585)
>         at
> java.io.ObjectStreamClass.invokeReadObject(ObjectStreamClass.java:946)
>         at
> java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1809)
>         at
> java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1719)
>         at
> java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1305)
>         at
> java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1908)
>         at
> java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1832)
>         at
> java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1719)
>         at
> java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1305)
>         at java.io.ObjectInputStream.readObject(ObjectInputStream.java:348)
>         at
> org.apache.geronimo.gbean.GBeanData$V0Externalizable.readExternal(GBeanData.java:291)
>         ... 32 more
>
> geronimo-application.xml:
> <?xml version="1.0" encoding="UTF-8"?>
> <application application-name="app"
> xmlns="http://geronimo.apache.org/xml/ns/j2ee/application-2.0"
> xmlns:sec="http://geronimo.apache.org/xml/ns/security-2.0"
> xmlns:sys="http://geronimo.apache.org/xml/ns/deployment-1.2">
>     <sys:environment>
>         <sys:moduleId>
>             <sys:groupId>my-app</sys:groupId>
>             <sys:artifactId>app</sys:artifactId>
>             <sys:version>1.0</sys:version>
>             <sys:type>ear</sys:type>
>         </sys:moduleId>
>         <sys:dependencies>
>             <sys:dependency>
>                 <sys:groupId>console.dbpool</sys:groupId>
>                 <sys:artifactId>Postgres.postgres.app</sys:artifactId>
>                 <sys:version>1.0</sys:version>
>                 <sys:type>rar</sys:type>
>             </sys:dependency>
>         </sys:dependencies>
>         <sys:hidden-classes>
>             <sys:filter>org.apache.axis2</sys:filter>
>             <sys:filter>javax.xml.bind</sys:filter>
>             <sys:filter>javax.xml.namespace</sys:filter>
>         </sys:hidden-classes>
>     </sys:environment>
> </application>
>
> Thanx in advance for your help.
>
> -Josef
>
>
>
>
> "Jarek Gawor" <jgawor@gmail.com>
>
> 07.08.2008 19:25
>
> Bitte antworten an
> user@geronimo.apache.org
> An
> user@geronimo.apache.org
> Kopie
> Thema
> Re: Re: Antwort: Re: Change Version of Apache CXF for Geronimo
>
>
>
>
> First, you don't need to add xml-apis-1.3.02.jar since the QName class
> is provided by the JVM now (since 1.5). Can you attach the full stack
> trace of the exception you see (when xml-apis-1.3.02.jar is not
> included)? And can you also attach the Geronimo deployment descriptor
> you are using?
>
> Jarek
>
> On Thu, Aug 7, 2008 at 3:39 AM,  <Josef.Eisele@bgs-ag.de> wrote:
>>
>> Hi all,
>>
>> this is an issue on the new version 2.1.2 using Webservices. Our
>> application
>> works (without WS-Security) under G 2.1.1, but under G 2.1.2 I can't even
>> deploy.
>>
>> -Josef
>>
>>
>>
>>
>> Daniel Kulp <dkulp@apache.org>
>>
>> 06.08.2008 19:34
>>
>> An
>> users@cxf.apache.org
>> Kopie
>> Josef.Eisele@bgs-ag.de
>> Thema
>> Re: Antwort: Re: Change Version of Apache CXF for Geronimo
>>
>>
>>
>>
>>
>> That's something you may need to ask on the geronimo list.   I'm not
>> familliar
>> with all the classloading details there.
>>
>> Dan
>>
>>
>> On Wednesday 06 August 2008 3:57:59 am Josef.Eisele@bgs-ag.de wrote:
>>> Hi Dan,
>>>
>>> cool, this is the newest Version of Apache CXF :-)
>>>
>>> So I took my EAR added the new libs (not contained in Geronimo 2.1.2,
>>> why?)
>>>        cxf-rt-ws-security-2.0.8.jar
>>>        wss4j-1.5.4.jar
>>> and tried to deploy to the new Geronimo:
>>>
>>> ...
>>> 09:25:28,770 ERROR [GBeanInstanceState] Error while starting; GBean is
>>> now
>>> in the FAILED state:
>>> abstractName="myapp/app/1.0/ear?configurationName=myapp/app/1.0/ear"
>>> org.apache.geronimo.kernel.config.InvalidConfigException: Class not
>>> loadable in classloader:
>>> [org.apache.geronimo.kernel.config.MultiParentClassLoader
>>> id=myapp/app/1.0/ear]
>>>         at
>>> org.apache.geronimo.kernel.config.SerializedGBeanState.loadGBeans(Seria
>>> ...
>>> Caused by: java.lang.ClassNotFoundException: Unable to find class used in
>>> GBeanData
>>>
>>>
>>> myapp/app/1.0/ear?J2EEApplication=myapp/app/1.0/ear,j2eeType=EJBModule,name
>>>=MyAppEJB.jar, attribute: ejbJarInfo
>>>         at
>>>
>>>
>>> org.apache.geronimo.gbean.GBeanData$V0Externalizable.readExternal(GBeanData
>>>.java:293) ... 33 more
>>> Caused by: java.lang.ClassNotFoundException: Could not load class
>>> javax.xml.namespace.QName from classloader: myapp/app/1.0/ear, destroyed
>>> state: false
>>>         at
>>> org.apache.geronimo.kernel.ClassLoading.loadClass(ClassLoading.java:213)
>>> ...
>>>
>>> So I thought maybe "xml-apis-1.3.02.jar" is missing, but adding to the
>>> EAR
>>> leads to:
>>>
>>> ...
>>> Caused by: java.io.InvalidClassException: javax.xml.namespace.QName;
>>> local
>>> class incompatible: stream classdesc serialVersionUID =
>>> -9120448754896609940, local class serialVersionUID = 4418622981026545151
>>>         at
>>> java.io.ObjectStreamClass.initNonProxy(ObjectStreamClass.java:546)
>>>         at
>>> java.io.ObjectInputStream.readNonProxyDesc(ObjectInputStream.java:1552)
>>> ...
>>>
>>> I need the QName in my Webservice. What can I do to get my App deployed?
>>> Thanx in advance.
>>>
>>> -Josef
>>>
>>>
>>>
>>>
>>> Daniel Kulp <dkulp@apache.org>
>>> 05.08.2008 16:42
>>> Bitte antworten an
>>> users@cxf.apache.org
>>>
>>>
>>> An
>>> users@cxf.apache.org
>>> Kopie
>>>
>>> Thema
>>> Re: Change Version of Apache CXF for Geronimo
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>> You might want to just try Geronimo 2.1.2.   The vote apparently passed
>>> last
>>> night:
>>>
>>>
>>> http://www.nabble.com/-VOTE--Geronimo-Server-2.1.2-Release-to18746852s134.h
>>>tml
>>>
>>> so it should be made available shortly.   You can download the
>>> candidates.
>>>
>>> 2.1.2 is using CXF 2.0.8.
>>>
>>>
>>> Dan
>>>
>>> On Tuesday 05 August 2008 6:03:51 am Josef.Eisele@bgs-ag.de wrote:
>>> > Hi Glen,
>>> >
>>> > because I got stuck in solving the problem with Geronimo 2.1.1 and
>>> > included CXF 2.0.2 I thought maybe CXF 2.0.8 solves my problem?
>>> >
>>> > So I tried to change the WS-Stack of my Geronimo from the old version
>>> > to
>>> > CXF 2.0.8. I had certain essays:
>>> >
>>> > 1) http://www.jroller.com/gmazza/date/20080612:
>>> > -> In Geronimo is no <prefer-application-packages> available, I
tried
>>>
>>> with
>>>
>>> > <inverse-classloading/> but I got a lot of problems with the
>>>
>>> classloader.
>>>
>>> > If I added all JARS necessary - see file WHICH_JARS - I got class cast
>>> > exceptions, adding a certain minimum leads to NoClassDefError.
>>> > <hidden-classes> or <non-overridable-classes>  won't help?
>>> > 2) Adding CXF under Services - Repository with a dependency-entry in
>>> > the
>>> > deployment plan:
>>> >             <dependency>
>>> >                 <groupId>org.apache.cxf</groupId>
>>> >                 <artifactId>cxf</artifactId>
>>> >                 <version>2.0.8</version>
>>> >                 <type>jar</type>
>>> >             </dependency>
>>> > changed nothing.
>>> > 3) ???
>>> >
>>> > Can you please help?
>>> >
>>> > -Josef
>>> >
>>> >
>>> >
>>> >
>>> > Josef.Eisele@bgs-ag.de
>>> > 04.08.2008 16:09
>>> > Bitte antworten an
>>> > users@cxf.apache.org
>>> >
>>> >
>>> > An
>>> > users@cxf.apache.org
>>> > Kopie
>>> >
>>> > Thema
>>> > Antwort: Re: Antwort: Re: Antwort: Re: WS-Stack Apache CXF asks for
>>> > Axis2-Classes
>>> >
>>> >
>>> >
>>> >
>>> >
>>> >
>>> > Hi Dan,
>>> >
>>> > I checked your blog and I didn't found big differences in the
>>> > code(Server-Part is in my case more JEE5 like - see
>>>
>>>
>>>
>>> http://depressedprogrammer.wordpress.com/2007/07/31/cxf-ws-security-using-j
>>>
>>> >sr-181-interceptor-annotations-xfire-migration/
>>> >
>>> > ).
>>> >
>>> > The difference I see compared with your blog-example is in the request
>>> > itself:
>>> >
>>> > 1) from http://cwiki.apache.org/CXF20DOC/ws-security.html:
>>> >      <wsse:Security
>>> >          xmlns:wsse="
>>>
>>>
>>>
>>> http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1
>>>
>>> >.0.xsd
>>> >
>>> > "
>>> >          soap:mustUnderstand="1">
>>> >          <wsse:UsernameToken
>>> >             xmlns:wsse="
>>>
>>>
>>>
>>> http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1
>>>
>>> >.0.xsd
>>> >
>>> > "
>>> >             xmlns:wsu="
>>>
>>>
>>>
>>> http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-
>>>
>>> >1.0.xsd
>>> >
>>> > "
>>> >             wsu:Id="UsernameToken-25268096">
>>> >             <wsse:Username
>>> >                xmlns:wsse="
>>>
>>>
>>>
>>> http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1
>>>
>>> >.0.xsd
>>> >
>>> > ">
>>> >                joe
>>> >             </wsse:Username>
>>> >             <wsse:Password
>>> >                xmlns:wsse="
>>>
>>>
>>>
>>> http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1
>>>
>>> >.0.xsd
>>> >
>>> > "
>>> >                Type="
>>>
>>>
>>>
>>> http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-prof
>>>
>>> >ile-1.0#PasswordDigest
>>> >
>>> > ">
>>> >                ymyLPVTLrQMBJo82akcw4aBSlJQ=
>>> >             </wsse:Password>
>>> >             <wsse:Nonce
>>> >                xmlns:wsse="
>>>
>>>
>>>
>>> http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1
>>>
>>> >.0.xsd
>>> >
>>> > ">
>>> >                MK3TTlJxaevzcFaxV/oKyw==
>>> >             </wsse:Nonce>
>>> >             <wsu:Created
>>> >                xmlns:wsu="
>>>
>>>
>>>
>>> http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-
>>>
>>> >1.0.xsd
>>> >
>>> > ">
>>> >                2008-07-16T23:05:07.300Z
>>> >             </wsu:Created>
>>> >          </wsse:UsernameToken>
>>> >       </wsse:Security>
>>> >
>>> > 2) my request:
>>> > <wsse:Security
>>> >     xmlns:wsse="
>>>
>>>
>>>
>>> http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1
>>>
>>> >.0.xsd
>>> >
>>> > "
>>> >     soap:mustUnderstand="1">
>>> >     <wsse:UsernameToken
>>> >         xmlns:wsu="
>>>
>>>
>>>
>>> http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-
>>>
>>> >1.0.xsd
>>> >
>>> > "
>>> >         wsu:Id="UsernameToken-12189822">
>>> >     <wsse:Username>
>>> >          blabla
>>> >     </wsse:Username>
>>> >     <wsse:Password
>>> >        Type="
>>>
>>>
>>>
>>> http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-prof
>>>
>>> >ile-1.0#PasswordDigest
>>> >
>>> > ">
>>> >        uIqdbKqsp5VCvM4bPTps1PmnMZI=</wsse:Password>
>>> >     <wsse:Nonce>YmoBKVpJrAjM2P3ss7MUNg==</wsse:Nonce>
>>> >     <wsu:Created>
>>> >        2008-08-04T10:08:15.245Z
>>> >     </wsu:Created>
>>> >    </wsse:UsernameToken>
>>> > </wsse:Security>
>>> >
>>> >
>>> > I miss the namespace
>>> > xmlns:wsse="
>>>
>>>
>>>
>>> http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1
>>>
>>> >.0.xsd
>>> >
>>> > "
>>> > and not only me but also the WSSecurityUtil.class in line 92:
>>> >
>>> >         list =
>>> > soapHeaderElement.getElementsByTagNameNS(WSConstants.WSSE_NS,
>>> >                 WSConstants.WSSE_LN);
>>> >
>>> > And therefore the method
>>> > public static Element getSecurityHeader(Document doc, String actor,
>>> > SOAPConstants sc) {
>>> >
>>> > results in an null-Element. The class WSSecurityEngine and in the end
>>> > org.apache.cxf.ws.security.wss4j.WSS4JInInterceptor throws the error:
>>> >
>>> > WARNUNG: Request does not contain required Security header
>>> >
>>> > What am I doing wrong with WS-Security 1.1 ???? I have now the sources
>>>
>>> for
>>>
>>> > apacche-cxf-2.0.2 and wss4j-1.5.1, if I can debug to a certain step let
>>>
>>> me
>>>
>>> > know.
>>> >
>>> > -Josef
>>> >
>>> >
>>> >
>>> >
>>> >
>>> > Glen Mazza <glen.mazza@gmail.com>
>>> > 26.07.2008 03:03
>>> > Bitte antworten an
>>> > users@cxf.apache.org
>>> >
>>> >
>>> > An
>>> > users@cxf.apache.org
>>> > Kopie
>>> >
>>> > Thema
>>> > Re: Antwort: Re: Antwort: Re: WS-Stack Apache CXF asks for
>>> > Axis2-Classes
>>> >
>>> >
>>> >
>>> >
>>> >
>>> >
>>> >
>>> > Have you checked our documentation on this:
>>> > http://cwiki.apache.org/CXF20DOC/ws-security.html
>>> >
>>> > Also I blogged about this recently, maybe something you can use:
>>> > http://www.jroller.com/gmazza/entry/using_cxf_and_wss4j_to
>>> >
>>> > HTH,
>>> > Glen
>>> >
>>> > Josef.Eisele wrote:
>>> > > Hi Dan,
>>> > >
>>> > > I solved the last problem copying libraries (xmlsec-1.3.0.jar,
>>> > > wss4j-1.5.1.jar, cxr-rt-ws-securitity-2.0.2-...) from the WAR-Part
to
>>> >
>>> > the
>>> >
>>> > > EAR-Part:
>>> > > (WebContent/WEB-INF/lib -> EarContent/lib)
>>> > >
>>> > > One Problem solved another arises:
>>> > >
>>> > > Client writes the SecurityHeader:
>>> > > ..
>>> > > <wsse:Security xmlns:wsse="
>>>
>>>
>>>
>>> http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1
>>>
>>> >.0.xsd
>>> >
>>> > > " soap:mustUnderstand="1">
>>> > > <wsse:UsernameToken xmlns:wsu="
>>>
>>>
>>>
>>> http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-
>>>
>>> >1.0.xsd
>>> >
>>> > > " wsu:Id="UsernameToken-12189822">
>>> > > <wsse:Username>chef</wsse:Username>
>>> > > <wsse:Password Type="
>>>
>>>
>>>
>>> http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-prof
>>>
>>> >ile-1.0#PasswordDigest
>>> >
>>> > > ">MxsuASsgtCzGlTTif0kcbqXIHxM=</wsse:Password>
>>> > > <wsse:Nonce>HAYlnYvfdo0dddeYXGsxdw==</wsse:Nonce>
>>> > > <wsu:Created>2008-07-25T11:22:20.886Z</wsu:Created>
>>> > > </wsse:UsernameToken>
>>> > > </wsse:Security>
>>> > > ...
>>> > >
>>> > > Server is configured with the interceptor:
>>> > > @InInterceptors(interceptors={ "de.mypath.WSSecurityInterceptor" })
>>> > >
>>> > > In this class I configure 3 Interceptors:
>>> > >         public void handleMessage(Message message) throws Fault {
>>> > >                 Map<String, Object> props = new HashMap<String,
>>> >
>>> > Object>();
>>> >
>>> > >                 props.put(WSHandlerConstants.ACTION,
>>> > > WSHandlerConstants.USERNAME_TOKEN);
>>> > >                 props.put(WSHandlerConstants.PASSWORD_TYPE,
>>> > > WSConstants.PW_DIGEST);
>>> > >                 props.put(WSHandlerConstants.PW_CALLBACK_CLASS,
>>> > > ServerPasswordCallback.class.getName());
>>> > >
>>> > >                 WSS4JInInterceptor           wss4jInInterceptor   =
>>>
>>> new
>>>
>>> > > WSS4JInInterceptor(props);
>>> > >                 ValidateUserTokenInterceptor userTokenInterceptor =
>>>
>>> new
>>>
>>> > > ValidateUserTokenInterceptor(Phase.POST_PROTOCOL);
>>> > >
>>> > >
>>> > > message.getInterceptorChain().add(wss4jInInterceptor);
>>> > >                 //org.apache.cxf.binding.soap.SoapFault: No
>>>
>>> SOAPMessage
>>>
>>> > > DOM was found. Please enable the SAAJInInterceptor.
>>> > >                 message.getInterceptorChain().add(new
>>> > > SAAJInInterceptor());
>>> > >  message.getInterceptorChain().add(userTokenInterceptor);
>>> > >         }
>>> > >
>>> > > UserTokenInterceptor works fine, SAAJInInterceptor is necessary
>>> >
>>> > otherwise
>>> >
>>> > > excepton but now I get an exception on the wss4jInInterceptor:
>>> > >
>>> > > 25.07.2008 13:03:44
>>>
>>> org.apache.cxf.ws.security.wss4j.WSS4JInInterceptor
>>>
>>> > > handleMessage
>>> > > WARNUNG: Request does not contain required Security header
>>> > > 25.07.2008 13:03:44 org.apache.cxf.phase.PhaseInterceptorChain
>>> >
>>> > doIntercept
>>> >
>>> > > INFO: Interceptor has thrown exception, unwinding now
>>> > > org.apache.cxf.binding.soap.SoapFault: Request does not contain
>>>
>>> required
>>>
>>> > > Security header.
>>> > >         at
>>>
>>>
>>>
>>> org.apache.cxf.ws.security.wss4j.WSS4JInInterceptor.handleMessage(WSS4JInIn
>>>
>>> >terceptor.java:153)
>>> >
>>> > >         at
>>>
>>>
>>>
>>> org.apache.cxf.ws.security.wss4j.WSS4JInInterceptor.handleMessage(WSS4JInIn
>>>
>>> >terceptor.java:60)
>>> >
>>> > >         at
>>>
>>>
>>>
>>> org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChai
>>>
>>> >n.java:208)
>>> >
>>> > >         at
>>> > > org.apache.cxf.endpoint.ClientImpl.onMessage(ClientImpl.java:429)
>>> > >         at
>>>
>>>
>>>
>>> org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.handleRespons
>>>
>>> >e(HTTPConduit.java:1955)
>>> >
>>> > >         at
>>>
>>>
>>>
>>> org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.close(HTTPCon
>>>
>>> >duit.java:1791)
>>> >
>>> > >         at
>>>
>>> org.apache.cxf.transport.AbstractConduit.close(AbstractConduit.java:66)
>>>
>>> > >         at
>>> > > org.apache.cxf.transport.http.HTTPConduit.close(HTTPConduit.java:575)
>>> > >         at
>>>
>>>
>>>
>>> org.apache.cxf.interceptor.MessageSenderInterceptor$MessageSenderEndingInte
>>>
>>> >rceptor.handleMessage(MessageSenderInterceptor.java:62)
>>> >
>>> > >         at
>>>
>>>
>>>
>>> org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChai
>>>
>>> >n.java:208)
>>> >
>>> > >         at
>>> >
>>> > org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:276)
>>> >
>>> > >         at
>>> >
>>> > org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:222)
>>> >
>>> > >         at
>>> > > org.apache.cxf.frontend.ClientProxy.invokeSync(ClientProxy.java:73)
>>> > >         at
>>>
>>> org.apache.cxf.jaxws.JaxWsClientProxy.invoke(JaxWsClientProxy.java:135)
>>>
>>> > > How do I know what is wrong with my SecurityHeader?
>>> > >
>>> > > -Josef
>>> > >
>>> > >
>>> > >
>>> > >
>>> > > Daniel Kulp <dkulp@apache.org>
>>> > > 23.07.2008 14:42
>>> > > Bitte antworten an
>>> > > users@cxf.apache.org
>>> > >
>>> > >
>>> > > An
>>> > > users@cxf.apache.org
>>> > > Kopie
>>> > > user@geronimo.apache.org
>>> > > Thema
>>> > > Re: Antwort: Re: WS-Stack Apache CXF asks for Axis2-Classes
>>> > >
>>> > > On Jul 23, 2008, at 7:24 AM, Josef.Eisele@bgs-ag.de wrote:
>>> > >> Hi Kevin, Lin, Daniel, Glen,
>>> > >>
>>> > >> @Daniel: Your VM-Parameters solved this problem. Thank you very
much
>>> > >> for
>>> > >> your help.
>>> > >
>>> > > Yea, but it definitely shouldn't have been necessary.
>>> > >
>>> > >> @Glen: Thank you very much for your tipp, we will wait for Geronimo
>>> > >> 2.1.2
>>> > >> and then we have Apache CXF2.0.6...
>>> > >
>>> > > Actually, CXF 2.0.8.    :-)
>>> > >
>>> > >> @All: Now I have two new issues ;-)
>>> > >> 1) The client is written like described in
>>> > >> http://cwiki.apache.org/CXF20DOC/ws-security.html. For the server
>>> > >> part -
>>> > >> because of JavaEE5 - we choose
>>>
>>>
>>>
>>> http://depressedprogrammer.wordpress.com/2007/07/31/cxf-ws-security-using-j
>>>
>>> >sr-181-interceptor-annotations-xfire-migration/
>>> >
>>> > >> .
>>> > >> In the first run I added
>>> > >> @InInterceptors
>>> > >> (interceptors={   "de.myapp.WSSecurityInterceptor" })  to
>>> > >> the WS-Implementation-Class and nothing happend. Afterwards I had
a
>>> > >> try
>>> > >> with the interface class and added the same
>>> > >> @InInterceptors(interceptors={   "de.myapp.WSSecurityInterceptor"
>>> > >> }).
>>> > >> After this changed the class de.myapp.WSSecurityInterceptor was
>>> > >> accessed.
>>> > >> Why do I have to add @... in implementation AND interface?
>>> > >
>>> > > Not sure on that.   Feel free to log a CXF bug.    It should be
>>> > > possible to just put it on the implementation.   The interface should
>>> > > be shareable between clients/servers and having interceptors defined
>>> > > on it that should just be there for the server is not a good thing.
>>> > >
>>> > >> 2) In the handleMessage(Message message) I receive after:
>>> > >> ...
>>> > >>                props.put(WSHandlerConstants.PASSWORD_TYPE,
>>> > >> WSConstants.PW_TEXT);
>>> > >>                props.put(WSHandlerConstants.PW_CALLBACK_CLASS,
>>> > >> ServerPasswordCallback.class.getName());
>>> > >>
>>> > >>                WSS4JInInterceptor wss4jInHandler = new
>>> > >> WSS4JInInterceptor(props);
>>> > >> ...
>>> > >>
>>> > >> .........................
>>> > >>
>>> > >> Caused by: com.ctc.wstx.exc.WstxEOFException: Unexpected EOF in
>>>
>>> prolog
>>>
>>> > >> at [row,col {unknown-source}]: [1,0]
>>> > >>        at
>>> > >> com.ctc.wstx.sr.StreamScanner.throwUnexpectedEOF(StreamScanner.java:
>>> > >> 661)
>>> > >>        at
>>> > >> com.ctc.wstx.sr.BasicStreamReader.handleEOF(BasicStreamReader.java:
>>> > >> 2134)
>>> > >>        at
>>> > >
>>> > > With CXF 2.0.2, that stack could result from a BUNCH of things.  We
>>> > > actually would get that stack if the server sent back and html error
>>> > > page without setting a 404 or similar.   Several things can cause
>>> > > it.   If you can tcpdump or wireshark the wire transfers to see
>>> > > what's
>>> > > going on, that would be helpful.    Good news is that this changed
in
>>> > > 2.0.5 to get a better error message.   :-)
>>> > >
>>> > >
>>> > > ---
>>> > > Daniel Kulp
>>> > > dkulp@apache.org
>>> > > http://www.dankulp.com/blog
>>> > >
>>> > >
>>> > >
>>> > >
>>> > >
>>> > >
>>> > > BGS Beratungsgesellschaft
>>> > > Software Systemplanung AG
>>> > >
>>> > >
>>> > >
>>> > >
>>> > > Niederlassung Rhein/Main
>>> > > Robert-Koch-Straße 41
>>> > > 55129 Mainz
>>> > > Fon: +49 (0) 6131 / 914-0
>>> > > Fax: +49 (0) 6131 / 914-400
>>> > > www.bgs-ag.de
>>> > > Geschäftssitz Mainz
>>> > > Registergericht
>>> > > Amtsgericht Mainz
>>> > > HRB 62 50
>>> > >
>>> > > Aufsichtsratsvorsitzender
>>> > > Klaus Hellwig
>>> > > Vorstand
>>> > > Hanspeter Gau
>>> > > Hermann Kiefer
>>> > > Nils Manegold
>>
>>
>>
>> --
>> Daniel Kulp
>> dkulp@apache.org
>> http://www.dankulp.com/blog
>>
>> ________________________________
>> BGS Beratungsgesellschaft
>> Software Systemplanung AG
>>   Niederlassung Rhein/Main
>> Robert-Koch-Straße 41
>> 55129 Mainz
>> Fon: +49 (0) 6131 / 914-0
>> Fax: +49 (0) 6131 / 914-400
>> www.bgs-ag.de Geschäftssitz Mainz
>> Registergericht
>> Amtsgericht Mainz
>> HRB 62 50
>>   Aufsichtsratsvorsitzender
>> Klaus Hellwig
>> Vorstand
>> Hanspeter Gau
>> Hermann Kiefer
>> Nils Manegold
>>
>>
>
> ________________________________
> BGS Beratungsgesellschaft
> Software Systemplanung AG
>   Niederlassung Rhein/Main
> Robert-Koch-Straße 41
> 55129 Mainz
> Fon: +49 (0) 6131 / 914-0
> Fax: +49 (0) 6131 / 914-400
> www.bgs-ag.de Geschäftssitz Mainz
> Registergericht
> Amtsgericht Mainz
> HRB 62 50
>   Aufsichtsratsvorsitzender
> Klaus Hellwig
> Vorstand
> Hanspeter Gau
> Hermann Kiefer
> Nils Manegold
>
>

Mime
View raw message