[ http://issues.apache.org/jira/browse/AXIS2-856?page=all ]
Deepal Jayasinghe resolved AXIS2-856:
-------------------------------------
Resolution: Fixed
fixed in current SVN
> WSDL generation should not be attempted for non RPC receivers
> -------------------------------------------------------------
>
> Key: AXIS2-856
> URL: http://issues.apache.org/jira/browse/AXIS2-856
> Project: Apache Axis 2.0 (Axis2)
> Type: Bug
> Environment: Windows
> Reporter: Ajay Upadhyaya
> Assignee: Deepal Jayasinghe
>
> I'm in process of migrating from axis1.x, I was using Message style services
> in my application
> signatures were like Document method(Document in)
> Which I've changed to OMElement method(OMElement in).The code migration went
> okay, app works fine. I found one issue (for which I needed workaround in my
> code). Here is the scenario
> class ServiceClass
> {
> //service wrapper
> public OMElement operation1(OMElement in){.... }
> //real implementation of service
> OMElement operation1(){.... }
> }
> services.xml
> ---------------------
> <service name="myservice">
> <description>
> my web service
> </description>
> <parameter name="ServiceClass" locked="false">ServiceClass</parameter>
> <operation name="operation1">
> <messageReceiver
> class="org.apache.axis2.receivers.RawXMLINOutMessageReceiver"/>
> <actionMapping>urn:operation1</actionMapping>
> </operation>
> </service>
> During initialization following exception is thrown
> ERROR [org.apache.axis2.deployment.ServiceBuilder] - Error in schema
> generating Sorry we don't support methods overloading !!!!
> java.lang.Exception: Sorry we don't support methods overloading !!!!
> at
> org.apache.ws.java2wsdl.SchemaGenerator.generateSchema(SchemaGenerator.java:143)
> at org.apache.axis2.deployment.util.Utils.fillAxisService (Utils.java:213)
> at
> org.apache.axis2.deployment.ServiceBuilder.populateService(ServiceBuilder.java:149)
> at
> org.apache.axis2.deployment.ServiceGroupBuilder.populateServiceGroup(ServiceGroupBuilder.java:91)
> at
> org.apache.axis2.deployment.repository.util.ArchiveReader.buildServiceGroup(ArchiveReader.java:84)
> at
> org.apache.axis2.deployment.repository.util.ArchiveReader.processServiceGroup(ArchiveReader.java:118)
> at
> org.apache.axis2.deployment.DeploymentEngine.doDeploy(DeploymentEngine.java:620)
> at
> org.apache.axis2.deployment.repository.util.WSInfoList.update(WSInfoList.java:195)
> at org.apache.axis2.deployment.RepositoryListener.update
> (RepositoryListener.java:207)
> at
> org.apache.axis2.deployment.RepositoryListener.checkServices(RepositoryListener.java:155)
> at
> org.apache.axis2.deployment.DeploymentEngine.loadServices(DeploymentEngine.java:91)
> at
> org.apache.axis2.deployment.WarBasedAxisConfigurator.loadServices(WarBasedAxisConfigurator.java:142)
> at
> org.apache.axis2.context.ConfigurationContextFactory.createConfigurationContext(ConfigurationContextFactory.java
> :42)
> at
> org.apache.axis2.transport.http.AxisServlet.initConfigContext(AxisServlet.java:213)
> at org.apache.axis2.transport.http.AxisServlet.init(AxisServlet.java:182)
> - To workaround this, I had to create a base class and move the real
> implementation method in base class
> class BaseClass
> {
> //real implementation of service
> OMElement operation1(){.... }
> }
> class ServiceClass extends BaseClass
> {
> //service wrapper
> public OMElement operation1(OMElement in){.... }
> }
> Looking into the axis source, found that
> org.apache.ws.java2wsdl.SchemaGenerator.generateSchema method uses
> getDeclaredMethods() call to find the methods in the service class, and as
> getDeclaredMethods does not returns methods inherited by a class, the
> workaround works.
> The irony is that, in my case, since I'm not using RPC message receivers, the
> SchemaGenerator class anyway is not useful, as it does not work for non RPC
> cases
> I'm wondering if not seeing inherited methods is a bug or a feature... but
> either way, this could be put somewhere in documentation. The message Sorry
> we don't support methods overloading is a bit misleading as I'm using
> overloaded (inherited) methods.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
http://www.atlassian.com/software/jira
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]