[ http://issues.apache.org/jira/browse/AXIS-1833?page=comments#action_60356 ] Ivan Di Pietro commented on AXIS-1833: --------------------------------------
I tried with the Axis 1.2 RC3, but the problem seems to be still unsolved. > 'no such operation' fault with xsi:nil inputs > --------------------------------------------- > > Key: AXIS-1833 > URL: http://issues.apache.org/jira/browse/AXIS-1833 > Project: Axis > Type: Bug > Versions: 1.1 > Environment: client: Windows 2000 Professional, JDK 1.4.1_01 > server: Linux Fedora 1, Tomcat 4.1 > Reporter: Ivan Di Pietro > > I've got a problem with a web service whose input can take "null" value. > Remote java method takes 18 parameters; its prototype is: > public String bvq(int mx, > int my, > int ndecimaldigit, > int classcolumn, > int seed, > float gamma0, > float R, > int iterations, > float gamma0bvq, > float Rbvq, > int bvqit2, > int bvqiterations, > float delta, > float noise, > int errstep, > int errstart, > int errend, > int stopflag) > The parameters "errstart" and "errend" are optional and the client > application (in Java, using JAX-RPC) sets them as "null" when they are not > required. > JAX-RPC works normally, so I can see the SOAP request message on the > SOAP-monitor. > <errstart xsi:nil="true"/> > <errend xsi:nil="true"/> > Parameters "errstart" and "errend" are correctly recognized as nillable. > On the other hand, I get an Axis fault (Server.userException) with a fault > detail specifying "No such operation 'bvq'". > ************* fault > output***************************************************************** > AxisFault > faultCode: Server.userException > faultSubcode: > faultString: No such operation 'bvq' > faultActor: > faultNode: > faultDetail: > {http://xml.apache.org/axis/}stackTrace: AxisFault > faultCode: Server.userException > faultSubcode: > faultString: No such operation &apos;bvq&apos; > faultActor: > faultNode: > faultDetail: > No such operation 'bvq' > at > org.apache.axis.message.SOAPFaultBuilder.createFault(SOAPFaultBuilder.java:260) > at > org.apache.axis.message.SOAPFaultBuilder.endElement(SOAPFaultBuilder.java:169) > at > org.apache.axis.encoding.DeserializationContextImpl.endElement(DeserializationContextImpl.java:1015) > at org.apache.crimson.parser.Parser2.maybeElement(Parser2.java:1528) > at org.apache.crimson.parser.Parser2.content(Parser2.java:1779) > at org.apache.crimson.parser.Parser2.maybeElement(Parser2.java:1507) > at org.apache.crimson.parser.Parser2.content(Parser2.java:1779) > at org.apache.crimson.parser.Parser2.maybeElement(Parser2.java:1507) > at org.apache.crimson.parser.Parser2.parseInternal(Parser2.java:500) > at org.apache.crimson.parser.Parser2.parse(Parser2.java:305) > at > org.apache.crimson.parser.XMLReaderImpl.parse(XMLReaderImpl.java:442) > at javax.xml.parsers.SAXParser.parse(SAXParser.java:345) > at > org.apache.axis.encoding.DeserializationContextImpl.parse(DeserializationContextImpl.java:242) > at org.apache.axis.SOAPPart.getAsSOAPEnvelope(SOAPPart.java:538) > at org.apache.axis.Message.getSOAPEnvelope(Message.java:376) > at org.apache.axis.client.Call.invokeEngine(Call.java:2583) > at org.apache.axis.client.Call.invoke(Call.java:2553) > at org.apache.axis.client.Call.invoke(Call.java:2248) > at org.apache.axis.client.Call.invoke(Call.java:2171) > at org.apache.axis.client.Call.invoke(Call.java:1691) > at > ClientFactory$SubmitListener.actionPerformed(ClientFactory.java:826) > at > javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1764) > at > javax.swing.AbstractButton$ForwardActionEvents.actionPerformed(AbstractButton.java:1817) > at > javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:419) > at > javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:257) > at > javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:245) > at java.awt.Component.processMouseEvent(Component.java:5093) > at java.awt.Component.processEvent(Component.java:4890) > at java.awt.Container.processEvent(Container.java:1566) > at java.awt.Component.dispatchEventImpl(Component.java:3598) > at java.awt.Container.dispatchEventImpl(Container.java:1623) > at java.awt.Component.dispatchEvent(Component.java:3439) > at > java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:3450) > at > java.awt.LightweightDispatcher.processMouseEvent(Container.java:3165) > at java.awt.LightweightDispatcher.dispatchEvent(Container.java:3095) > at java.awt.Container.dispatchEventImpl(Container.java:1609) > at java.awt.Window.dispatchEventImpl(Window.java:1585) > at java.awt.Component.dispatchEvent(Component.java:3439) > at java.awt.EventQueue.dispatchEvent(EventQueue.java:450) > at > java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchThread.java:197) > at > java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:150) > at > java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:144) > at > java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:136) > at java.awt.EventDispatchThread.run(EventDispatchThread.java:99) > No such operation 'bvq' > at > org.apache.axis.message.SOAPFaultBuilder.createFault(SOAPFaultBuilder.java:260) > at > org.apache.axis.message.SOAPFaultBuilder.endElement(SOAPFaultBuilder.java:169) > at > org.apache.axis.encoding.DeserializationContextImpl.endElement(DeserializationContextImpl.java:1015) > at org.apache.crimson.parser.Parser2.maybeElement(Parser2.java:1528) > at org.apache.crimson.parser.Parser2.content(Parser2.java:1779) > at org.apache.crimson.parser.Parser2.maybeElement(Parser2.java:1507) > at org.apache.crimson.parser.Parser2.content(Parser2.java:1779) > at org.apache.crimson.parser.Parser2.maybeElement(Parser2.java:1507) > at org.apache.crimson.parser.Parser2.parseInternal(Parser2.java:500) > at org.apache.crimson.parser.Parser2.parse(Parser2.java:305) > at > org.apache.crimson.parser.XMLReaderImpl.parse(XMLReaderImpl.java:442) > at javax.xml.parsers.SAXParser.parse(SAXParser.java:345) > at > org.apache.axis.encoding.DeserializationContextImpl.parse(DeserializationContextImpl.java:242) > at org.apache.axis.SOAPPart.getAsSOAPEnvelope(SOAPPart.java:538) > at org.apache.axis.Message.getSOAPEnvelope(Message.java:376) > at org.apache.axis.client.Call.invokeEngine(Call.java:2583) > at org.apache.axis.client.Call.invoke(Call.java:2553) > at org.apache.axis.client.Call.invoke(Call.java:2248) > at org.apache.axis.client.Call.invoke(Call.java:2171) > at org.apache.axis.client.Call.invoke(Call.java:1691) > at > ClientFactory$SubmitListener.actionPerformed(ClientFactory.java:826) > at > javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1764) > at > javax.swing.AbstractButton$ForwardActionEvents.actionPerformed(AbstractButton.java:1817) > at > javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:419) > at > javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:257) > at > javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:245) > at java.awt.Component.processMouseEvent(Component.java:5093) > at java.awt.Component.processEvent(Component.java:4890) > at java.awt.Container.processEvent(Container.java:1566) > at java.awt.Component.dispatchEventImpl(Component.java:3598) > at java.awt.Container.dispatchEventImpl(Container.java:1623) > at java.awt.Component.dispatchEvent(Component.java:3439) > at > java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:3450) > at > java.awt.LightweightDispatcher.processMouseEvent(Container.java:3165) > at java.awt.LightweightDispatcher.dispatchEvent(Container.java:3095) > at java.awt.Container.dispatchEventImpl(Container.java:1609) > at java.awt.Window.dispatchEventImpl(Window.java:1585) > at java.awt.Component.dispatchEvent(Component.java:3439) > at java.awt.EventQueue.dispatchEvent(EventQueue.java:450) > at > java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchThread.java:197) > at > java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:150) > at > java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:144) > at > java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:136) > at java.awt.EventDispatchThread.run(EventDispatchThread.java:99) > **************************************************************************************************** > It seems like Axis is looking for an operation named 'bvq' with 16 parameters > instead of 18. > Setting the two parameters with values other than "null", the operation is > found and the service runs as it should. Any suggestions? > Thanks a lot. -- 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 - If you want more information on JIRA, or have a bug to report see: http://www.atlassian.com/software/jira
