[
https://issues.apache.org/jira/browse/AXIS2-4110?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Stefan Vladov updated AXIS2-4110:
---------------------------------
Attachment: test.xsd
> wsdl2java generates incorrect callback handler methods in unpacked mode
> -----------------------------------------------------------------------
>
> Key: AXIS2-4110
> URL: https://issues.apache.org/jira/browse/AXIS2-4110
> Project: Axis 2.0 (Axis2)
> Issue Type: Bug
> Components: codegen
> Affects Versions: 1.4.1, 1.4
> Reporter: Stefan Vladov
> Attachments: Test.wsdl, test.xsd, TestBinding.wsdl,
> TestPortType.wsdl, xml.xsd
>
>
> wsdl2java generates incorrect callback handlers in unpacked mode. The
> problematic code seems to be in the
> AxisServiceBasedMultiLanguageEmitter#emitStub(), namely:
> if (!codeGenConfiguration.isPackClasses()) {
> // write the call back handlers
> writeCallBackHandlers();
> }
> Note that this is called before the local variable this.axisBinding is
> populated.
> writeCallBackHandlers subsequently calls createDOMDocumentForCallbackHandler
> which on its side uses loadOperations(Document doc, Element rootElement,
> String mep). The latter one relies on the local axisBinding being already set
> to retrieve the binding operations using this.axisBinding.getChildren()
> As a result the generated callback handler includes wrong methods.
> To simulate the issue one could use the attached wsdl with the "-u" option.
> The issue seems to be introduces in the 590668 revision, commit comment says:
> "use binding operation to get the polices. earlier it has assumed that the
> binding Qname and the operation Qname should be equal. but this is not
> the case if there are in two different wsdl files."
> A simple fix would be to move the already mentioned code in the
> AxisServiceBasedMultiLanguageEmitter#emitStub after the loop over the service
> endpoints.
--
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]