我有一个servlet引擎作为前端Web服务器,并希望将一些请求转发给后端服务器。重定向是不可能的。如何使用servlet将请求转发到后端服务器?
Servlet规范中是否有任何有用的API?或者是这种功能的一些样本?
我知道我可以通过HttpUrlConnection来做到这一点。但是有没有更简单的解决方案?
我有一个servlet引擎作为前端Web服务器,并希望将一些请求转发给后端服务器。重定向是不可能的。如何使用servlet将请求转发到后端服务器?
Servlet规范中是否有任何有用的API?或者是这种功能的一些样本?
我知道我可以通过HttpUrlConnection来做到这一点。但是有没有更简单的解决方案?
您不能转发请求到另一台服务器。如果您正在转发的servlet位于同一台服务器中,转发将发挥作用。
所以,你的选择是:
在servlet规范中是否有任何有用的API?
除了您已经找到的(显然)之外没有任何区别。
但是有没有更简单的解决方案?
AFAIK,no。如果后端是不同的服务器,特别是“前进”不是一个选项。
我现在从Jetty找到ProxyServlet。这似乎是一个很好的例子。
您可以使用response.sendRedirect([URL])进行重定向,前提是客户端可以访问该服务器。 – 2013-03-26 11:54:14
您的问题有两种可能的解决方案。 – 2013-03-26 11:55:19
如果“后端服务器”运行在同一个Web容器中,那么您可以转发请求,这意味着它仅在另一个Servlet上下文中运行。你的环境中是这种情况吗? – Uooo 2013-03-26 12:43:35