我在尝试使用自己的网络服务时遇到问题,我只是上传到 AWS 服务器(来自我正在开发的 android 终端应用程序)。我用tomcat7和msql配置了servidor,数据库正在工作,我在其中部署了我的webservice之战。
当我在我的 tomcat localhost 中使用 web 服务时工作正常...但是如果我尝试将 url 从 localhost 更改为来自 AWS 的新弹性 IP,它会崩溃
我不知道为什么不工作......也许是我在迁移中忘记的一些小问题。
这是跟踪问题
06-06 22:06:02.350: W/System.err(9623): SoapFault - faultcode: 'soapenv:Server' faultstring: 'Cannot open connection' faultactor: 'null' detail: org.kxml2.kdom.Node@40572d80
06-06 22:06:02.360: W/System.err(9623): at org.ksoap2.serialization.SoapSerializationEnvelope.parseBody(SoapSerializationEnvelope.java:136)
06-06 22:06:02.360: W/System.err(9623): at org.ksoap2.SoapEnvelope.parse(SoapEnvelope.java:137)
06-06 22:06:02.360: W/System.err(9623): at org.ksoap2.transport.Transport.parseResponse(Transport.java:96)
06-06 22:06:02.360: W/System.err(9623): at org.ksoap2.transport.HttpTransportSE.call(HttpTransportSE.java:189)
06-06 22:06:02.360: W/System.err(9623): at org.ksoap2.transport.HttpTransportSE.call(HttpTransportSE.java:95)
06-06 22:06:02.360: W/System.err(9623): at es.proyecto.gestorincidencias.util.Conexiones.comprobar_usuario(Conexiones.java:55)
06-06 22:06:02.360: W/System.err(9623): at es.proyecto.gestorincidencias.MainActivity$1.run(MainActivity.java:51)
这是我的网络服务 wsdl 网址
http://50.16.208.44:8080/Service_Incidencia/services/Ejemplo?wsdl
这是我的代码
public class Conexiones {
private static final String NAMESPACE = "http://ws.apache.org/axis2";
private static String URL="http://50.16.208.44:8080/Service_Incidencia/services/Ejemplo?wsdl";
private static final String METHOD_NAME3 = "comprobar_usuario";
private static final String SOAP_ACTION3 = "http://ws.apache.org/axis2/comprobar_usuario";
public static String comprobar_usuario(String email, String password) {
String result = null;
try {
SoapObject request = new SoapObject(NAMESPACE, METHOD_NAME3);
request.addPropertyIfValue("email", email);
request.addPropertyIfValue("password", password);
SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(SoapEnvelope.VER11);
envelope.setOutputSoapObject(request);
HttpTransportSE ht = new HttpTransportSE(URL);
ht.call(SOAP_ACTION3, envelope);
final SoapPrimitive response = (SoapPrimitive)envelope.getResponse();
result = response.toString();
} catch (Exception e) {
e.printStackTrace();
}
return result;
}
}
也许重要的是要知道我在 java 1.6 中编译了战争以部署在服务器中,而在我自己的 localhost 中,战争是在 java 1.7 中编译的,希望这不是问题。
感谢您的时间,我希望有人有解决方案