[size=medium][color=brown]
刚开始测试访问远程EJB对象的时候,我的EJB是发布到我本人本机的JBoss6上的,所以请求的URL我写的是localhost(或者是本机回路地址:127.0.0.1),测试正常。
但是当我将请求的URL改成:192.168.0.3(本人的局域网IP),再次测试的时候,后台抛出了连接异常的信息。
到网上搜索了一下,原来[/color][color=red]JBoss出于安全原因,企业版默认绑定的是localhost,其他IP是无法访问的[/color]
[color=red]解决方案1:[/color]
解决这个问题的方案网上有例子:
启动cmd,进到你JBoss安装目录下的bin目录下,执行run.bat -b 0.0.0.0 指令。再测试一下,OK,正常。
[color=red]原因:[/color]
JBoss 4.2以上版本服务启动如果不加任何参数的话,只监听127.0.0.1,也就是说只能用127.0.0.1或者localhost访问,用本机的对外地址访问不了,同一网络内别的机子没法访问。除非你用参数-b ip地址来绑定监听的地址才可以。
[color=red]注:[/color]网上还有例子说:修改jboss\server\default\deploy\XX(不同版本这个文件夹名称不一样)\server.xml 把 Connector 下面的 address 改成对应的 IP 或者 0.0.0.0 就可以用 IP 访问了。
这个我试过了,没有用。朋友们也可以试试这个方案看是否能行。
[color=red]解决方案2:[/color]
网上还有一个例子是这样说的:
在你jboss安装的bin目录下,新建文本文件,录入如下内容:
run.bat -b 0.0.0.0
将此文件保存为xxx.bat文件即可。
双击启动这个xxx.bat文件,测试一下,访问正常,OK。
[color=red]解决方案3:[/color]
[color=brown]上面的都是来自网上的例子,我在这里只是整理一下,当然了,我有我自己的解决方案。不然就不会有这篇博文。[/color]
通常,我们使用的服务器都是集成到了我们的开发环境中了,我用的是myeclipse开发工具,这里以myeclipse为例来解决这个问题。
具体步骤:
Window-->Preferences-->MyEclipse-->Servers-->JBoss-->JBoo 6.x(以jboss6为例)
展开JBoss 6.x 选中Launch,点击Create Launch Configuration按钮
[img]http://dl.iteye.com/upload/attachment/0064/9451/4c7581b1-f338-3c3b-a1e7-5f699eb33182.jpg[/img]
进到如下界面:
[img]http://dl.iteye.com/upload/attachment/0064/9453/ef0ecced-2fc9-3f0e-8d9d-9820deb88f57.jpg[/img]
为你的JBoss另取一个别名(避免混乱),选中Arguments选卡,在文本域里多加一句指令:-b 0.0.0.0,点击Apply按钮,关闭窗口。
一切搞定。回到控制台,启动你刚才新创建的JBoss,用局域网IP测试一下,正常。
[/size]
刚开始测试访问远程EJB对象的时候,我的EJB是发布到我本人本机的JBoss6上的,所以请求的URL我写的是localhost(或者是本机回路地址:127.0.0.1),测试正常。
但是当我将请求的URL改成:192.168.0.3(本人的局域网IP),再次测试的时候,后台抛出了连接异常的信息。
到网上搜索了一下,原来[/color][color=red]JBoss出于安全原因,企业版默认绑定的是localhost,其他IP是无法访问的[/color]
[color=red]解决方案1:[/color]
解决这个问题的方案网上有例子:
启动cmd,进到你JBoss安装目录下的bin目录下,执行run.bat -b 0.0.0.0 指令。再测试一下,OK,正常。
[color=red]原因:[/color]
JBoss 4.2以上版本服务启动如果不加任何参数的话,只监听127.0.0.1,也就是说只能用127.0.0.1或者localhost访问,用本机的对外地址访问不了,同一网络内别的机子没法访问。除非你用参数-b ip地址来绑定监听的地址才可以。
[color=red]注:[/color]网上还有例子说:修改jboss\server\default\deploy\XX(不同版本这个文件夹名称不一样)\server.xml 把 Connector 下面的 address 改成对应的 IP 或者 0.0.0.0 就可以用 IP 访问了。
这个我试过了,没有用。朋友们也可以试试这个方案看是否能行。
[color=red]解决方案2:[/color]
网上还有一个例子是这样说的:
在你jboss安装的bin目录下,新建文本文件,录入如下内容:
run.bat -b 0.0.0.0
将此文件保存为xxx.bat文件即可。
双击启动这个xxx.bat文件,测试一下,访问正常,OK。
[color=red]解决方案3:[/color]
[color=brown]上面的都是来自网上的例子,我在这里只是整理一下,当然了,我有我自己的解决方案。不然就不会有这篇博文。[/color]
通常,我们使用的服务器都是集成到了我们的开发环境中了,我用的是myeclipse开发工具,这里以myeclipse为例来解决这个问题。
具体步骤:
Window-->Preferences-->MyEclipse-->Servers-->JBoss-->JBoo 6.x(以jboss6为例)
展开JBoss 6.x 选中Launch,点击Create Launch Configuration按钮
[img]http://dl.iteye.com/upload/attachment/0064/9451/4c7581b1-f338-3c3b-a1e7-5f699eb33182.jpg[/img]
进到如下界面:
[img]http://dl.iteye.com/upload/attachment/0064/9453/ef0ecced-2fc9-3f0e-8d9d-9820deb88f57.jpg[/img]
为你的JBoss另取一个别名(避免混乱),选中Arguments选卡,在文本域里多加一句指令:-b 0.0.0.0,点击Apply按钮,关闭窗口。
一切搞定。回到控制台,启动你刚才新创建的JBoss,用局域网IP测试一下,正常。
[/size]