Win a copy of Functional Reactive Programming this week in the Other Languages forum!
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic

No Such Operation Exception

 
Swati Udas
Ranch Hand
Posts: 121
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
I am trying to invoke a call as below :- org.apache.axis.client.Call _call = createCall();
_call.setOperation(_operations[0]);
_call.setUseSOAPAction(true);
_call.setSOAPActionURI("");
_call.setEncodingStyle(null);
_call.setProperty(org.apache.axis.client.Call.SEND_TYPE_ATTR, Boolean.FALSE);
_call.setProperty(org.apache.axis.AxisEngine.PROP_DOMULTIREFS, Boolean.FALSE);
_call.setSOAPVersion(org.apache.axis.soap.SOAPConstants.SOAP11_CONSTANTS);
_call.setOperationName(new javax.xml.namespace.QName("", "placeOrder"));

setRequestHeaders(_call);
setAttachments(_call);
try {
java.lang.Object _resp = _call.invoke(new java.lang.Object[] {in0});
However I get an Exception that No such operation foound "in0"

Stact Trace -->AxisFault
faultCode: {http://xml.apache.org/axis/}Client
faultSubcode:
faultString: No such operation 'in0'
faultActor:
faultNode:
faultDetail:
{http://xml.apache.org/axis/}hostname NE-HJN-146145

No such operation 'in0'
at org.apache.axis.message.SOAPFaultBuilder.createFault(SOAPFaultBuilder.java:221)
at org.apache.axis.message.SOAPFaultBuilder.endElement(SOAPFaultBuilder.java:128)
at org.apache.axis.encoding.DeserializationContext.endElement(DeserializationContext.java:1087)
at org.apache.xerces.parsers.AbstractSAXParser.endElement(Unknown Source)
at org.apache.xerces.impl.XMLNSDocumentScannerImpl.scanEndElement(Unknown Source)
at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl$FragmentContentDispatcher.dispatch(Unknown Source)
at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown Source)
at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
at org.apache.xerces.parsers.XMLParser.parse(Unknown Source)
at org.apache.xerces.parsers.AbstractSAXParser.parse(Unknown Source)
at javax.xml.parsers.SAXParser.parse(Unknown Source)
at org.apache.axis.encoding.DeserializationContext.parse(DeserializationContext.java:227)
at org.apache.axis.SOAPPart.getAsSOAPEnvelope(SOAPPart.java:696)
at org.apache.axis.Message.getSOAPEnvelope(Message.java:424)
at org.apache.axis.handlers.soap.MustUnderstandChecker.invoke(MustUnderstandChecker.java:62)
at org.apache.axis.client.AxisClient.invoke(AxisClient.java:206)
at org.apache.axis.client.Call.invokeEngine(Call.java:2765)
at org.apache.axis.client.Call.invoke(Call.java:2748)
at org.apache.axis.client.Call.invoke(Call.java:2424)
at org.apache.axis.client.Call.invoke(Call.java:2347)
at org.apache.axis.client.Call.invoke(Call.java:1804)
at com.wipro.ewss.training.orderbooking.OrderbookingSoapBindingStub.placeOrder(OrderbookingSoapBindingStub.java:180)
at com.wipro.ewss.training.orderbooking.OrderBookingServiceClient.main(OrderBookingServiceClient.java:10)


I understand that I need to check the value that is passed to call.invoke and match it with files like deploy.wsdd and orderbooking.wsdl
But not sure how and what is the correct way to specify it..
 
Ugender Rekulampally
Ranch Hand
Posts: 135
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
where are you creating/instantiating the object "in0" in your code? is this an object or a string?

thanks,
Ugender
 
Swati Udas
Ranch Hand
Posts: 121
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
I have this in my orderBoking.wsdl file
<wsdl:message name="placeOrderRequest">

<wsdl art name="in0" element="impl:in0"/>

</wsdl:message>

but the in0 seems to be a variable and an instance of class PurchaseOrder is being passed here

public java.lang.String placeOrder(com.wipro.ewss.training.orderbooking.PurchaseOrder in0) throws java.rmi.RemoteException {
if (super.cachedEndpoint == null) {
throw new org.apache.axis.NoEndPointException();
}
org.apache.axis.client.Call _call = createCall();
_call.setOperation(_operations[0]);
_call.setUseSOAPAction(true);
_call.setSOAPActionURI("");
_call.setEncodingStyle(null);
_call.setProperty(org.apache.axis.client.Call.SEND_TYPE_ATTR, Boolean.FALSE);
_call.setProperty(org.apache.axis.AxisEngine.PROP_DOMULTIREFS, Boolean.FALSE);
_call.setSOAPVersion(org.apache.axis.soap.SOAPConstants.SOAP11_CONSTANTS);
_call.setOperationName(new javax.xml.namespace.QName("", "placeOrder"));

setRequestHeaders(_call);
setAttachments(_call);
try { java.lang.Object _resp = _call.invoke(new java.lang.Object[] {in0});

if (_resp instanceof java.rmi.RemoteException) {
throw (java.rmi.RemoteException)_res
 
Swati Udas
Ranch Hand
Posts: 121
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Thanks for the reply...I am absolutely new to webservices and hence unable to provide systematic queries..sorry about that

I also have this in my wsdl file

<complexType name="PurchaseOrder">
<sequence>
<element name="items" nillable="true" type="impl:ArrayOfItem"/>
<element name="shipTo" nillable="true" type="impl:ShipTo"/>
<element name="strCustomerName" nillable="true" type="xsd:string"/>
</sequence>
</complexType>
<element name="in0" type="impl urchaseOrder"/>
 
shiva kumar
Greenhorn
Posts: 7
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Guys I am also getting the similar error. SubsIn is actually a parameter (a java class)
But I get the error {http://xml.apache.org/axis/}stackTrace:No such operation 'SubsIn'.

I could see many post with "RPCProvider.getOperationDesc(RPCProvider.java:312)" this issue.
But no answers given. Could some please let know how this could be fixed ?

Thanks

{http://xml.apache.org/axis/}stackTrace:No such operation 'SubsIn'
at org.apache.axis.providers.java.RPCProvider.getOperationDesc(RPCProvider.java:312)
at org.apache.axis.providers.java.RPCProvider.processMessage(RPCProvider.java:88)
at org.apache.axis.providers.java.JavaProvider.invoke(JavaProvider.java:323)
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:454)
at org.apache.axis.server.AxisServer.invoke(AxisServer.java:281)
at org.apache.axis.transport.http.SimpleAxisWorker.execute(SimpleAxisWorker.java:428)
at org.apache.axis.transport.http.SimpleAxisWorker.run(SimpleAxisWorker.java:155)
at java.lang.Thread.run(Thread.java:595)
 
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic