Java 防止glassfish独立客户端请求防火墙异常

Java 防止glassfish独立客户端请求防火墙异常,java,ejb,glassfish-3,windows-firewall,Java,Ejb,Glassfish 3,Windows Firewall,上下文:我们正在Glassfish v3.1.2.2上开发EJB3独立应用程序 问题:从Windows工作站连接到Glassfish时,最终用户会收到Windows添加防火墙规则对话框的提示 这是我们不能接受的行为。此应用程序将部署在数千个工作站上,我们的最终用户可能有管理权限,也可能没有管理权限,也可能无法理解该对话框 设置: 我们使用Oracle Glassfish 3.1文档以独立模式运行客户端应用程序。具体来说,我们将as install/modules下的文件复制到客户端,并将gf-c

上下文:我们正在Glassfish v3.1.2.2上开发EJB3独立应用程序

问题:从Windows工作站连接到Glassfish时,最终用户会收到Windows添加防火墙规则对话框的提示

这是我们不能接受的行为。此应用程序将部署在数千个工作站上,我们的最终用户可能有管理权限,也可能没有管理权限,也可能无法理解该对话框

设置:

我们使用Oracle Glassfish 3.1文档以独立模式运行客户端应用程序。具体来说,我们将as install/modules下的文件复制到客户端,并将gf-client.jar添加到类路径中。从下面的屏幕截图可以看出,一切都很好

想法:

客户端应用程序不需要打开ServerSocket,我认为这就是触发对话框的原因 事实上,客户机应用程序并没有使用ServerSocket,正如我在下面发布的包含selft的简短示例所示 打开的ServerSocket端口每次都不同。我通过匹配进程的PID和netstat-ano的输出来检查这一点,它看起来像这样: tasklist.exe:

我觉得奇怪的是,这个端口每次都会改变:请注意,netstat中曾经有一个bug,但它不应该应用于Windows 7。在任何情况下,都会出现弹出对话框,我认为这意味着有人想在客户端上侦听

EJB模块在github上可用,客户端应用程序可用

请提供建议并感谢您的帮助

Image Name PID Session Name Session# Mem Usage ========================= ======== ================ =========== ============ java.exe 118692 Console 7 88.736 K Proto Local Address Foreign Address State PID TCP 0.0.0.0:52641 0.0.0.0:0 LISTENING 118692