Sorry, opened the repository.

> Gesendet: Mittwoch, 19. Juli 2023 um 12:14 Uhr
> Von: "Richard Zowalla" <[email protected]>
> An: [email protected]
> Betreff: Re: Re: No XML deserialization with TomEE 9.1.0 and JAAS
>
> Hi Markus,
> 
> the link results in a 404 -> private repo?
> 
> Gruß
> Richard
> 
> Am Mittwoch, dem 19.07.2023 um 11:10 +0200 schrieb [email protected]:
> > Hi Richard,
> > 
> > to my surprise I was able to reproduce the issue with a small
> > example.
> > https://github.com/abstract-thinking/JaasSoapTomEEIssue/tree/master
> > 
> > I really hope that it is not mistake by myself. ;-)
> > 
> > By the way - Java 17 is used.
> > 
> > Cheers,
> > Markus
> > 
> > > Gesendet: Dienstag, 18. Juli 2023 um 20:18 Uhr
> > > Von: "Richard Zowalla" <[email protected]>
> > > An: [email protected]
> > > Betreff: Re: No XML deserialization with TomEE 9.1.0 and JAAS
> > > 
> > > Hi,
> > > 
> > > maybe adding a small reproducer to GitHub would help in identifying
> > > any
> > > issue?
> > > 
> > > Gruß
> > > Richard
> > > 
> > > 
> > > Am Dienstag, dem 18.07.2023 um 17:56 +0200 schrieb
> > > [email protected]:
> > > > Hi,
> > > > 
> > > > I ported our war file from TomEE 8.0.15 to TomEE 9.1.0.
> > > > 
> > > > The deployment works fine with some new infos[1] where I think
> > > > they
> > > > are not a serious issue.
> > > > 
> > > > The application uses a SOAP interface and the WSDL will be
> > > > retrieved.
> > > > 
> > > > The server is using JAAS [2][3][4]. I think at the moment I
> > > > configured the TomEE system correctly.
> > > > 
> > > > Now I'm observing that the SOAP messages are not deserialized and
> > > > an
> > > > exception will be thrown.
> > > > 
> > > > 18-Jul-2023 17:19:49.419 WARNING [http-nio-8080-exec-1]
> > > > org.apache.cxf.phase.PhaseInterceptorChain.doDefaultLogging
> > > > Interceptor for {http://company.com/wssession/}WSSession has
> > > > thrown
> > > > exc
> > > > eption, unwinding now
> > > >         org.apache.cxf.binding.soap.SoapFault: Error reading
> > > > XMLStreamReader.
> > > >                 at
> > > > org.apache.cxf.binding.soap.saaj.SAAJInInterceptor$SAAJPreInInter
> > > > cept
> > > > or.handleMessage(SAAJInInterceptor.java:145)
> > > >                 at
> > > > org.apache.cxf.binding.soap.saaj.SAAJInInterceptor$SAAJPreInInter
> > > > cept
> > > > or.handleMessage(SAAJInInterceptor.java:107)
> > > >                 at
> > > > org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInter
> > > > cept
> > > > orChain.java:307)
> > > >         [...]
> > > >         Caused by: jakarta.xml.soap.SOAPException: Unable to
> > > > create
> > > > message factory for SOAP: Error while searching for service
> > > > [jakarta.xml.soap.MessageFactory]
> > > >                 at
> > > > jakarta.xml.soap.MessageFactory.newInstance(MessageFactory.java:9
> > > > 0)
> > > >                 at
> > > > org.apache.cxf.binding.soap.saaj.SAAJFactoryResolver.createMessag
> > > > eFac
> > > > tory(SAAJFactoryResolver.java:56)
> > > >                 at
> > > > org.apache.cxf.binding.soap.saaj.SAAJInInterceptor$SAAJPreInInter
> > > > cept
> > > > or.getFactory(SAAJInInterceptor.java:151)
> > > >                 at
> > > > org.apache.cxf.binding.soap.saaj.SAAJInInterceptor$SAAJPreInInter
> > > > cept
> > > > or.handleMessage(SAAJInInterceptor.java:133)
> > > >                 ... 36 more
> > > > 
> > > > 
> > > > In the resources.xml the WSS4J is configured where the
> > > > onterceptor is
> > > > invoked [5] ...
> > > > 
> > > > Does anybody have an idea how TomEE is not finding a
> > > > SoapMessageFactory? What can I do? My assumption was that a lib
> > > > is
> > > > inside the library folder? [6]
> > > > 
> > > > Thanks,
> > > > Markus
> > > > 
> > > > 
> > > > 
> > > > [1]
> > > > 18-Jul-2023 17:17:48.929 INFO [main]
> > > > org.apache.cxf.jaxb.JAXBContextInitializer.addClass Class
> > > > jakarta.xml.bind.JAXBElement does not have a default constructor
> > > > which JAXB requires.
> > > > 18-Jul-2023 17:17:48.983 INFO [main]
> > > > org.apache.cxf.common.jaxb.JAXBUtils.createEscapeHandler Failed
> > > > to
> > > > create MinimumEscapeHandler
> > > > 
> > > > [2]
> > > > less conf/login.config
> > > > jaasContext  {
> > > >    
> > > > org.apache.openejb.core.security.jaas.ServiceProviderLoginModule
> > > > required;
> > > > };
> > > > 
> > > > [3]
> > > > less conf/server.xml
> > > >     <Engine name="Catalina" defaultHost="localhost">
> > > > 
> > > >       <!--For clustering, please take a look at documentation at:
> > > >           /docs/cluster-howto.html  (simple how to)
> > > >           /docs/config/cluster.html (reference documentation) -->
> > > >       <!--
> > > >       <Cluster
> > > > className="org.apache.catalina.ha.tcp.SimpleTcpCluster"/>
> > > >       -->
> > > > 
> > > >       <!-- Use the LockOutRealm to prevent attempts to guess user
> > > > passwords
> > > >            via a brute-force attack -->
> > > >       <Realm className="org.apache.catalina.realm.JAASRealm"
> > > > appName="jaasContext"
> > > >            
> > > > userClassNames="org.apache.openejb.core.security.jaas.UserPrincip
> > > > al"
> > > >            
> > > > roleClassNames="org.apache.openejb.core.security.jaas.GroupPrinci
> > > > pal"
> > > > > 
> > > >       </Realm>
> > > > 
> > > > [4]
> > > > less bin/setenv.sh
> > > > export CATALINA_OPTS="$CATALINA_OPTS -
> > > > Djava.security.auth.login.config=/opt/tomee/current/conf/login.co
> > > > nfig
> > > > "
> > > > 
> > > > [5]
> > > > <resources>
> > > >     <!-- In interceptors -->
> > > >     <Service id="wss4j" class-
> > > > name="org.apache.openejb.server.cxf.config.WSS4JInInterceptorFact
> > > > ory"
> > > > factory-name="create">
> > > >         action = UsernameToken
> > > >         passwordCallbackClass = com.company.PasswordHandler
> > > >     </Service>
> > > > </resources>
> > > > 
> > > > [6]
> > > > /opt/tomee/apache-tomee-plus-9.1.0/lib$ find -name "*cxf*"
> > > > ./cxf-rt-rs-mp-client-shade-9.1.0.jar
> > > > ./openejb-cxf-transport-9.1.0.jar
> > > > ./openejb-cxf-rs-9.1.0.jar
> > > > ./cxf-shade-9.1.0.jar
> > > > ./openejb-cxf-9.1.0.jar
> > > > /opt/tomee/apache-tomee-plus-9.1.0/lib$ find -name "*soap*"
> > > > ./opensaml-soap-api-4.2.0.jar
> > > > /opt/tomee/apache-tomee-plus-9.1.0/lib$ find -name "*xml*"
> > > > ./opensaml-xmlsec-impl-4.2.0.jar
> > > > ./opensaml-xmlsec-api-4.2.0.jar
> > > > ./xmlsec-3.0.1.jar
> > > > ./xmlschema-core-2.2.5.jar
> > > > 
> > > > 
> > > > 
> > > > 
> > > > 
> > > > 
> > > 
> > > 
> 
>

Reply via email to