发送HTTP 307重定向。假设你仍然对JSF的1.x:
FacesContext facesContext = FacesContext.getCurrentInstance();
HttpServletResponse response = (HttpServletResponse) facesContext.getExternalContext().getResponse();
response.setStatus(307);
response.setHeader("Location", "http://other.com");
facesContext.responseComplete();
然而,这将发出一个(非JSF相关的)安全确认在与有问题的网站是否可以重新发送输入的数据到客户端警告另一个网站。
如果你不喜欢这个警告,那么除了自己玩代理外没有其他选择。
URLConnection connection = new URL("http://other.com").openConnection();
connection.setDoOutput(true); // POST
// Copy headers if necessary.
InputStream input1 = request.getInputStream();
OutputStream output1 = connection.getOutputStream();
// Copy request body from input1 to output1.
InputStream input2 = connection.getInputStream();
OutputStream output2 = response.getOutputStream();
// Copy response body from input2 to output2.
但是这不会改变网址,客户认为他仍然在您的网站上。