Java 截获并重定向到另一个端口的Servlet

Java 截获并重定向到另一个端口的Servlet,java,web-applications,servlets,port,servlet-filters,Java,Web Applications,Servlets,Port,Servlet Filters,我有一台运行两台服务器的机器:- Java web容器(Weblogic),以及 非javaweb服务器 显然在两个不同的端口上7001和15000 服务器(及其网络)上的安全策略限制只允许我们远程访问Java web容器(只有其端口可访问) 我需要在Java web容器上部署一个servlet或过滤器,它将某些请求重定向到非Java web服务器并返回结果 是否有可用的Servlet或filter执行此操作 我可以将文件上载到非Java web应用程序(从同一台机器访问时)。是否可以通过端

我有一台运行两台服务器的机器:-

  • Java web容器(
    Weblogic
    ),以及
  • 非javaweb服务器
显然在两个不同的端口上
7001
15000

服务器(及其网络)上的安全策略限制只允许我们远程访问
Java web容器
(只有其端口可访问)

我需要在Java web容器上部署一个servlet或过滤器,它将某些请求重定向到非Java web服务器并返回结果

是否有可用的
Servlet
filter
执行此操作


我可以将文件上载到非Java web应用程序(从同一台机器访问时)。是否可以通过端口映射Servlet启用此功能?

如果只有一台服务器是公共可用的,重定向将不会帮助您,因为浏览器将无法访问他重定向到的端口。在这种情况下,您需要的是WebLogic中的代理。例如,有一个示例,但我不知道它的可移植性如何,而且它可能需要servlet 3.0。

没有标准的方法来实现这一点。换句话说,JavaEE规范中没有强制容器提供此类功能的内容


你得自己写。为此,我将使用过滤器而不是Servlet。

您不能重定向,因为重定向是客户端的,您需要制作最简单的代理。您可以创建一个接受某个param=web url的servlet,然后使用URLConnection或commons http client连接到此url,然后将得到的页面写入servletResponse。根据页面内容,您可能还需要传递一些http头,但在最简单的情况下,模式如我所述

在您的体系结构中,Weblogic服务器前面是否有http服务器?不,直接访问Weblogic即可。