[
https://issues.apache.org/jira/browse/AXIS2-3907?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Stefan Vladov updated AXIS2-3907:
---------------------------------
Description:
AxisService2WSDL11 serializes a policy reference attached on the message (in or
out message) at the input (respectively output) of the wsdl operation in the
portType definition. This essentially happens in the generatePortType method
that is calling
addPolicyAsExtElement(inaxisMessage, input)
(respectively
addPolicyAsExtElement(outAxisMessage, output)
for the output). On the other hand the WSDL11ToAxisServiceBuilder expects to
find the eventual policy at the message declaration in the wsdl definition.
Examining the
WSDL11ToAxisServiceBuilder #populateOperations
when calling
copyExtensibleElements
for the respective message the builder passes
message.getExtensibilityElements()
instead of for example
wsdl4jInputMessage.getExtensibilityElements()
(which would get the policy reference from the Input rather than from the
message declaration.) As a result the message level policy is not read from the
wsdl generated by the same engine.
I'm not sure which is the right place for the message policy (probably both are
right) or whether there is a recommendation about this but it would be nice to
have the policy reference deserialized from and serialized at the same place -
for example at the message declaration. I'll attach a patch if you like the
proposal...
was:
AxisService2WSDL11 serializes a policy reference attached on the message (in or
out message) at the input (respectively output) of the wsdl operation in the
portType definition. This essentially happens in the generatePortType method
that is calling {code}addPolicyAsExtElement(inaxisMessage, input) {code}
(respectively {code}addPolicyAsExtElement(outAxisMessage, output){code} for
the output). On the other hand the WSDL11ToAxisServiceBuilder expects to find
the eventual policy at the message declaration in the wsdl definition.
Examining the {code}WSDL11ToAxisServiceBuilder #populateOperations{code}, when
calling {code}copyExtensibleElements{code} for the respective message the
builder passes {code}message.getExtensibilityElements(){code} instead of for
example {code}wsdl4jInputMessage.getExtensibilityElements(){code} (which would
get the policy reference from the Input rather than from the message
declaration.) As a result the message level policy is not read from the wsdl
generated by the same engine.
I'm not sure which is the right place for the message policy (probably both are
right) or whether there is a recommendation about this but it would be nice to
have the policy reference deserialized from and serialized at the same place -
for example at the message declaration. I'll attach a patch if you like the
proposal...
> Message level policy not serialized correctly in wsdl 1.1
> ---------------------------------------------------------
>
> Key: AXIS2-3907
> URL: https://issues.apache.org/jira/browse/AXIS2-3907
> Project: Axis 2.0 (Axis2)
> Issue Type: Bug
> Components: kernel
> Affects Versions: 1.4
> Environment: any
> Reporter: Stefan Vladov
> Attachments: AxisService2WSDL11_message_policy.txt, TestEcho2.wsdl,
> TestEcho2Result.wsdl
>
>
> AxisService2WSDL11 serializes a policy reference attached on the message (in
> or out message) at the input (respectively output) of the wsdl operation in
> the portType definition. This essentially happens in the generatePortType
> method that is calling
> addPolicyAsExtElement(inaxisMessage, input)
> (respectively
> addPolicyAsExtElement(outAxisMessage, output)
> for the output). On the other hand the WSDL11ToAxisServiceBuilder expects to
> find the eventual policy at the message declaration in the wsdl definition.
> Examining the
> WSDL11ToAxisServiceBuilder #populateOperations
> when calling
> copyExtensibleElements
> for the respective message the builder passes
> message.getExtensibilityElements()
> instead of for example
> wsdl4jInputMessage.getExtensibilityElements()
> (which would get the policy reference from the Input rather than from the
> message declaration.) As a result the message level policy is not read from
> the wsdl generated by the same engine.
> I'm not sure which is the right place for the message policy (probably both
> are right) or whether there is a recommendation about this but it would be
> nice to have the policy reference deserialized from and serialized at the
> same place - for example at the message declaration. I'll attach a patch if
> you like the proposal...
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]