Hi Arjen,
that fault handling isn't very well documentated(jax-ws, axis, ...). Please let my describe my idea to you.
That's the important part of my schema:
Code:
<xsd:simpleType name="ExceptionCode">
<xsd:restriction base="xsd:string">
<xsd:enumeration value = "DATAOBJECT_DOES_NOT_EXIST" />
[...]
</xsd:restriction>
</xsd:simpleType>
<xsd:complexType name="DataAccessFault">
<xsd:sequence>
<xsd:element name="code" type="tns:ExceptionCode"/>
<xsd:element name="message" type="xsd:string" />
</xsd:sequence>
</xsd:complexType>
<xsd:element name="ObjectDoesNotExistFault" type="tns:ObjectDoesNotExistFaultType"/>
<xsd:complexType name="ObjectDoesNotExistFaultType">
<xsd:complexContent>
<xsd:extension base="tns:DataAccessFault"/>
</xsd:complexContent>
</xsd:complexType>
I added to my wsdl a fault element, of course. 
Code:
<wsdl:operation name="get">
<wsdl:input name="getRequest" message="tns:getRequest"/>
<wsdl:output name="getResponse" message="tns:getResponse"/>
<wsdl:fault name="ObjectDoesNotExistFault" message="tns:ObjectDoesNotExistFault"/>
</wsdl:operation>
Two possible strategies: I could use a new Exception which says what gone wrong (ObjectDoesNotExistFault) or i use an "generic exception" and add a constant. In my example above, i used both.
If i use a technology like axis or xfire to generate client stubs, they can throw my ObjectDoesNotExistFault exception(in axis it's an AxisFault which is a RemoteException).
My Server technology SWS+JAXB2 also creating this exceptions. I simply throw it.
Your nice SoapFaultMappingExceptionResolver (or my own one) get the exception. Now comes the important part... 
- How should i convert my ObjectDoesNotExistFault exception on my server into a ObjectDoesNotExistFault exception on the client?
- Should i use the constant as a subcode (Soap 1.2) value or should i add something to the details section?
- I have to put the right information in the soap fault element and all client technologies should understand it and throw an exception. Hot should the xml message look like?
- Do you have any experiance on that? That would be really great...
Ingo