AW: [soaplite] WS-Trust / WS Security / RequestSecurityToken, was: namespace
- Hi Kartik,
i've fixed an cleaned your code. Now, with the attached code, you will
generate semantically the same request,
as your reference one. I mean semantically as the prefixes are different
sometimes, but they mean the same.
Also, your reference request contained unnecessary xmlns attribute, I've
What's the point?
A namespace definition may occur anywhere in the code and is valid in that
element as well as in all chils.
(except it is overriden in childs)
"ns3:UsernameToken" and "wsu:usernameToken" are equal, if there the prefixes
are defined als follows:
So it is perfectly ok to use just one prefix.
By default, SOAP::Lite puts the xmlns:* attributes into the Envelope, which
is correct. You also do not need to
generate the Header element, SOAP::Lite generates it when needed.
> I) You also replied to another email in the soaplite, yahooin priniple yes. If you use this, you can write:
> email. Where you specified that through this command:
> ce/"); # namespace of your method
> We can generate
> <login xmlns="http://www.betfair.com/publicapi/v3/BFGlobalService/">
> Can I do this for my requirement too?
I.e. you do not need prefixes ($prefix2) for your elements inside
RequestSecurityToken, when using ->uri(NS) and
when all request elements are within this namespace.
> 2) You also mentioned that I can register namespaces insideright.
> SOAP:Envelop , and then do not need to do that stuff again
> for SOAP::Header , SOAP:Body?
> Are you sure that the code which you sent me , ( where we areyes. Except - the server does strange things with the request :-/
> not inserting namespaces inside Header / body ) would also work?
But I don't excpect the server to do strange things...
>You can. But why do you need them? It is ok to put a namespace declaration
> SOAP::Lite I guess creates the header and body automatically
> when I issue the method call at runtime.I do not have the
> control to insert namespaces there.
on a valid "place". Envelope is
a valid place.
Anyway, you can supply a namespace for every element, including the method
name (RequestSecurityToken) by using:
"xmlns:xyxyxy => "urn:theNamespace" }), ...