我想处理一个 HTTP 请求并对其进行一些处理。我可以执行以下操作吗?
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("application/soap+xml;charset=utf-8");
char[] cbuf = new char[10000];
PrintWriter out = response.getWriter();
InputStreamReader in = new InputStreamReader(request.getInputStream());
in.read(cbuf,0,10000);
int req_len = request.getContentLength();
String inputLine = new String(cbuf);
Spoof sp = new Spoof();
String xml_response = sp.spoof_second(inputLine.substring(0, req_len), request.getParameter("mode"));
out.println(xml_response);
}
我得到一个空响应,所以我想知道是否有办法调用函数 spoof_second()。
我的 web.xml 看起来像:
<?xml version="1.0"?>
<web-app
xmlns="http://java.sun.com/xml/ns/j2ee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee
http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"
version="2.4">
<servlet>
<servlet-name>home</servlet-name>
<servlet-class>website.web.HomeServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>home</servlet-name>
<url-pattern>/home</url-pattern>
</servlet-mapping>
我正在向 [http://localhost:4321/website/home?mode=record] 发送请求,因此模式是正确的,并且 inputLine 也是正确的,因为我通过打印它们进行了检查。我不确定的是如何在 Eclipse 中构建整个项目,因为我认为没有进行函数调用。我没有收到任何异常,并且收到了一个 HTTP 200 OK 响应,内容为空。