Java codepackage com.umpay.preboss.test;
import java.io.BufferedReader;
import java.io.DataInputStream;
import java.io.FileInputStream;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.OutputStream;
import java.net.HttpURLConnection;
import java.net.URL;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import com.umpay.preboss.httpServer.Socklet2HTTP;
public class HttpPostTest {
private static Log _log = LogFactory.getLog(Socklet2HTTP.class);
public static void main(String args[]) throws Exception {
DataInputStream dis = new DataInputStream(new FileInputStream(
"bin\\test.xml"));
StringBuffer sb = new StringBuffer();
String temp = null;
temp = dis.readLine();
while (temp != null) {
sb.append(temp);
temp = dis.readLine();
}
String url ="http://localhost:9000/dobusiness";
StringBuffer sbody = new StringBuffer();
sbody.append("$xmldata=").append(sb.toString());
_log.debug("发送报文[" + sbody + "]");
byte[] httpReq = sbody.toString().getBytes();
_log.info("length = " + httpReq.length);
URL httpurl = new URL(url);
HttpURLConnection httpConn = (HttpURLConnection) httpurl
.openConnection();
//httpConn.setConnectTimeout(10000);
httpConn.setRequestMethod("POST");
httpConn.setDoOutput(true);
httpConn.setDoInput(true);
httpConn.setUseCaches(false);
//httpConn.set
String httpRes = "";
try {
_log.debug("urlc.send()...");
// 发送请求
OutputStream os = httpConn.getOutputStream();
os.write(httpReq); // 发送body数据
os.flush();
os.close();
_log.debug("urlc.recv()...");
// 判断响应
int rcode = httpConn.getResponseCode();
if (rcode != HttpURLConnection.HTTP_OK) {
throw new Exception("rcode!=HttpURLConnection.HTTP_OK");
}
// 接受报文体信息
InputStream in = httpConn.getInputStream();
BufferedReader br = new BufferedReader(new InputStreamReader(in));
StringBuffer sb1 = new StringBuffer();
String s = "";
while ((s = br.readLine()) != null) {
sb1.append(s + "\r\n");
}
in.close();
System.out.println(sb1.toString());
} catch (Exception e) {
_log.error(e);
} finally {
httpConn.disconnect();
}
}
}