JAX-WS fails to unmarshal a service exception if the fault detail contains
multiple detail entries.
---------------------------------------------------------------------------------------------------
Key: AXIS2-4523
URL: https://issues.apache.org/jira/browse/AXIS2-4523
Project: Axis 2.0 (Axis2)
Issue Type: Bug
Components: jaxws
Reporter: Rich Scheuerle
Assignee: Rich Scheuerle
Background:
When an inbound SOAP message contains a SOAP Fault, the JAX-WS engine examines
the element inside of the Fault detail.
This child element of the detail is called a detail entry in SAAJ.
If the JAX-WS engine finds a matching service exception (aka application
exception), the engine will use the contents of the detail entry to create a
service exception.
Problem:
The vendor sending the message may add other detail entries to the detail
element. For example the vendor may add an "exception" or "stacktrace" element
that contains
debug information about the location of the exception on the server. The
presence of these extra detail entries caused the JAX-WS engine to incorrectly
unmarshal
the fault as a system exception (not a service exception).
Solution:
The solution is very simple. The code currently only attempts service
exception unmarshalling if there is one detail entry.
The code will be changed to attempt service exception unmarshalling if there
are one or more detail entries. The first one will be used to do the service
exception unmarshalling.
I have a fix, and am testing it now.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.