URL url = new URL(urlStr);//urlStr的值是http://localhost:8080/bjltagent/AAAServlet,后面还有一些参数值
HttpURLConnection connection = (HttpURLConnection) url.openConnection();
System.setProperty("sun.net.client.defaultConnectTimeout", "3000"); 
System.setProperty("sun.net.client.defaultReadTimeout", "3000");
connection.setConnectTimeout(10*1000);
connection.setRequestMethod("POST");
connection.setRequestProperty("User-agent", "IE/6.0");
BufferedReader in = new BufferedReader(new InputStreamReader(connection
.getInputStream(),"GBK"));//这一步出现了异常
下面是AAAServlet的代码,中间省略了部分代码 PrintWriter out=resp.getWriter(); 
String outstr=CheckXml.XmlForObject(cr);//总之就是生成了一个xml格式的字符串
System.out.println(outstr.equals(""));
out.println(outstr);
out.flush();
out.close();
System.out.println("aaaServlet输出流关闭,退出aaaServlet...");我对第一段代码的原理有点不懂:先是构造一个url,肯定不会去连接aaaServlet,我想问下是哪一段代码会访问aaaServlet(是url.openConnection,还是connection.getInputStream).
我在控制台上看到outstr不是空的,而且也打印出了aaaServlet输出流关闭,退出aaaServlet...,中间没有出任何异常,为何connection.getInputStream会报java.net.SocketTimeoutException: Read timed out异常呢