...
A: Reference -> interface.java -> Databinding(JAXB) -> binding.sca -> binding.sca -> Databinding(JAXB) -> interface.java -> Service -> implementation.java(local)
B: Reference -> interface.java -> Databinding(JAXB) -> binding.sca -> binding.sca -> Databinding(JAXB) -> interface.java -> Service -> implementation.java(@Remotable)
C: Reference -> interface.java -> Databinding(JAXB) -> Databinding(Axiom) -> binding.ws -> binding.ws -> interface.java -> Databindng(Axiom) -> Databinding(JAXB) -> Service -> implementation.java(@Remotable)
C/MTOM: Reference -> interface.java -> Databinding (JAXB) -> Databinding(Axiom) -> binding.ws -> SOAP/MTOM -> binding.ws -> interface.java -> Databindng(Axiom) -> Databinding (JAXB) -> Service -> implementation.java(@Remotable)
...
D: Reference -> interface.wsdl (doc/lit/wrapped) -> Databinding(JAXB) -> Databinding(Axiom) -> binding.ws -> binding.ws -> interface.wsdl(doc/lit/wrapped) -> Databindng(Axiom) -> Databinding(JAXB) -> Service -> implementation.java(@Remotable)
D/MTOM: Reference -> interface.wsdl (doc/lit/wrapped) -> Databinding (JAXB) -> Databinding(Axiom) -> binding.ws -> SOAP/MTOM -> binding.ws -> interface.wsdl(doc/lit/wrapped) -> Databindng(Axiom) -> Databinding (JAXB) -> Service -> implementation.java(@Remotable)
E: Reference -> interface.java -> Databinding(JAXB) -> Databinding(Axiom) -> binding.ws -> binding.ws -> interface.wsdl(doc/lit/wrapped) -> Databindng(Axiom) -> Databinding(JAXB) -> Service -> implementation.java(@Remotable)
F: Reference -> interface.wsdl(doc/lit/wrapped) -> Databinding(JAXB) -> Databinding(Axiom) -> binding.ws -> binding.ws -> interface.java -> Databindng(Axiom) -> Databinding(JAXB) -> Service -> implementation.java(@Remotable)
G: Reference -> interface.wsdl (doc/lit/bare) -> Databinding(JAXB) -> Databinding(Axiom) -> binding.ws -> binding.ws -> interface.wsdl(doc/lit/bare) -> Databindng(Axiom) -> Databinding(JAXB) -> Service -> implementation.java(@Remotable)
H: Reference -> interface.java -> Databinding(JAXB) -> Databinding(Axiom) -> binding.ws -> binding.ws -> interface.wsdl(doc/lit/bare) -> Databindng(Axiom) -> Databinding(JAXB) -> Service -> implementation.java(@Remotable)
I: Reference -> interface.wsdl(doc/lit/bare) -> Databinding(JAXB) -> Databinding(Axiom) -> binding.ws -> binding.ws -> interface.java -> Databindng(Axiom) -> Databinding(JAXB) -> Service -> implementation.java(@Remotable)
...
Data Type | A | B | C | C ?wsdl | C/MTOM | D | D/MTOM | E | F | G | H | I | Notes | ||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
PrimitiveTypes |
|
|
|
|
|
|
|
|
|
|
|
|
| ||
boolean |
|
|
|
|
|
|
|
|
|
|
|
|
| ||
byte |
|
|
|
|
|
|
|
|
|
|
|
|
| ||
short |
|
|
|
|
|
|
|
|
|
|
|
|
| ||
int |
|
|
|
|
|
|
|
|
|
|
|
|
| ||
long |
|
|
|
|
|
|
|
|
|
|
|
|
| ||
float |
|
|
|
|
|
|
|
|
|
|
|
|
| ||
double |
|
|
|
|
|
|
|
|
|
|
|
|
| ||
Standard Types |
|
|
|
|
|
|
|
|
|
|
|
|
| ||
java.lang.String |
|
|
|
|
|
|
|
|
|
|
|
|
| ||
java.math.BigInteger |
|
|
|
|
|
|
|
| |
|
|
|
| ||
java.math.BigDecimal |
|
|
|
|
|
|
|
|
|
|
|
|
| ||
java.util.Calendar |
|
|
|
|
| |
|
|
|
|
|
|
| ||
java.util.Date |
|
|
|
|
|
|
|
|
|
|
|
|
| ||
javax.xml.namespace.QName |
|
|
|
|
|
|
|
|
|
|
|
|
| ||
java.net.URI |
|
|
|
|
|
|
|
|
|
|
|
|
| ||
javax.xml.datatype.XMLGregorianCalendar |
|
|
|
|
|
|
| | |
|
|
|
| ||
javax.xml.datatype.Duration |
|
|
|
|
|
|
|
|
|
|
|
|
| ||
java.lang.Object |
|
|
|
|
|
|
|
|
|
|
|
|
| ||
java.awt.Image |
|
|
|
|
|
|
|
| |
|
|
|
| ||
javax.activation.DataHandler |
|
|
|
|
|
|
|
|
|
|
|
| Should map to xs:base64Binary. TUSCANY-2451 | ||
javax.xml.transform.Source |
|
|
|
|
|
|
|
|
|
|
|
| TUSCANY-2387 | ||
java.util.UUID |
|
|
|
|
|
|
|
|
|
|
|
|
| ||
Arrays |
|
|
|
|
|
|
|
|
|
|
|
|
| ||
boolean |
|
|
|
|
|
|
|
|
|
|
|
|
| ||
<ac:structured-macro ac:name="unmigrated-wiki-markup" ac:schema-version="1" ac:macro-id="619e70b0-533a-493e-9bbf-f5fc73a43f1e"><ac:plain-text-body><![CDATA[ | byte |
|
|
|
|
|
|
|
|
|
|
|
| A byte[] must map to xs:base64Binary by default | ]]></ac:plain-text-body></ac:structured-macro> |
short |
|
|
|
|
|
|
|
|
|
|
|
|
| ||
int |
|
|
|
|
|
|
|
|
|
|
|
|
| ||
long |
|
|
|
|
|
|
|
|
|
|
|
|
| ||
float |
|
|
|
|
|
|
|
|
|
|
|
|
| ||
double |
|
|
|
|
|
|
|
|
|
|
|
|
| ||
java.lang.String |
|
|
|
|
|
|
| |
|
|
|
|
| ||
java.math.BigInteger |
|
|
|
|
|
|
|
|
|
|
|
|
| ||
java.math.BigDecimal |
|
|
|
|
|
|
|
|
|
|
|
|
| ||
java.util.Calendar |
|
|
|
|
|
|
| |
|
|
|
|
| ||
java.util.Date |
|
|
|
|
|
|
|
|
|
|
|
|
| ||
javax.xml.namespace.QName |
|
|
|
|
|
|
|
|
|
|
|
|
| ||
java.net.URI |
|
|
|
|
|
|
|
|
|
|
|
|
| ||
javax.xml.datatype.XMLGregorianCalendar |
|
|
|
|
|
|
|
|
|
|
|
|
| ||
javax.xml.datatype.Duration |
|
|
|
|
|
|
|
| |
|
|
|
| ||
java.lang.Object |
|
|
|
|
|
|
|
|
|
|
|
| |||
java.awt.Image |
|
|
|
|
|
|
|
|
|
|
|
|
| ||
javax.activation.DataHandler |
|
|
|
|
|
|
|
|
|
|
|
|
| Should map to xs:base64Binary. TUSCANY-2451 | |
javax.xml.transform.Source |
|
|
|
|
|
|
|
|
|
|
|
| TUSCANY-2386, TUSCANY-2387, TUSCANY-2452 | ||
java.util.UUID |
|
|
|
|
|
|
|
|
|
|
|
|
| ||
Collections |
|
|
|
|
|
|
|
|
|
|
|
|
| ||
List<String>, ArrayList<String> |
|
|
|
|
|
|
|
|
|
|
|
|
| ||
Map<String, String>, HashMap<String, String> |
|
|
|
|
|
|
|
|
|
|
|
|
| ||
|
|
|
|
|
|
|
|
|
|
|
|
|
| ||
Polymorphic Types |
|
|
|
|
|
|
|
|
|
|
|
|
| ||
Case1: Bean3 extends Bean2 |
|
|
|
|
|
|
|
|
|
|
|
| Unmarshalls to Bean2 always. | ||
Parameterized Types |
|
|
|
|
|
|
|
|
|
|
|
|
| ||
TypeExplicit |
|
|
|
|
|
|
|
|
|
|
|
| <ac:structured-macro ac:name="unmigrated-wiki-markup" ac:schema-version="1" ac:macro-id="b9985a79-0f37-4b14-b5e5-26eeae008e64"><ac:plain-text-body><![CDATA[ | ||
TypeUnbound |
|
|
|
|
|
|
|
|
|
|
|
| Unmarshalls to Object[] always. | ]]></ac:plain-text-body></ac:structured-macro> | |
TypeExtends |
|
|
|
|
|
|
|
|
|
|
|
| Unmarshalls to Bean2 always. | ||
RecursiveTypeBound |
|
|
|
|
|
|
|
|
|
|
|
| Unmarshalls to Bean1<String> always. | ||
WildcardUnbound |
|
|
|
|
|
|
|
|
|
|
|
|
| ||
WildcardSuper |
|
|
|
|
|
|
|
|
|
|
|
|
| ||
WildcardExtends |
|
|
|
|
|
|
|
|
|
|
|
| Unmarshalls to Bean2 always. | ||
|
|
|
|
|
|
|
|
|
|
|
|
|
| ||
Variable Arguments |
|
|
|
|
|
|
|
|
|
|
|
|
| ||
String... |
|
|
|
|
|
|
|
|
|
|
|
|
| ||
Exceptions |
|
|
|
|
|
|
|
|
|
|
|
|
| ||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
...
Code Block |
---|
<xs:complexType name="someMethodTypeExtends">
<xs:sequence>
<xs:element name="arg0" type="tns:bean2" nillable="true" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="someMethodTypeExtendsResponse">
<xs:sequence>
<xs:element name="return" type="tns:bean1" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
<xs:element name="someMethodTypeExtends" type="tns:someMethodTypeExtends"/>
<xs:element name="someMethodTypeExtendsResponse" type="tns:someMethodTypeExtendsResponse"/>
<message name="someMethodTypeExtends">
<part name="parameters" element="tns:someMethodTypeExtends"/>
</message>
<message name="someMethodTypeExtendsResponse">
<part name="parameters" element="tns:someMethodTypeExtendsResponse"/>
</message>
|
...