我正在尝试使用RequestDispatcher将数据从一个servlet传递到另一个servlet。这是Dispatcher的代码。
String address;
address = "/Java Resources/src/coreservlets/MapOut.java";
RequestDispatcher dispatcher =
request.getRequestDispatcher(address);
dispatcher.forward(request, response);
当我尝试运行它时,它给出了一个错误,说路径不可用。我是否必须包含一些东西供调度员发送到另一个servlet?
答案 0 :(得分:12)
您只需要在servlet-mapping
中传递url-pattern
的{{1}}。
假设您的servlet映射是getRequestDispatcher
中“MapOut”Servlet的“myMap”。那么它应该是
web.xml
将调用转发的Servlet的 RequestDispatcher dispatcher = request.getRequestDispatcher("/myMap");
dispatcher.forward(request,response);
。
示例:web.xml
doGet()
答案 1 :(得分:1)
您可以在request.getRequestDispatcher("your servlet name");
中直接编写您的servlet名称,它将根据web.xml配置获取路径。
RequestDispatcher rd= request.getRequestDispatcher("MyServletName");
rd.forward(request,response);