Angepasste Datenbinder für JAX-RPC-Anwendungen
Ein angepasster Datenbinder wird für die Zuordnung von XML-Schematypen zu Java™-Objekten verwendet. Angepasste Datenbinder stellen Bindungen für XML-Schematypen bereit, die von der aktuellen JAX-RPC-Spezifikation (Java API for XML-based Remote Call Procedure) nicht unterstützt werden.
- Das Laufzeitsystem erkennt den Code <sdo:Datagraph>.
- Die Laufzeit fragt das Typenzuordnungssystem ab, um den angepassten Datenbinder für die Datengraph-Daten zu ermitteln, z. B. SDOCustomBinder.
- Ein SOAPElement wird erstellt, das den ankommenden SDO-Datengraph darstellt.
- Die Laufzeit übergibt das SOAPElement an den SDOCustomBinder.

Beim Serialisieren eines Java-Objekts läuft ein ähnlicher Prozess ab. Die Laufzeitumgebung lokalisiert einen angepassten Datenbinder und wandelt das Java-Objekt in ein SOAPElement um. Die Laufzeitumgebung serialisiert das SOAPElement in die Rohnachricht, die in den Ausgabedatenstrom transportiert wird.
<xsd:schema
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:sdo="commonj.sdo"
targetNamespace="commonj.sdo">
<xsd:element name="datagraph" type="sdo:DataGraphType"/>
<xsd:complexType name="DataGraphType">
<xsd:complexContent>
<xsd:extension base="sdo:BaseDataGraphType">
<xsd:sequence>
<xsd:any minOccurs="0" maxOccurs="1"
namespace="##other" processContents="lax"/>
</xsd:sequence>
</xsd:extension>
</xsd:complexContent>
</xsd:complexType>
<xsd:complexType name="BaseDataGraphType" abstract="true">
<xsd:sequence>
<xsd:element name="models" type="sdo:ModelsType" minOccurs="0"/>
<xsd:element name="xsd" type="sdo:XSDType" minOccurs="0"/>
<xsd:element name="changeSummary"
type="sdo:ChangeSummaryType" minOccurs="0"/>
</xsd:sequence>
<xsd:anyAttribute namespace="##other" processContents="lax"/>
</xsd:complexType>
<xsd:complexType name="ModelsType">
<xsd:sequence>
<xsd:any minOccurs="0" maxOccurs="unbounded"
namespace="##other" processContents="lax"/>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="XSDType">
<xsd:sequence>
<xsd:any minOccurs="0" maxOccurs="unbounded"
namespace="http://www.w3.org/2001/XMLSchema" processContents="lax"/>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="ChangeSummaryType">
<xsd:sequence>
<xsd:any minOccurs="0" maxOccurs="unbounded"
namespace="##any" processContents="lax"/>
</xsd:sequence>
<xsd:attribute name="create" type="xsd:string"/>
<xsd:attribute name="delete" type="xsd:string"/>
</xsd:complexType>
</xsd:schema>
WebSphere Application Server definiert das Interface CustomBinder, das konkrete angepasste Bindungen für einen speziellen XML-Schematyp implementiert.
Der Provider für angepasste Bindungen wird verwendet, um die angepassten Bindungen in der Laufzeit zu implementieren. Informationen dazu, wie Sie Ihre angepassten Datenbinder in das Befehlszeilentool WSDL2Java für die Entwicklung integrieren, finden Sie in den Artikeln zu Providern für angepasste Bindungen. Sie können außerdem die Informationen zu Verwendungsmustern hinzuziehen, in denen gezeigt wird, wie das Providerpaket in die Laufzeitumgebung implementiert wird und welche Rollen an dem angepassten Bindungsprozess beteiligt sind.