http协议系统之间交互,出现的编程的报错。我该怎样修改?求大神啊

问题描述

http协议系统之间交互,出现的编程的报错。我该怎样修改?求大神啊

现在我们系统跟gps之间交互,我采用的httpClient,可是每次跑程序的时候都会报错

 java.net.SocketException: Software caused connection abort: recv failed
    at java.net.SocketInputStream.socketRead0(Native Method)
    at java.net.SocketInputStream.read(Unknown Source)
    at org.apache.http.impl.io.SessionInputBufferImpl.streamRead(SessionInputBufferImpl.java:139)
    at org.apache.http.impl.io.SessionInputBufferImpl.fillBuffer(SessionInputBufferImpl.java:155)
    at org.apache.http.impl.io.SessionInputBufferImpl.readLine(SessionInputBufferImpl.java:284)
    at org.apache.http.impl.conn.DefaultHttpResponseParser.parseHead(DefaultHttpResponseParser.java:140)

我的实现的代码

 public String sendMessage(String xmlMessage)throws Exception{

         // 创建默认的httpClient实例.
               CloseableHttpClient httpclient = HttpClients.createDefault();
               // 创建httppost
                HttpPost httppost = new HttpPost("http://192.168.46.35:8080/BGpsWeb/gpsForeignInterface/shipLocation.do");  

         String responseMessage=null;
        List<NameValuePair> formparams = new ArrayList<NameValuePair>();
        //formparams.add(new BasicNameValuePair("cqdd", xmlMessage));
        formparams.add(new BasicNameValuePair("cqdd", xmlMessage));
        UrlEncodedFormEntity entity;

        try {
            entity = new UrlEncodedFormEntity(formparams, "GBK");
            httppost.setEntity(entity);
            System.out.println("executing request " + httppost.getURI());
            CloseableHttpResponse response = httpclient.execute(httppost);
            try {
                HttpEntity reEntity = response.getEntity();
               if (entity != null) {
                    System.out.println("--------------------------------------");
                    responseMessage=EntityUtils.toString(reEntity);
                   //System.out.println("Response content: " + EntityUtils.toString(reEntity, "UTF-8"));
                    System.out.println("--------------------------------------");
                }
            } finally {
                response.close();
                }
            } catch (ClientProtocolException e) {
                e.printStackTrace();
            } catch (UnsupportedEncodingException e1) {
                e1.printStackTrace();
            } catch (IOException e) {
                e.printStackTrace();
            } finally {
                // 关闭连接,释放资源
                try {
                  httpclient.close();
               } catch (IOException e) {
                    e.printStackTrace();
                }
            }  

        return responseMessage;

    }

解决方案

1.用本机电脑ping一下你要连接的地址是可用的嘛?

2.需要长连接嘛?你那个错误,貌似是连接问题,有可能是网络不稳定造成的。

解决方案二:

是不是你读取数据的时候异常了。服务器返回的数据你处理正确吗

时间: 2024-10-28 05:44:37

http协议系统之间交互,出现的编程的报错。我该怎样修改?求大神啊的相关文章

vc++编程问题-编程实现DFA识别字符串的过程,求大神解答

问题描述 编程实现DFA识别字符串的过程,求大神解答 编程实现DFA识别字符串的过程,1DFA的输入与DFA的存储,确定DFA的数据结构以及存储格式2DFA的正确性检查,看DFA的五元组是否正确,3输入任意一个整数N,DFA的能列表显示其识别的所有长度小于等于N的字符串4DFA的规则字符串判定,输入一个字符串,模拟DFA识别字符串的过程,判定该字符串是否是规则字符串 解决方案 1.dfa算法不是几十行代码可以搞定的: 2.可以使用线程cfa算法库,没有必要自己再实现一个dfa算法.

信息-C++编程问题,不是很懂,求大神解决

问题描述 C++编程问题,不是很懂,求大神解决 定义一个Computer类,包括数据成员CPU(字符串)和Memory(字符串),定义构造函数初始化CPU和Memory的值,定义函数showInfo()显示系统配置信息.定义一个MobilePhone类,包括数据成员联系人Contact(字符串数组),定义构造函数初始化Contact的值,定义函数display()显示联系人信息,定义函数call()拨打电话.定义派生类SmartPhone,继承Computer和MobilePhone类,新增数据

java网络编程-打算做一个学习辅助工具箱,求大神给点设计思路,打算用JAVA做

问题描述 打算做一个学习辅助工具箱,求大神给点设计思路,打算用JAVA做 学习辅助工具箱里包括多功能计算器,还有数字逻辑实验模拟器,矩阵算法等等小工具.求大神给点设计的详细思路跟解决方案. 解决方案 你说的这些功能都可以google到. 特别地,你可以用 site:download.csdn.net + 你需要的程序 + java,限定只在csdn下载频道查找. 多学习些google的搜索技巧,你的效率会大大提高. 解决方案二: 一个功能一个功能的实现,最后拼凑起来

servlet-关于http协议系统之间的交互

问题描述 关于http协议系统之间的交互 现在我们系统请求gps系统传一个String类型的参数,我们用的servlet,他们用的springMVC.我们的参数是以流的形式写过去的,但是gps那边说没参数没定义名称无法取值.我这菜鸟不知道怎么弄了.求助啊. public String sendMessage(String sendMessage) throws Exception { sendMessage=("xmlStr"+sendMessage).replaceFirst(&qu

java中网络编程关于使用ObjetInputStream传输报错的问题,求大神指点

问题描述 java中网络编程关于使用ObjetInputStream传输报错的问题,求大神指点 以下贴出来的代码为通过ObjectInputStream(OutputStream)在客户端与服务器端之间交互时传输的对象,提供的图片中一个是客户端的代码片段,一个是服务器端的代码片段. 现在问题出在当客户端输完账号密码点击确定时,客户端卡死(应该是线程阻塞).服务器端抛出异常 :java.lang.ClassNotFoundException: com.wish.data.TransferObjec

网络编程 ping程序有点问题,求大神帮忙看看

问题描述 网络编程 ping程序有点问题,求大神帮忙看看 // ping.cpp : 定义控制台应用程序的入口点. #include "stdafx.h" #include #pragma comment(lib,"ws2_32") //定义ICMP首部 typedef struct icmp_hdr{ unsigned char icmp_type; //ICMP消息类型,回显请求:8,回显应答请求:0 unsigned char icmp_code; //代码,

各位朋友好,请教ubuntu系统python3.4环境下安装matplotlib报错的解决办法

问题描述 各位朋友好,请教ubuntu系统python3.4环境下安装matplotlib报错的解决办法 具体的问题是这样的: 我的系统是Ubuntu14.04 的64位系统,python3.4版本下,想使用matplotlib来做图. 由于matplotlib依赖numpy和python的图像库PIL,因此我先安装numpy和PIL然后,再安装matplotlib, 这里附上我的安装matplotlib的shell命令 #安装科学计算库numpy sudo pip3 install numpy

编程-java菜鸟程序员提问:求大神给我说说线程在什么场景下用,以及多线程工作原理。谢谢

问题描述 java菜鸟程序员提问:求大神给我说说线程在什么场景下用,以及多线程工作原理.谢谢 现在java线程编程应用广泛吗?哪些时候适合或必须要用多多线程编程呢?多线程的工作原理是怎样的呢?求大神们指导指导,谢了! 解决方案 (1)线程的工作场景主要有两条: 一个是并发操作,避免阻塞和更有效利用资源.典型的例子有:在长时间工作的程序中使用工作线程避免界面失去响应.在网络下载程序中,使用多个线程提高对网络的使用效率,更快下载文件. 一个是并行,线程是处理器调度的最小单位.如果你的计算机配置了多个

ZigBee CC2530两个之间怎么相互通信,相互传送数据?求大神帮忙

问题描述 ZigBee CC2530两个之间怎么相互通信,相互传送数据?求大神帮忙 ZigBee CC2530两个之间怎么相互通信?就是实现两个ZigBee板子之间相互传输数据 解决方案 ZigBee是一种近距离无线技术,类似蓝牙,wifi,NFC等等.Zigbee是IEEE 802.15.4协议的代名词,是一种短距离.低功耗的无线通信技术. 而CC2530是TI公司出的一款支持ZigBee技术的芯片. 然后组网:ZigBee组网