(URGENT !) AxisFault , java.lang.reflect.InvocationTargetException
843834May 14 2004 — edited Jan 31 2008Am using Webservices using AXIS and WSDL2Java.
For that i hav to write jws file....
/*
*SimpleOrderServer.jws
*/
public class SimpleOrderServer
{
public String submitOrder(String customerID, String productCode,int quantity)
{
System.out.println("Inside submit Order(String "+customerID+", String "+productCode+",int "+quantity+")");
System.out.println("Goignt to create the instance of ABC");
ABC ob = new ABC();
System.out.println("Calling the order method of ABC");
String receipt = ob.order(customerID,productCode,quantity);
System.out.println("returning receipt :: "+receipt);
return receipt;
}
public class ABC{
public ABC(){
System.out.println("Inside ABC() constructor");
}
public String receipt;
public String order(String customerID, String productCode,int quantity){
System.out.println("Inside Order(String "+customerID+", String "+productCode+",int "+quantity+")");
// Form up a receipt for the order
receipt ="Thank you, " + customerID + "\n";
receipt += "You ordered " + quantity + " " + productCode + "��s\n";
receipt += " That will cost you " + (quantity * 50) + "Dollars";
return receipt;
}
}//end of ABC Class
}//end of SimpleOrderServer
Though which am getting the wsdl file...
which I copied inised Eclipse project and from there generate the Java code...using auto command WSDLtoJava.
And the client file is....
/*
*
*SimpleOrderClient.java
*
*@param Apache :: args[0]
*@param Book: args[1]
*@param 21: args[2]
*
*/
import java.rmi.RemoteException;
import javax.xml.rpc.ServiceException;
import localhost.axis.SimpleOrderServer_jws.*;
public class SimpleOrderClient
{
public static void main(String [] args)
{
String customerId = "unknown";
String productCode = "Widget";
int quantity = 1;
if (args.length != 3)
{
System.out.println( "Usage: SimpleOrderClient " +
"<customerId> <productCode> <quantity>" );
System.exit(1);
}
else
{
customerId = args[0];
productCode = args[1];
quantity = Integer.parseInt(args[2]);
}
/*
///by provided examples........................
// Instantiate the factory
SimpleOrderServer factory = new SimpleOrderServer();
// Get a PortType that represents this
// particular service
SimpleOrderServerPortType service =
factory.getSimpleOrderServerPort();
//...........................................
*/
SimpleOrderServer service;
try {
service = new SimpleOrderServerServiceLocator().getSimpleOrderServer();
String response = service.submitOrder(customerId,productCode,quantity);
System.out.println(response);
} catch (ServiceException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (RemoteException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
On running clinet , am getting this error....
Please let me know where am wrong...
Thanxs in advance..
Rohit Joshi
AxisFault
faultCode: {http://schemas.xmlsoap.org/soap/envelope/}Server.userException
faultSubcode:
faultString: java.lang.reflect.InvocationTargetException
faultActor:
faultNode:
faultDetail:
{http://xml.apache.org/axis/}stackTrace: AxisFault
faultCode: {http://schemas.xmlsoap.org/soap/envelope/}Server.userException
faultSubcode:
faultString: java.lang.reflect.InvocationTargetException
faultActor:
faultNode:
faultDetail:
java.lang.reflect.InvocationTargetException
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.xerces.parsers.SAXParser.endElement(SAXParser.java:1403)
at org.apache.xerces.validators.common.XMLValidator.callEndElement(XMLValidator.java:1550)
at org.apache.xerces.framework.XMLDocumentScanner$ContentDispatcher.dispatch(XMLDocumentScanner.java:1204)
at org.apache.xerces.framework.XMLDocumentScanner.parseSome(XMLDocumentScanner.java:381)
at org.apache.xerces.framework.XMLParser.parse(XMLParser.java:1098)
at javax.xml.parsers.SAXParser.parse(Unknown Source)
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 localhost.axis.SimpleOrderServer_jws.SimpleOrderServerSoapBindingStub.submitOrder(SimpleOrderServerSoapBindingStub.java:99)
at SimpleOrderClient.main(SimpleOrderClient.java:50)
java.lang.reflect.InvocationTargetException
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.xerces.parsers.SAXParser.endElement(SAXParser.java:1403)
at org.apache.xerces.validators.common.XMLValidator.callEndElement(XMLValidator.java:1550)
at org.apache.xerces.framework.XMLDocumentScanner$ContentDispatcher.dispatch(XMLDocumentScanner.java:1204)
at org.apache.xerces.framework.XMLDocumentScanner.parseSome(XMLDocumentScanner.java:381)
at org.apache.xerces.framework.XMLParser.parse(XMLParser.java:1098)
at javax.xml.parsers.SAXParser.parse(Unknown Source)
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 localhost.axis.SimpleOrderServer_jws.SimpleOrderServerSoapBindingStub.submitOrder(SimpleOrderServerSoapBindingStub.java:99)
at SimpleOrderClient.main(SimpleOrderClient.java:50)