Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/xml/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/csharp-4.0/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java-Servlet-使用新主体重定向请求_Java_Xml_Servlets_Request_Forwarding - Fatal编程技术网

Java-Servlet-使用新主体重定向请求

Java-Servlet-使用新主体重定向请求,java,xml,servlets,request,forwarding,Java,Xml,Servlets,Request,Forwarding,我正在用Java编写一个Servlet,基本上,它在请求主体中获取一个包含XML的请求,然后在XML中更改一些内容,并使用新的XML将请求重定向/前言到位于同一服务器上但位于不同web应用程序上的另一个Servlet 我用的是doPost 我该怎么做?我可以在任何地方找到代码示例吗 另外,正确的方法是什么: request.getRequestDispatcher().include/request.getRequestDispatcher().foreword/response.sendRed

我正在用Java编写一个Servlet,基本上,它在请求主体中获取一个包含XML的请求,然后在XML中更改一些内容,并使用新的XML将请求重定向/前言到位于同一服务器上但位于不同web应用程序上的另一个Servlet

我用的是doPost

我该怎么做?我可以在任何地方找到代码示例吗

另外,正确的方法是什么:

request.getRequestDispatcher().include/request.getRequestDispatcher().foreword/response.sendRedirect()
还是需要使用:
HttpServletRequestWrapper

这就是我到目前为止所做的:

protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

     String body = getBody(request);
     MapXml mapXml = new MapXml(body, "C:\\Projects\\XmlMapper\\output.xml","C:\\Projects\\XmlMapper\\output\\");
     String outputXml = mapXml.getOutputXml();



}
public static String getBody(HttpServletRequest request) throws IOException {

    String body = null;
    StringBuilder stringBuilder = new StringBuilder();
    BufferedReader bufferedReader = null;

    try {
        InputStream inputStream = request.getInputStream();
        if (inputStream != null) {
            bufferedReader = new BufferedReader(new InputStreamReader(inputStream));
            char[] charBuffer = new char[128];
            int bytesRead = -1;
            while ((bytesRead = bufferedReader.read(charBuffer)) > 0) {
                stringBuilder.append(charBuffer, 0, bytesRead);
            }
        } else {
            stringBuilder.append("");
        }
    } catch (IOException ex) {
        throw ex;
    } finally {
        if (bufferedReader != null) {
            try {
                bufferedReader.close();
            } catch (IOException ex) {
                throw ex;
            }
        }
    }

    body = stringBuilder.toString();
    return body;
}
我不知道如何从这里继续下去。我对servlet世界还不熟悉。。 谢谢
干杯:)

您的代码在哪里?这些方法的javadoc说了什么?当你搜索“转发和重定向的区别”时会发生什么?如果我在这里问,我可能没有得到我想要的答案。。