0

Hessdroid プロキシを使用して、Android アプリケーションと webservice/hessianservlet の間で通信しています。アプリを起動するとすぐに機能しますが、1 分待ってからアプリにネットワーク関数 (logout() など) を再度呼び出させると、次のエラー メッセージが表示されます。

com.caucho.hessian.client.HessianConnectionException: 500: java.io.EOFException
    at com.caucho.hessian.client.HessianProxy.invoke(HessianProxy.java:197)
    at $Proxy1.getPassword(Native Method)
    at tsch.serviceApp.net.DataHandler.getPassword(DataHandler.java:50)
    at tsch.serviceApp.PageSystemApps$1$1.run(PageSystemApps.java:91)
 Caused by: java.io.EOFException
    at libcore.io.Streams.readAsciiLine(Streams.java:203)
    at libcore.net.http.HttpEngine.readResponseHeaders(HttpEngine.java:573)
    at libcore.net.http.HttpEngine.readResponse(HttpEngine.java:821)
    at libcore.net.http.HttpURLConnectionImpl.getResponse(HttpURLConnectionImpl.java:283)
    at libcore.net.http.HttpURLConnectionImpl.getResponseCode(HttpURLConnectionImpl.java:495)
    at com.caucho.hessian.client.HessianProxy.invoke(HessianProxy.java:167)

.

public String login() {
    HessianProxyFactory factory = new HessianProxyFactory();         
    String url = "http://192.168.56.1:8080/hessianServer";
    factory.setHessian2Reply(false); // avoid hessian reply error
    try {
        userCon = (IUserService) factory.create(IUserService.class, url+"/IUserService");                      
    } catch (MalformedURLException e) {
        e.printStackTrace();
    }
    return "Logged in!";
}

public void logout() {
    userCon.logout();
}
4

2 に答える 2