我希望将另一个servlet的输出包含到当前响应中。
我可以打电话给你
request.getRequestDispatcher("/new/url").include(request, response);它确实转到了正确的servlet,但是request.getPathInfo()、request.getServletPath()和朋友没有被设置为新的URL (它们仍然具有旧的值),所以servlet不能工作。
应该是这样的吗?我能做些什么来让它工作呢?
发布于 2010-11-02 21:23:12
是的,应该是这样的(在javadoc中,请注意Adeel Ansari在forward()方法中引用了javadoc,而不是include()):
ServletResponse对象的path元素和参数与调用方的保持不变。
但是,包含的servlet可以使用以下名称作为请求属性访问其自己的路径信息:
javax.servlet.include.request_uri
javax.servlet.include.context_path
javax.servlet.include.servlet_path
javax.servlet.include.path_info
javax.servlet.include.query_string
https://stackoverflow.com/questions/4075298
复制相似问题