sry. but default scope is of corse not possible for "fillSoapEnvelope" and all the variables which are used in the method must then be protected.

So I think declareNamespace(...) would be fine. :) The enum class can for example be named "NamespaceScope".

Christian

Christian Kloner wrote:
hi,

I know you can use the OperationClient to get access to the underlying SOAPEnvelope such that you can create it and have access to it on your own. But I find the ServiceClient more convenient because all the Envelope creation is done behind the curtain. But now, I am missing a method like "declareNamespace(OMNamespace, Type)" where Type is an enum of HEADER, BODY or ENVELOPE. Because if you look at the following message fragment, you will see, that the header contains a WebServiceAddress where for each element the wsa namespace is repeated. I think the only possibility to avoid this is to add a method which does the declaration to the Header OMElement. Is this right? Or should there be reasons why such methods should not be there?

<?xml version='1.0' encoding='UTF-8'?>
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/";>
<soapenv:Header>
<wsa:MessageID xmlns:wsa="http://schemas.xmlsoap.org/ws/2004/03/addressing"; soapenv:mustUnderstand="0">urn:uuid:E866B6CA2E6142C24C11531204167313</wsa:MessageID> <wsa:To xmlns:wsa="http://schemas.xmlsoap.org/ws/2004/03/addressing"; soapenv:mustUnderstand="0">http://127.0.1.1:8080/wsrf/services/gridminer/TestService</wsa:To> <wsa:From xmlns:wsa="http://schemas.xmlsoap.org/ws/2004/03/addressing"; soapenv:mustUnderstand="0"> <wsa:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</wsa:Address>
</wsa:From>
<wsa:Action xmlns:wsa="http://schemas.xmlsoap.org/ws/2004/03/addressing"; soapenv:mustUnderstand="0">http://testservice.gridminer.org/TestPortType/getAttribute</wsa:Action> <ns1:TestResourceKey xmlns:ns1="http://keys.ae.gridminer.org/keys"; soapenv:mustUnderstand="0">23743079</ns1:TestResourceKey>
</soapenv:Header>

If it should not be there, is there a possiblity to make the method "fillSoapEnvelope(MessageContext, OMElement)" protected or to use default scope? Because then i will simple extend ServiceClient and override the method.
thank you.

Christian

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to