You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

编写简易EJB客户端遇报错:操作状态为WAITING,无法注册EJB接收器

解决EJB客户端连接localhost:8080失败的问题

嘿,这个问题我之前帮好几个开发者排查过,本质就是EJB客户端没法和服务器建立远程连接,导致接收器注册失败,进而抛出那个WAITING状态的运行时异常。下面给你几个一步步排查的方向,应该能解决问题:

1. 先确认服务器是否正常运行且端口配置匹配

  • 先打开浏览器访问 http://localhost:8080,看看服务器的欢迎页面能不能正常加载——如果连这个都打不开,那肯定是服务器没启动或者端口不对
  • 注意:不同版本的JBoss/WildFly默认EJB远程端口可能不一样!比如WildFly 10+默认用8080,但老版本可能是4447。你可以去服务器的standalone.xml或domain.xml里找remote-connector配置,核对端口号是否和客户端配置一致。

2. 检查jboss-ejb-client.properties配置文件

这个文件是EJB客户端的核心配置,必须确保参数正确:

remote.connectionprovider.create.options.org.xnio.Options.SSL_ENABLED=false
remote.connections=default
remote.connection.default.host=localhost
remote.connection.default.port=8080  # 这里必须和服务器的远程EJB端口完全匹配!
remote.connection.default.connect.options.org.xnio.Options.SASL_POLICY_NOANONYMOUS=false
  • 如果你的服务器开启了安全认证,还要加上用户名和密码配置:
remote.connection.default.username=your-server-username
remote.connection.default.password=your-server-password

(服务器上的用户可以用add-user.sh/add-user.bat脚本创建)

3. 核对客户端依赖是否兼容

EJB客户端的依赖版本必须和服务器版本匹配,不兼容的依赖会直接导致连接失败。比如Maven项目里的依赖可以这么配(版本根据你的服务器调整):

<dependency>
    <groupId>org.jboss.ejb-client</groupId>
    <artifactId>jboss-ejb-client</artifactId>
    <version>4.0.3.Final</version>
</dependency>
<dependency>
    <groupId>org.jboss.xnio</groupId>
    <artifactId>xnio-api</artifactId>
    <version>3.8.4.Final</version>
</dependency>
<dependency>
    <groupId>org.jboss.xnio</groupId>
    <artifactId>xnio-nio</artifactId>
    <version>3.8.4.Final</version>
</dependency>

4. 检查服务器的远程EJB配置

确保服务器的standalone.xml里已经开启了远程EJB连接器,比如:

<subsystem xmlns="urn:jboss:domain:remoting:4.0">
    <endpoint/>
    <http-connector name="http-remoting-connector" connector-ref="default" security-realm="ApplicationRealm"/>
</subsystem>

如果用了自定义安全域,也要确认安全域的配置正确,否则认证环节会失败。

5. 排查端口占用和防火墙问题

  • 用netstat -ano | findstr :8080(Windows)或lsof -i :8080(Linux/Mac)检查8080端口是否被其他程序占用,如果被占了,要么换服务器端口,要么关闭占用端口的程序
  • 临时关闭本地防火墙试试,有时候防火墙会拦截客户端和服务器的本地连接

最后补充一句:那个WAITING异常其实是表象,本质是客户端一直在等服务器响应但连接根本没建立起来,解决了上面的连接问题,这个异常自然就消失了。

内容的提问来源于stack exchange,提问作者motek96

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.25 03:46:57