连接关闭,检测到EOF [英] Connection closed, EOF detected

查看:1382
本文介绍了连接关闭,检测到EOF的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我想将一些json数据从启用ADFS SSO的weblogic服务器发布到https url(jetty服务器),但我得到以下异常

I want to post some json data from ADFS SSO enabled weblogic server to an https url(jetty server) but I am getting the below exception

    java.io.IOException: Connection closed, EOF detected
    at weblogic.socket.JSSEFilterImpl.handleUnwrapResults(JSSEFilterImpl.java:637)
    at weblogic.socket.JSSEFilterImpl.unwrapAndHandleResults(JSSEFilterImpl.java:515)
    at weblogic.socket.JSSEFilterImpl.doHandshake(JSSEFilterImpl.java:96)
    at weblogic.socket.JSSEFilterImpl.doHandshake(JSSEFilterImpl.java:75)
    at weblogic.socket.JSSEFilterImpl.write(JSSEFilterImpl.java:448)
    at weblogic.socket.JSSESocket$JSSEOutputStream.write(JSSESocket.java:93)
    at java.io.BufferedOutputStream.flushBuffer(BufferedOutputStream.java:82)
    at java.io.BufferedOutputStream.flush(BufferedOutputStream.java:140)
    at java.io.FilterOutputStream.flush(FilterOutputStream.java:140)
    at weblogic.net.http.HttpURLConnection.writeRequests(HttpURLConnection.java:192)
    at weblogic.net.http.HttpURLConnection.getInputStream(HttpURLConnection.java:433)
    at weblogic.net.http.SOAPHttpsURLConnection.getInputStream(SOAPHttpsURLConnection.java:37)

以下是摘录

        URL urlObject = new URL(url);
        HttpURLConnection httpConnection = (HttpURLConnection) urlObject.openConnection();
        httpConnection.setRequestMethod("POST");
        httpConnection.setDoOutput(true);
        httpConnection.setDoInput(true); 
        httpConnection.addRequestProperty("Content-Type", "application/xml");
        OutputStreamWriter writer = new OutputStreamWriter(httpConnection.getOutputStream());
        writer.write(paramJSON.toString());
        writer.flush();

        String line;
        StringBuffer buffer = new StringBuffer();
        BufferedReader reader = new BufferedReader(new InputStreamReader(httpConnection.getInputStream()));
        while ((line = reader.readLine()) != null) 
        {
            buffer.append(line);
        }

        writer.close();
        reader.close();
        int status = httpConnection.getResponseCode();
        httpConnection.disconnect();

这适用于两个http网址,即没有启用SSL

This is working with both http url i.e. without SSL enabled

推荐答案

如果我们使用的是Weblogic服务器,我们必须定义:

If we are using Weblogic server, we must define:

set JAVA_OPTIONS=%JAVA_OPTIONS% -DUseSunHttpHandler=true

... 。

这将告诉weblogic服务器使用Sun Http处理程序而不是自己安装。

This will tell the weblogic server to use the Sun Http Handlers and not install its own.

这篇关于连接关闭,检测到EOF的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆