Hello,

I modified the math service to include another function called
"findtarget"and compiled and deployed the service. However, I get the
following error on
running the service.

AxisFault
 faultCode: {http://xml.apache.org/axis/}Client
 faultSubcode:
 faultString: No such operation 'findtarget'
 faultActor:
 faultNode:
 faultDetail:
        {http://xml.apache.org/axis/}stackTrace:No such operation
'findtarget'
        at org.apache.axis.providers.java.RPCProvider.processMessage(
RPCProvider.java:180)
        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
:450)
        at org.apache.axis.server.AxisServer.invoke(AxisServer.java:285)
        at org.globus.wsrf.container.ServiceThread.doPost(ServiceThread.java
:664)
        at org.globus.wsrf.container.ServiceThread.process(
ServiceThread.java:382)
        at org.globus.wsrf.container.ServiceThread.run(ServiceThread.java
:291)

        {http://xml.apache.org/axis/}hostname:machine4

No such operation 'findtarget'
        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(SAXParser.java:395)
        at org.apache.axis.encoding.DeserializationContext.parse(
DeserializationContext.java:227)
        at org.apache.axis.SOAPPart.getAsSOAPEnvelope(SOAPPart.java:645)
        at org.apache.axis.Message.getSOAPEnvelope(Message.java:424)
        at
org.apache.axis.message.addressing.handler.AddressingHandler.processClientResponse
(AddressingHandler.java:305)
        at
org.apache.axis.message.addressing.handler.AddressingHandler.invoke(
AddressingHandler.java:110)
        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.client.AxisClient.invoke(AxisClient.java:190)
        at org.apache.axis.client.Call.invokeEngine(Call.java:2727)
        at org.apache.axis.client.Call.invoke(Call.java:2710)
        at org.apache.axis.client.Call.invoke(Call.java:2386)
        at org.apache.axis.client.Call.invoke(Call.java:2309)
        at org.apache.axis.client.Call.invoke(Call.java:1766)
        at
org.globus.examples.stubs.MathService_instance.bindings.MathPortTypeSOAPBindingStub.findtarget
(MathPortTypeSOAPBindingStub.java:534)
        at org.globus.examples.clients.MathService_instance.Client.main(
Client.java:41)






I included the following code snipet in my MathService.java file:

public String findtarget(Findtarget params) throws RemoteException {
                value = "machine4.devimsg.com";
                return value;
}


I added the following lines to my WSDL:


 <xsd:element name="findtarget">
                <xsd:complexType/>
        </xsd:element>
        <xsd:element name="findtargetResponse" type="xsd:string"/>

<message name="FindtargetInputMessage">
        <part name="parameters" element="tns:findtarget"/>
</message>
<message name="FindtargetOutputMessage">
        <part name="parameters" element="tns:findtargetResponse"/>
</message>

        <operation name="findtarget">
                <input message="tns:FindtargetInputMessage"/>
                <output message="tns:FindtargetOutputMessage"/>
        </operation>

I haven't changed anything else except for my client program:

System.out.println("Target: "
                                        + math.findtarget(new
Findtarget()));

--------------------------------
 Now why am I getting the following error? faultString: No such operation
'findtarget'
Can anyone please help?

Thanks,
Baas

Reply via email to