J2me web服务调用和错误java.rmi.ServerException:

J2me web服务调用和错误java.rmi.ServerException:,java,java-me,jboss,webservice-client,midlet,Java,Java Me,Jboss,Webservice Client,Midlet,您好,我正在创建一个J2ME应用程序,需要在其中调用web服务进行处理 我正在加密数据,然后调用web服务 java.rmi.ServerException: [Code: env:Server] [String: String index out of range: -1] at com.sun.j2mews.xml.rpc.OperationImpl.setupResStream(OperationImpl.java:380) at com.sun.

您好,我正在创建一个J2ME应用程序,需要在其中调用web服务进行处理 我正在加密数据,然后调用web服务

java.rmi.ServerException: 
[Code:   env:Server] 
[String: String index out of range: -1] 
        at com.sun.j2mews.xml.rpc.OperationImpl.setupResStream(OperationImpl.java:380)
        at com.sun.j2mews.xml.rpc.OperationImpl.invoke(OperationImpl.java:236)
我的代码在我的Linux(Fedora)上运行得很好,但在windows和实际的移动设备上不起作用 服务器正在使用JBoss和EJB

代码:-

CryptoEngine.setEncryptionKey("ROFTALPTNEMYAP1A");                      

String IMEI = "IMEI="+txtIMEI.getString();
String phoneno = "phoneNumber="+txtPhoneNo.getString();

System.out.println(IMEI);
System.out.println(phoneno);

String en = CryptoEngine.encryptString(phoneno + ";" + IMEI);
System.out.println(en);
byte[] ben = en.getBytes();
System.out.println("En = " + en);
String BaseEn = new String (Base64.encode(ben));


System.out.println("Base64 En = " + BaseEn);
form.append(en);

/*
 * Code For webservice
 */
A1Stubs.A1MobileService_Stub stub = new A1Stubs.A1MobileService_Stub();
stub._setProperty(javax.xml.rpc.Stub.ENDPOINT_ADDRESS_PROPERTY, "http://41.86.150.26:9090/A1Payment-A1Payment-ejb/A1MobileService");
String response = stub.getKey(BaseEn);
form.append("Reached After Web-service Called");
System.out.println(response);

/*
 * End  of Web Serivce
 */

byte[] baseDecode = Base64.decode(response);
String Decrypt = CryptoEngine.decryptString(new String(baseDecode));
System.out.println(Decrypt);
item.setText("Encrypted Text: \n"+en+"\n\n BASE64 Encryption: \n"+new String(Base64.encode(ben))+"\n\n Response of Web-Service : \n"+response+"\n\n BASE64 Decryption : \n"+new String(baseDecode)+"\n\n Decrypted Text : \n"+Decrypt);
display.setCurrent(form);
在windows计算机上,调用web服务后出现以下错误

java.rmi.ServerException: 
[Code:   env:Server] 
[String: String index out of range: -1] 
        at com.sun.j2mews.xml.rpc.OperationImpl.setupResStream(OperationImpl.java:380)
        at com.sun.j2mews.xml.rpc.OperationImpl.invoke(OperationImpl.java:236)

为什么我要面对这个问题???

服务器端似乎有问题。这种类型的错误表示您收到的流中没有可读取的内容。您应该检查服务器日志,看看发生了什么。

发布代码,您的服务器代码有问题实际上服务器端不是我创建的,它已经创建并工作,但给我错误信息response@org.life.java我不明白如果有问题,那么为什么我的Linux(Fedora)中没有给出错误我已经添加了我的代码,我在调用web服务的行中遇到错误,字符串response=stub.getKey(BaseEn);CryptoEngine是我的类,它将加密和解密data@ValentineRocher你确定这是服务器端的问题,因为我没有服务器的权限,如果这是服务器的问题,那么我必须和更高的权威机构谈谈,是的。我不能肯定,我就是这么想的。没有更多的信息,我只能这么说。试着调试你的程序,看看错误是从哪里来的,以及此时变量中有什么;正如我所说的,错误的位置和消息的类型表明您从中获取信息的流(存根使用的流)是空的。所以,要么是连接,要么是请求出错。可能是服务器端,也可能是您发送了错误的数据。