Hi,
I am trying to using saaj to create ebXML soap message. I have two problems:
1) I cannot change the prefix of the Envelope, Header etc. I would like SOAP 
instead of soapenv. 
2) More importantly, it repeats the namespace uri on each element, which is not 
necessary as it is declared in a parent element.

Example soap message from code:
<soapenv:Envelope xmlns:soapenv="http://schemas.xmls
oap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema"; xmlns:xsi="
http://www.w3.org/2001/XMLSchema-instance"; xmlns:SOAP="http://schemas.xmlsoap.or
g/soap/envelope" xmlns:eb="http://www.oasis-open.org/committees/ebxml-msg/schema
/mgs-header-2_0.xsd">
<soapenv:Header>
<eb:MessageHeader xmlns:eb="http://www.oasis-open.org/committees/ebxml-msg/sch
ema/mgs-header-2_0.xsd">
<eb:From xmlns:eb="http://www.oasis-open.org/committees/ebxml-msg/schema/mgs-
header-2_0.xsd">
<eb:PartyId xmlns:eb="http://www.oasis-open.org/committees/ebxml-msg/schema/
mgs-header-2_0.xsd"/>
</eb:From>
</eb:MessageHeader>
</soapenv:Header>
<soapenv:Body/>

I would like:
<SOAP:Envelope xmlns:SOAP="http://schemas.xmls
oap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema"; xmlns:xsi="
http://www.w3.org/2001/XMLSchema-instance"; xmlns:SOAP="http://schemas.xmlsoap.or
g/soap/envelope" xmlns:eb="http://www.oasis-open.org/committees/ebxml-msg/schema
/mgs-header-2_0.xsd">
<SOAP:Header>
<eb:MessageHeader>
<eb:From>
<eb:PartyId/>
</eb:From>
</eb:MessageHeader>
</SOAP:Header>
<SOAP:Body/>


Following is my code:
SOAPConnectionFactory connFactory = SOAPConnectionFactory.newInstance();
SOAPConnection connection = connFactory.createConnection();
SOAPMessage message = MessageFactory.newInstance().createMessage();
SOAPPart soapPart = message.getSOAPPart();


SOAPEnvelope envelope = soapPart.getEnvelope();


envelope.setPrefix("SOAP");
envelope.addNamespaceDeclaration("SOAP", 
"http://schemas.xmlsoap.org/soap/envelope";);
envelope.addNamespaceDeclaration("eb", 
"http://www.oasis-open.org/committees/ebxml-msg/schema/mgs-header-2_0.xsd";);

SOAPFactory soapFactory = SOAPFactory.newInstance();
Name messageHeader = 
soapFactory.createName("MessageHeader","eb","http://www.oasis-open.org/committe 
es/ebxml-msg/schema/mgs-header-2_0.xsd");


SOAPHeader header = message.getSOAPHeader();
SOAPHeaderElement headerElement = header.addHeaderElement(messageHeader);

SOAPElement from = headerElement.addChildElement("From", "eb");
from.addChildElement("PartyId", "eb");
SOAPElement to = headerElement.addChildElement("To", "eb");
to.addChildElement("PartyId", "eb");


Any ideas?

Many thanks for anyone able to help with this.


View the original post : 
http://www.jboss.org/index.html?module=bb&op=viewtopic&p=3858528#3858528

Reply to the post : 
http://www.jboss.org/index.html?module=bb&op=posting&mode=reply&p=3858528


-------------------------------------------------------
SF email is sponsored by - The IT Product Guide
Read honest & candid reviews on hundreds of IT Products from real users.
Discover which products truly live up to the hype. Start reading now. 
http://productguide.itmanagersjournal.com/
_______________________________________________
JBoss-Development mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/jboss-development

Reply via email to