[
http://jira.jboss.com/jira/browse/JBWS-1297?page=comments#action_12346789 ]
Jason T. Greene commented on JBWS-1297:
---------------------------------------
The fault bean is already discovered or built by the JSR181MetaDataBuilder. You can get
the class by just saying faultMetaData.getFaultBean(). You then only have to check if the
exception you are trying to (un)marshall to/from can take a fault bean.
So here is the order of preference.
Marshalling a Exception
1. Look for getFaultInfo(), call and marshall the instance that is returned if exists
2. Otherwise, instantiate a new fault bean, and copy each property individually.
Unmarshalling an Exception
1. Look for a contsturctor that takes the fault bean, if present pass the fault bean
instance to the constructor
2. Otherwise, instantiate a new Exception using the values from the fault bean instance.
The order will be defined
on the propOrder attribute of the @XmlType annotation.
That said, I realize that In order to access the properties on the JAXB fault bean, we are
going to need to use something similar to the accessor API
that is used for (un)marshalling wrapped request/response structures. I am going to
create a separate issue for this, assign it to myself
and link it as a dependency.
Implement JAXB Fault Marshalling
--------------------------------
Key: JBWS-1297
URL:
http://jira.jboss.com/jira/browse/JBWS-1297
Project: JBoss Web Services
Issue Type: Task
Security Level: Public(Everyone can see)
Components: jaxws
Reporter: Jason T. Greene
Assigned To: Alejandro Guizar
Fix For: jbossws-2.0.0.CR2
Currently the marshalling layer tries to pass the exception class to JAXB. Instead it
needs to pass the fault bean, and then copy the properties to/from the actual exception
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
http://jira.jboss.com/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
http://www.atlassian.com/software/jira