You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-dev@axis.apache.org by "Dmitriy (Created) (JIRA)" <ji...@apache.org> on 2011/11/15 21:30:52 UTC
[jira] [Created] (AXIS2-5184) Code working with Axis 2 1.5.x throws
exception with 1.6.1
Code working with Axis 2 1.5.x throws exception with 1.6.1
----------------------------------------------------------
Key: AXIS2-5184
URL: https://issues.apache.org/jira/browse/AXIS2-5184
Project: Axis2
Issue Type: Bug
Components: client-api
Affects Versions: 1.6.1
Environment: Windows / Solaris
Reporter: Dmitriy
The following code is working when using JRE 5 with Axis2 1.5.1 and 1.5.6:
public static void test() throws Exception {
ConfigurationContext ctx = ConfigurationContextFactory.createDefaultConfigurationContext();
String svcAddrress = "http://localhost:8080/axis2/services/era_aas";
Era_aasStub stub = new Era_aasStub(ctx,svcAddrress);
Era_aasStub.UserIdentityIn in = new Era_aasStub.UserIdentityIn();
in.setCallerId("DMITRIY");
// more fields are set here, all are Strings
Era_aasStub.UserProfile out = stub.loginUi(in);
}
When I switch to JRE 6 using Axis 1.6.1 the code throws the following exception:
java.lang.NullPointerException
at org.apache.axis2.transport.http.CommonsHTTPTransportSender.invoke(CommonsHTTPTransportSender.java:172)
at org.apache.axis2.engine.AxisEngine.send(AxisEngine.java:443)
at org.apache.axis2.description.OutInAxisOperationClient.send(OutInAxisOperation.java:406)
at org.apache.axis2.description.OutInAxisOperationClient.executeImpl(OutInAxisOperation.java:229)
at org.apache.axis2.client.OperationClient.execute(OperationClient.java:165)
at gov.nih.era.aas.client.auto.Era_aasStub.loginUi(Era_aasStub.java:498)
at AasServiceTest.test(AasServiceTest.java:93)
at AasServiceTest.main(AasServiceTest.java:53)
The workaround I have found is to change the code as following (do not pass context to the stub constructor):
public static void test() throws Exception {
ConfigurationContext ctx = ConfigurationContextFactory.createDefaultConfigurationContext();
String svcAddrress = "http://localhost:8080/axis2/services/era_aas";
Era_aasStub stub = new Era_aasStub(svcAddrress); // <-- this is the only change I had to make
Era_aasStub.UserIdentityIn in = new Era_aasStub.UserIdentityIn();
in.setCallerId("DMITRIY");
// more fields are set here, all are Strings
Era_aasStub.UserProfile out = stub.loginUi(in);
}
However, this solution requires multiple code changes and also causes problems when we do need to pass context to the stub. Please advise if there is a proper way to make the code work using ConfigurationContextFactory.createDefaultConfigurationContext(). Additional details:
No custom configuration - I am using standard binary distribution of Axis 2 version 1.6.1. The service code is generated from WSDL using ADB data binding.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira
---------------------------------------------------------------------
To unsubscribe, e-mail: java-dev-unsubscribe@axis.apache.org
For additional commands, e-mail: java-dev-help@axis.apache.org