【发布时间】:2014-10-03 07:52:02
【问题描述】:
我正在尝试在HttpURLConnection 中写入一些消息,并且我正在尝试在 Servlet 中检索相同的消息。这是两个不同的应用程序。
消息写入代码 (无异常处理)
public static void formUrlAndWrite()
{
URL url = null;
HttpURLConnection httpConnection = null;
OutputStreamWriter outStream = null;
String host = "http://127.0.0.1:8080/HttpTester";
url = new URL(host);
httpConnection = (HttpURLConnection) url.openConnection();
httpConnection.setDoOutput(true);
httpConnection.setAllowUserInteraction(true);
httpConnection.setDefaultUseCaches(false);
outStream = new OutputStreamWriter(httpConnection.getOutputStream());
outStream.write("This is a plain text");
outStream.flush();
}
Servlet 代码 (无异常处理)
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException
{
BufferedReader reader = null;
PrintWriter out = null;
StringBuffer buffer = new StringBuffer();
try
{
//reader = new BufferedReader(new InputStreamReader(request.getInputStream()));
reader = request.getReader();
int read = 0;
char[] charArray = new char[2000];
while((read=reader.read(charArray))>-1)
{
buffer.append(charArray, 0, read);
}
response.setContentType("text/html");
out = response.getWriter();
out.println("<html><body>");
out.print("<h2> Request Buffer is"+buffer+"</h2>");
out.println("</body></html>");
}
}
这两个应用程序异步运行,我没有从我的 servlet 获得输出。我的疑问是如果我运行消息写入应用程序,它会将数据写入 url。那么当我运行servlet时,它是如何获取请求的呢?可能我在这方面做错了什么。任何帮助表示赞赏。
我尝试了以下与我的问题非常相似的 URL,但没有帮助。
【问题讨论】: