Hi

I need to communicate with the XMLBus from IONA. So, it's necessary to use
the XML Schema 2001. But the soap package use by default 1999. I've read in
the documentation guide\interop.html, that I can download the source code
and change the Constants.java:
      public static final String NS_URI_CURRENT_SCHEMA_XSI =
NS_URI_2001_SCHEMA_XSI;
      public static final String NS_URI_CURRENT_SCHEMA_XSD =
NS_URI_2001_SCHEMA_XSD;

But still, the old Schema will be used.

Then, I searched through the source code and found the following in
SOAPMappingRegistry.java:
      public String schemaURI = Constants.NS_URI_1999_SCHEMA_XSD;
      QName [] schemaQNames = schema1999QNames;

If it is hard coded, it will not work. After the following change, it
worked:
      public String schemaURI = Constants.NS_URI_CURRENT_SCHEMA_XSD;
      QName [] schemaQNames = null;

The only problem is, that there is still an attribute definition in the
Envelope element in the soap request message:
      <?xml version='1.0' encoding='UTF-8'?>
      <SOAP-ENV:Envelope xmlns:SOAP-ENV
="http://schemas.xmlsoap.org/soap/envelope/"; xmlns:xsi
="http://www.w3.org/1999/XMLSchema-instance";    xmlns:xsd
="http://www.w3.org/1999/XMLSchema";>
      <SOAP-ENV:Body>
      <ns1:echoFloat xmlns:ns1="http://soapinterop.org/";
SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/";>
      <inputFloat xmlns:ns2="http://www.w3.org/2001/XMLSchema"; xsi:type
="ns2:float">333.444</inputFloat>
      </ns1:echoFloat>
      </SOAP-ENV:Body>
      </SOAP-ENV:Envelope>


Did anybody have the same problem and found a better solution? Can I force
that the Schema 2001 will be used in the whole SOAP message?
Thanks

Oliver








******************* BITTE BEACHTEN *******************
Diese Nachricht (wie auch allfällige Anhänge dazu) beinhaltet
möglicherweise vertrauliche oder gesetzlich geschützte Daten oder
Informationen. Zum Empfang derselben ist (sind) ausschliesslich die
genannte(n) Person(en) bestimmt. Falls Sie diese Nachricht
irrtümlicherweise erreicht hat, sind Sie höflich gebeten, diese unter
Ausschluss jeder Reproduktion zu zerstören und die absendende Person
umgehend zu benachrichtigen. Vielen Dank für Ihre Hilfe.

Reply via email to