我已使用Advanced Installer将我的Jboss 7服务器,Postgres数据库和test.bat分组到demo.exe文件中。当文件即demo.exe文件在客户端双击时,test.bat文件运行,它在预定义的位置部署JBoss和postgres,服务启动,我的应用程序在端口号8080运行。所有脚本都已写入test.bat文件。这个demo.exe文件必须由不同的用户使用。客户端的不同应用程序可能会使用或使用8080。
那么如何根据端口使用情况在客户端动态更改jboss的端口号? 我是否必须使用任何Jboss安装程序或在批处理文件上写scipt,即test.bat? 无法点击事物或正确的方法:(
任何帮助都将受到高度赞赏,并将感激不尽。
答案 0 :(得分:3)
您可以使用CLI
执行此操作。此示例将端口从8081更改为8080:
启动CLI(在.../bin/
中):
$ ./jboss-cli.sh
你现在已断开连接。输入' connect'连接到服务器或帮助'获取支持的命令列表。
连接
[已断开连接/]连接
更改为目标区域
[standalone @ localhost:9999 /] cd / socket-binding-group = standard-sockets / socket-binding = http
显示当前状态:
[standalone @ localhost:9999 socket-binding = http] ls -l <br/> 属性值类型
绑定真正的BOOLEAN
bound-address 127.0.0.1 STRING
bound-port 8081 INT
客户端映射未定义列表
fixed-port false BOOLEAN
界面未定义STRING
multicast-address undefined STRING
multicast-port undefined INT
名称http STRING
端口8081 INT
更改端口属性:
[standalone @ localhost:9999 socket-binding = http]:write-attribute(name =&#34; port&#34;,value =&#34; 8080&#34;)
{
&#34;结果&#34; =&GT; &#34;成功&#34 ;,
&#34;响应报头&#34; =&GT; {
&#34;操作需要重装&#34; =&GT;如此,
&#34;过程状态&#34; =&GT; &#34;再装入要求的&#34;
}
}
请注意,流程状态是&#34;需要重新加载&#34;
再看一遍:
[standalone @ localhost:9999 socket-binding = http] ls -l <br/> 属性值类型
绑定真正的BOOLEAN
bound-address 127.0.0.1 STRING
bound-port 8081 INT
客户端映射未定义列表
fixed-port false BOOLEAN
界面未定义STRING
multicast-address undefined STRING
multicast-port undefined INT
名称http STRING
端口8080 INT
请注意,此处bound-port
仍为旧值。
所以回到根目录
[standalone @ localhost:9999 subsystem = web] cd /
刷新
[standalone @ localhost:9999 /]:重新加载
{
&#34;结果&#34; =&GT; &#34;成功&#34 ;,
&#34;响应报头&#34; =&GT; {&#34;过程状态&#34; =&GT; &#34;再装入要求的&#34;}
}
这意味着重新加载仍在进行中,再次
[standalone @ localhost:9999 /]:重新加载
{&#34;结果&#34; =&GT; &#34;成功&#34;}
现在,HTTP连接器应该侦听新端口。
更新
问题是要求动态更改端口 (JBoss已启动并正在运行)。
另一种选择是将端口写入配置文件(standalone.xml
)。这是静态,但它可能与安装目的一样。