[
https://issues.apache.org/jira/browse/AXIS2-4058?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12637511#action_12637511
]
Antonio Andrade commented on AXIS2-4058:
----------------------------------------
Yes, you're right, there's not such attribute ('wrapped') defined in WSDL,
that's why I always referred to it as the attribute of the AxisMessage class
-making reference to the class itself, not to the WSDL message or part
element-. But note that THERE IS an IMPLICIT reference to it. The wrapped
attribute is used to differentiate WSDL message <wsdl:part/>s using the 'type'
attribute (that assign a type definition to the message part) vs those using
the 'element' attribute (that assign a global element declaration to it). To be
able to completely validate/represent a message using the XSD language -and for
consistency while handling messages- the WSDL11ToAxisServiceBuilder creates new
XML schema elements that wrap the message part definitions using the 'type
attribute' according to the rules to convert that message into the
Document/Literal encoding style using the WRAPPED convention (Documen/Literal
Wrapped) and that's where the name 'wrapped' comes from. In the AxisMessage,
the attribute let the user know if a new XML schema element was created for the
corresponding message <wsdl:part/>.
Sorry if I just repeated while you already know but what I'm trying to say is
that 1) the attribute is defined in the AxisMessage class, 2) the attribute
lets the user know (while parsing a WSDL) which message <wsd:part/>s caused
Axis2 to generate new XML schema elements, 3) its value is accessible through
the BindingOperationEntry inner class and 4) It'd be great if that value was
propagated into the AxisMessage.
I'm attaching the patch for this but I'm not setting the default value to
'false'. The value, I think, would be better defaulting to it for the reasons
explained in this bug's description but as long as the attribute's value is
properly set in WSDL11ToAxisServiceBuilder, the AxisMessages created should
carry the expected information.
Note: If, in the first place, the 'wrapped' attribute was not supposed to be
exposed and its usage is discourage -except when using internally- then it'd be
great if that was documented in the relevant methods' signatures; if that's not
the case, I hope the patch attached is reviewed and included into the product.
> WSDL11ToAxisServiceBuilder: the wrapped attribute of the AxisMessage class is
> not being populated
> -------------------------------------------------------------------------------------------------
>
> Key: AXIS2-4058
> URL: https://issues.apache.org/jira/browse/AXIS2-4058
> Project: Axis 2.0 (Axis2)
> Issue Type: Bug
> Components: kernel
> Affects Versions: 1.4, nightly
> Environment: Windows XP. 4GB RAM Intel Xeon dual-core @2.75Ghz
> Reporter: Antonio Andrade
> Priority: Minor
> Original Estimate: 6h
> Remaining Estimate: 6h
>
> Observed Behavior:
> 1) The wrapped attribute of the AxisMessage class is not being populated by
> the WSDL11ToAxisServiceBuilder class. The information is persisted in its
> BindingOperationEntry inner class (through the wrappedInput and wrappedOutput
> attributes) but it's never set into the appropriate AxisMessage instance.
> 2) In AxisMessage, the wrapped attribute defaults to 'true' when it should
> not (see attribute declaration/initialization). Note that
> BindingOperationEntry, the wrappedInput and wrappedOutput attributes
> default to 'true'. This IS perfectly fine since BindingOperationEntry objects
> are only instantiated whenever the encoding style for the operation is
> RPC/Literal of when the binding is HTTP and the message parts reference type
> definitions so it's OK for them to default to 'true'.
> Expected Behavior:
> 1) The wrapped attribute of the AxisMessage class should be populated by the
> WSDL11ToAxisServiceBuilder class while the bindings are being populated (see
> WSDL11ToAxisServiceBuilder.populateBinding method) just before the
> addQNameReference methods are called.
> 2) In AxisMessage, the wrapped attribute should be initialized (either
> explicitly or implicitly) to 'false' and the
> DocLitBareSchemaGenerator.processMethods method should be updated accordingly.
--
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]