You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-dev@axis.apache.org by "Venkat Reddy (JIRA)" <ax...@ws.apache.org> on 2005/06/01 14:40:54 UTC
[jira] Resolved: (AXIS-1975) problem with operations with out parameters
[ http://issues.apache.org/jira/browse/AXIS-1975?page=all ]
Venkat Reddy resolved AXIS-1975:
--------------------------------
Resolution: Fixed
> problem with operations with out parameters
> -------------------------------------------
>
> Key: AXIS-1975
> URL: http://issues.apache.org/jira/browse/AXIS-1975
> Project: Axis
> Type: Bug
> Components: Basic Architecture
> Versions: 1.2
> Environment: Windows
> Reporter: Cédric Chabanois
> Attachments: bugout.zip, patch-AXIS-1975.txt
>
> I declared an operation with an out parameter :
> <service name="bugout" provider="java:RPC">
> <parameter name="allowedMethods" value="*"/>
> <parameter name="wsdlPortType" value="bugout"/>
> <parameter name="wsdlTargetNamespace" value="http://bugout/"/>
> <parameter name="className" value="test.server.BugOutBindingImpl"/>
> <operation name="letsbug">
> <parameter mode="OUT" name="outparam"/>
> <parameter mode="IN" name="inparam"/>
> </operation>
> </service>
> public void letsbug(ShortHolder outparam, byte inparam)
> throws java.rmi.RemoteException
> {
> outparam.value = 80;
> }
> When I invoke this operation, I got the following exception :
> - Tried to invoke method public void test.server.BugOutBindingImpl.letsbug(javax.xml.rpc.holders.ShortHolder,byte) throw
> s java.rmi.RemoteException with arguments java.lang.Byte,javax.xml.rpc.holders.ShortHolder. The arguments do not match
> the signature.
> java.lang.IllegalArgumentException: argument type mismatch
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
> at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> at java.lang.reflect.Method.invoke(Method.java:585)
> at org.apache.axis.providers.java.RPCProvider.invokeMethod(RPCProvider.java:388)
> at org.apache.axis.providers.java.RPCProvider.processMessage(RPCProvider.java:283)
> at org.apache.axis.providers.java.JavaProvider.invoke(JavaProvider.java:319)
> at org.apache.axis.strategies.InvocationStrategy.visit(InvocationStrategy.java:32)
> at org.apache.axis.SimpleChain.doVisiting(SimpleChain.java:118)
> at org.apache.axis.SimpleChain.invoke(SimpleChain.java:83)
> at org.apache.axis.handlers.soap.SOAPService.invoke(SOAPService.java:453)
> at org.apache.axis.server.AxisServer.invoke(AxisServer.java:281)
> at org.apache.axis.transport.http.AxisServlet.doPost(AxisServlet.java:699)
> at javax.servlet.http.HttpServlet.service(HttpServlet.java:709)
> at org.apache.axis.transport.http.AxisServletBase.service(AxisServletBase.java:327)
> at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
> at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
> at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
> at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:214)
> at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
> at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
> at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
> at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
> at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
> at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:825)
> at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:738)
> at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:526)
> at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80)
> at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684)
> at java.lang.Thread.run(Thread.java:595)
> I debugged axis and found that in org.apache.axis.providers.java.RPCProvider.processMessage, the arguments to invokeMethod were :
> [Byte : 18, javax.xml.rpc.holders.ShortHolder]
> They are not in the right order...
--
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