"org.apache.axis2.AxisFault: Incoming message input stream is null" while engaging addressing module on client side -------------------------------------------------------------------------------------------------------------------
Key: AXIS2-2264 URL: https://issues.apache.org/jira/browse/AXIS2-2264 Project: Axis 2.0 (Axis2) Issue Type: Bug Components: Addressing Affects Versions: 1.1.1 Environment: Linux Fedora fc5, tomcat 6.0.7, java1.5.0_11, Axis2 1.1.1 Reporter: Federica Ciotti My client class needs to engage addressing module. This is my client package calc1; public class RPC_MyCalcClient { public static void main(String[] args){ try{ EndpointReference targetEPR = new EndpointReference("http://localhost:8080/axis2/services/AddService/"); EndpointReference myEPR = new EndpointReference("http://localhost:8080/axis2/services/clientService/"); Options options = new Options(); options.setTo(targetEPR); options.setReplyTo(myEPR); options.setFrom(myEPR); //options.setAction("addPrevious"); options.setAction("add"); options.setFrom(myEPR); options.setMessageId("Msg123"); RPCServiceClient sender = new RPCServiceClient(); sender.setOptions(options); sender.engageModule(new QName(Constants.MODULE_ADDRESSING)); //add QName opAdd = new QName("http://calc/xsd", "add"); Integer a = new Integer(1); Integer b = new Integer(2); Object[] params = new Object[] { a, b }; Class[] returnTypes = new Class[] { Integer.class }; Object[] response = sender.invokeBlocking(opAdd, params, returnTypes); Integer result = (Integer) response[0]; if (result == null) {System.out.println("Null");} else System.out.println("Result "+ result.toString()); //addPrev /*QName opAdd = new QName("http://calc/xsd", "addPrevious"); Integer a = new Integer(1); Object[] params = new Object[] { a}; Class[] returnTypes = new Class[] { Integer.class }; Object[] response = sender.invokeBlocking(opAdd, params, returnTypes); Integer result = (Integer) response[0]; if (result == null) {System.out.println("Null");} else System.out.println("Result "+ result.toString());*/ }catch(AxisFault a){a.printStackTrace();} } } Even if the addressing module is in the classpath I get AxisFault. This is the exception i get trying to engage addressing module on client side org.apache.axis2.AxisFault: Incoming message input stream is null at org.apache.axis2.transport.TransportUtils.createSOAPMessage(TransportUtils.java:64) at org.apache.axis2.description.OutInAxisOperationClient.send(OutInAxisOperation.java:252) at org.apache.axis2.description.OutInAxisOperationClient.execute(OutInAxisOperation.java:202) at org.apache.axis2.client.ServiceClient.sendReceive(ServiceClient.java:579) at org.apache.axis2.client.ServiceClient.sendReceive(ServiceClient.java:508) at org.apache.axis2.rpc.client.RPCServiceClient.invokeBlocking(RPCServiceClient.java:95) at calc1.RPC_MyCalcClient.main(RPC_MyCalcClient.java:52) I noticed from SOAPMonitor that apart the AxisFault the request and response messages are correct but only the request one has the wsa header fields: SOAPRequest <?xml version='1.0' encoding='utf-8'?> <soapenv:Envelope xmlns:wsa="http://www.w3.org/2005/08/addressing" xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"> <soapenv:Header> <wsa:To>http://localhost:8080/axis2/services/AddService/</wsa:To> <wsa:ReplyTo> <wsa:Address>http://localhost:8080/axis2/services/clientService/</wsa:Address> </wsa:ReplyTo> <wsa:From> <wsa:Address>http://localhost:8080/axis2/services/clientService/</wsa:Address> </wsa:From> <wsa:MessageID>Msg123</wsa:MessageID> <wsa:Action>add</wsa:Action> </soapenv:Header> <soapenv:Body> <add xmlns="http://calc/xsd"> <arg0 xmlns="">1</arg0> <arg1 xmlns="">2</arg1> </add> </soapenv:Body> </soapenv:Envelope> SOAPResponse <?xml version='1.0' encoding='utf-8'?> <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"> <soapenv:Header /> <soapenv:Body> <ns:addResponse xmlns:ns="http://calc/xsd"> <ns:return>3</ns:return> </ns:addResponse> </soapenv:Body> </soapenv:Envelope> How can I get wsa fields in the SOAPResponse (addressing module is already engaged on service side and is the classpath) ? Dropping the engage instruction from the client code causes the exception to disappear but I have a wsaddressing=required in the services.xml. -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online. --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]