Issue w/ deployment from 8.2.1 to 15.0.1

209 views
Skip to first unread message

Stephan van Beerschoten

unread,
Jul 12, 2021, 12:06:44 PM7/12/21
to WildFly
Hi all,

I'm having trouble with a deployment that ran fine on 8.2.1 that I'm now trying to deploy on 15.0.1. I know v15 is old, but I have other constraints that force me to use it.
The package deploys fine, but I have runtime errors calling the webservice it's supposed to be:

The final error is:  "Fault string, and possibly fault code, not set".
Here is the top part of the stack trace, starting at the last line of my code:

2021-07-12 11:08:35,950 WARNING [org.apache.cxf.phase.PhaseInterceptorChain] (default task-5) Interceptor for {http://webservice.cmsintegration.xxx.com/}CMSIntegrationService#{http://webservice.cmsintegration.xxx.com/}processCPR has thrown exception, unwinding now: java.lang.NullPointerException
at javax.xml.bind.PropertyException.<init>(PropertyException.java:124)
at org.eclipse.persistence.jaxb.JAXBMarshaller.setProperty(JAXBMarshaller.java:805)
at org.apache.cxf.common.jaxb.JAXBUtils.setEscapeHandler(JAXBUtils.java:1567)
at org.apache.cxf.jaxb.io.DataWriterImpl.lambda$createMarshaller$0(DataWriterImpl.java:138)
at org.apache.cxf.jaxb.JAXBDataBinding.applyEscapeHandler(JAXBDataBinding.java:271)
at org.apache.cxf.jaxb.io.DataWriterImpl.createMarshaller(DataWriterImpl.java:138)
at org.apache.cxf.jaxb.io.DataWriterImpl.write(DataWriterImpl.java:239)
at org.apache.cxf.interceptor.AbstractOutDatabindingInterceptor.writeParts(AbstractOutDatabindingInterceptor.java:118)
at org.apache.cxf.wsdl.interceptors.BareOutInterceptor.handleMessage(BareOutInterceptor.java:68)
at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:308)
at org.apache.cxf.endpoint.ClientImpl.doInvoke(ClientImpl.java:537)
at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:446)
at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:361)
at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:319)
at org.apache.cxf.frontend.ClientProxy.invokeSync(ClientProxy.java:96)
at org.apache.cxf.jaxws.JaxWsClientProxy.invoke(JaxWsClientProxy.java:139)
at com.sun.proxy.$Proxy382.processCPR(Unknown Source)
at com.xxx.processCPR(CMS.java:174)

As you can see the error appears to originate in apache-cxf code.
Any ideas?

Thanks,
Stephan

Stephan van Beerschoten

unread,
Jul 12, 2021, 2:33:19 PM7/12/21
to WildFly
I compared FINE level debugging for a working use case (through my IDE) with the failed use case (running inside WildFly). There isn't much there, but it may help to narrow down the problem:

WORKING:
----------
2021-07-12 14:23:40,780 FINE  [org.apache.cxf.phase.PhaseInterceptorChain] (default task-9) Chain org.apache.cxf.phase.PhaseInterceptorChain@25d0ca1 was modified. Current flow:
  setup [Interceptor, PolicyOutInterceptor]
  pre-logical [HolderOutInterceptor, SwAOutInterceptor, WrapperClassOutInterceptor, SoapHeaderOutFilterInterceptor]
  post-logical [SoapPreProtocolOutInterceptor]
  prepare-send [MessageSenderInterceptor]
  pre-stream [LoggingOutInterceptor, AttachmentOutInterceptor, StaxOutInterceptor]
  write [SoapOutInterceptor]
  marshal [WrappedOutInterceptor, BareOutInterceptor]
  write-ending [SoapOutEndingInterceptor]
  pre-stream-ending [StaxOutEndingInterceptor]
  prepare-send-ending [MessageSenderEndingInterceptor]

2021-07-12 14:23:40,780 FINE  [org.apache.cxf.phase.PhaseInterceptorChain] (default task-9) Invoking handleMessage on interceptor org.apache.cxf.wsdl.interceptors.WrappedOutInterceptor@6093c488
2021-07-12 14:23:40,780 FINE  [org.apache.cxf.phase.PhaseInterceptorChain] (default task-9) Invoking handleMessage on interceptor org.apache.cxf.wsdl.interceptors.BareOutInterceptor@41d2c6f6
2021-07-12 14:23:40,795 FINE  [org.apache.cxf.ws.addressing.ContextUtils] (default task-9) retrieving MAPs from context property javax.xml.ws.addressing.context.inbound
2021-07-12 14:23:40,795 FINE  [org.apache.cxf.ws.addressing.ContextUtils] (default task-9) WS-Addressing - failed to retrieve Message Addressing Properties from context
2021-07-12 14:23:40,795 FINE  [org.apache.cxf.phase.PhaseInterceptorChain] (default task-9) Invoking handleMessage on interceptor org.apache.cxf.binding.soap.interceptor.SoapOutInterceptor$SoapOutEndingInterceptor@2f87b512
2021-07-12 14:23:40,795 FINE  [org.apache.cxf.phase.PhaseInterceptorChain] (default task-9) Invoking handleMessage on interceptor org.apache.cxf.interceptor.StaxOutEndingInterceptor@44e0521a
2021-07-12 14:23:40,795 FINE  [org.apache.cxf.phase.PhaseInterceptorChain] (default task-9) Invoking handleMessage on interceptor org.apache.cxf.interceptor.MessageSenderInterceptor$MessageSenderEndingInterceptor@580fdbd4
2021-07-12 14:23:40,795 FINE  [org.apache.cxf.ws.addressing.ContextUtils] (default task-9) retrieving MAPs from context property javax.xml.ws.addressing.context.outbound
2021-07-12 14:23:40,795 FINE  [org.apache.cxf.ws.addressing.ContextUtils] (default task-9) WS-Addressing - failed to retrieve Message Addressing Properties from context
2021-07-12 14:23:40,795 INFO  [org.apache.cxf.services.CMSIntegration.RESP_OUT] (default task-9) RESP_OUT
    Content-Type: text/xml
    ResponseCode: 200
    ExchangeId: e48e6d51-70b3-48a5-a4ec-9b96b3cade8e
    ServiceName: CMSIntegrationService
    PortName: CMSIntegrationPort
    PortTypeName: CMSIntegration
    Headers: {}
    Payload: <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"><soap:Body><ns2:getCMSCardInformationResponse xmlns:ns2="http://webservice.cmsintegration.piv.va.asmr.com/"><return>SUCCESS|PRODUCED,ASSIGNED|v3 PIV Card Logical Oberthur 5.5 Vzb CA|4820502B121100003165</return></ns2:getCMSCardInformationResponse></soap:Body></soap:Envelope>

2021-07-12 14:23:40,811 FINE  [org.apache.cxf.transport.http.AbstractHTTPDestination] (default task-9) Finished servicing http request on thread: Thread[default task-9,5,main]


NOT WORKING
----------
2021-07-12 14:15:20,093 FINE  [org.apache.cxf.phase.PhaseInterceptorChain] (default task-9) Chain org.apache.cxf.phase.PhaseInterceptorChain@215f4eac was modified. Current flow:
  setup [Interceptor, PolicyOutInterceptor]
  pre-logical [HolderOutInterceptor, SwAOutInterceptor, WrapperClassOutInterceptor, SoapHeaderOutFilterInterceptor]
  post-logical [SoapPreProtocolOutInterceptor]
  prepare-send [MessageSenderInterceptor]
  pre-stream [LoggingOutInterceptor, AttachmentOutInterceptor, StaxOutInterceptor]
  pre-protocol [HandlerChainSortInterceptor]
  write [SoapOutInterceptor]
  marshal [WrappedOutInterceptor, BareOutInterceptor]
  write-ending [SoapOutEndingInterceptor]
  pre-stream-ending [StaxOutEndingInterceptor]
  prepare-send-ending [MessageSenderEndingInterceptor]

2021-07-12 14:15:20,093 FINE  [org.apache.cxf.phase.PhaseInterceptorChain] (default task-9) Invoking handleMessage on interceptor org.apache.cxf.wsdl.interceptors.WrappedOutInterceptor@4307994c
2021-07-12 14:15:20,093 FINE  [org.apache.cxf.phase.PhaseInterceptorChain] (default task-9) Invoking handleMessage on interceptor org.apache.cxf.wsdl.interceptors.BareOutInterceptor@7c6623f7
2021-07-12 14:15:20,093 FINE  [org.apache.cxf.phase.PhaseInterceptorChain] (default task-9) Invoking handleFault on interceptor org.apache.cxf.wsdl.interceptors.BareOutInterceptor@7c6623f7
2021-07-12 14:15:20,108 FINE  [org.apache.cxf.phase.PhaseInterceptorChain] (default task-9) Invoking handleFault on interceptor org.apache.cxf.wsdl.interceptors.WrappedOutInterceptor@4307994c
2021-07-12 14:15:20,108 FINE  [org.apache.cxf.phase.PhaseInterceptorChain] (default task-9) Invoking handleFault on interceptor org.apache.cxf.binding.soap.interceptor.SoapOutInterceptor@17d42265
2021-07-12 14:15:20,108 FINE  [org.apache.cxf.phase.PhaseInterceptorChain] (default task-9) Invoking handleFault on interceptor org.jboss.wsf.stack.cxf.client.configuration.HandlerChainSortInterceptor@11d26b4c
2021-07-12 14:15:20,108 FINE  [org.apache.cxf.phase.PhaseInterceptorChain] (default task-9) Invoking handleFault on interceptor org.apache.cxf.interceptor.StaxOutInterceptor@2ac38ab1
2021-07-12 14:15:20,108 FINE  [org.apache.cxf.phase.PhaseInterceptorChain] (default task-9) Invoking handleFault on interceptor org.apache.cxf.interceptor.AttachmentOutInterceptor@57c141c2
2021-07-12 14:15:20,108 FINE  [org.apache.cxf.phase.PhaseInterceptorChain] (default task-9) Invoking handleFault on interceptor org.apache.cxf.ext.logging.LoggingOutInterceptor@29fc71bb
2021-07-12 14:15:20,108 FINE  [org.apache.cxf.phase.PhaseInterceptorChain] (default task-9) Invoking handleFault on interceptor org.apache.cxf.interceptor.MessageSenderInterceptor@5e66d4f
2021-07-12 14:15:20,108 FINE  [org.apache.cxf.phase.PhaseInterceptorChain] (default task-9) Invoking handleFault on interceptor org.apache.cxf.binding.soap.interceptor.SoapPreProtocolOutInterceptor@21f4a2e8
2021-07-12 14:15:20,124 FINE  [org.apache.cxf.phase.PhaseInterceptorChain] (default task-9) Invoking handleFault on interceptor org.apache.cxf.binding.soap.interceptor.SoapHeaderOutFilterInterceptor@19e26dca
2021-07-12 14:15:20,124 FINE  [org.apache.cxf.phase.PhaseInterceptorChain] (default task-9) Invoking handleFault on interceptor org.apache.cxf.jaxws.interceptors.WrapperClassOutInterceptor@63f15b8e
2021-07-12 14:15:20,124 FINE  [org.apache.cxf.phase.PhaseInterceptorChain] (default task-9) Invoking handleFault on interceptor org.apache.cxf.jaxws.interceptors.SwAOutInterceptor@294a96b5
2021-07-12 14:15:20,124 FINE  [org.apache.cxf.phase.PhaseInterceptorChain] (default task-9) Invoking handleFault on interceptor org.apache.cxf.jaxws.interceptors.HolderOutInterceptor@617bd4b7
2021-07-12 14:15:20,124 FINE  [org.apache.cxf.phase.PhaseInterceptorChain] (default task-9) Invoking handleFault on interceptor org.apache.cxf.ws.policy.PolicyOutInterceptor@223d3a7b
2021-07-12 14:15:20,124 FINE  [org.apache.cxf.phase.PhaseInterceptorChain] (default task-9) Invoking handleFault on interceptor org.jboss.wsf.stack.cxf.client.configuration.SecurityProviderConfig$Interceptor@1428c752
2021-07-12 14:15:20,124 WARNING [org.apache.cxf.phase.PhaseInterceptorChain] (default task-9) Interceptor for {http://webservice.cmsintegration.xxx.com/}CMSIntegrationService#{http://webservice.cmsintegration.piv.xxx.com/}getCMSCardInformation has thrown exception, unwinding now: java.lang.NullPointerException
at javax.xml.bind.PropertyException.<init>(PropertyException.java:124)

Stephan van Beerschoten

unread,
Aug 6, 2021, 11:34:06 AM8/6/21
to WildFly
I figured out what the issue was. Apparently there is a bug in the version of apache-cxf that is distributed with v15.0.1

See: https://issues.apache.org/jira/browse/CXF-7905

The jira issue indicates the fix was pushed out in apache-cxf v3.3.0, and WildFly v17 was the first one that bundled 3.3.x.

 

The server.log output from v15: JBWS022052: Starting JBossWS 5.2.4.Final (Apache CXF 3.2.5.jbossorg-1)

The server.log output from v17: JBWS022052: Starting JBossWS 5.2.4.Final (Apache CXF 3.3.2)

 

The fact that the JBossWS module version did not change gave me hope that it could be backwards compatible, which turned out to be the case.

I grabbed the "modules\system\layers\base\org\apache\cxf" tree from WildFly v17 and put it in the v15 tree, and the code that failed before now works.

Unfortunately I can't simply use V17 straight out. The COTS software I'm dealing with doesn't install on it just yet.

On Monday, July 12, 2021 at 12:06:44 PM UTC-4 Stephan van Beerschoten wrote:
Reply all
Reply to author
Forward
0 new messages