Team, I recently noticed a problem perhaps related to Tom's[1] regarding the
schemaLocation value in a JAXB binding file[2].  CXF enumerates schemas
using Schema Component Descriptors (SCD's) within a WSDL differently from
Metro, resulting in JAXB binding files being incompatible between the two:

mybindingfile.xjb:
   <!--CXF -->
   <jaxb:bindings schemaLocation="ShoppingService.wsdl#types1"
node="/xs:schema"> 
   <!--Metro -->
   <jaxb:bindings schemaLocation="ShoppingService.wsdl#types?schema1"
node="/xs:schema">

Where 1,2,3 in both cases refers to the 1-based count of the xsd:schema
within the single wsdl:type.    The XJC compiler during the wsdl2java
generation process will reject the former for Metro and the latter for CXF.

I'd like this to be standardized so the binding files would be portable
between the two frameworks but I'm not sure which framework is correct. The
CXF method of incrementing the number next to the types seems inaccurate
because there can be only one wsdl:types.  On the other hand, Metro's usage
of the ? as a delimiter does not appear to be defined in the SCD candidate
recommendation (http://www.w3.org/TR/xmlschema-ref/#section-scd-syntax).  

Granted, the CXF dev list might not be the most unbiased of forums, but any
idea which team is "wrong"?

Thanks,
Glen

[1]
http://cxf.547215.n5.nabble.com/Invalid-WSDL-with-a-Jax-ws-schemaLocation-XSD-specified-td1046395.html#a1046395
[2]
http://www.jroller.com/gmazza/entry/customizing_jaxb_artifacts#BindingFile
[3] http://www.w3.org/TR/xmlschema-ref/#section-scd-syntax
-- 
View this message in context: 
http://cxf.547215.n5.nabble.com/Metro-vs-CXF-difference-in-enumerating-schemas-within-a-WSDL-tp1092957p1092957.html
Sent from the cxf-dev mailing list archive at Nabble.com.

Reply via email to