在Jboss 7.4中定义WebSocket接口的实现

gmol1639  于 2023-10-20  发布在  其他
关注(0)|答案(1)|浏览(199)

根据jBoss 7.4文档,我可以定义一个带有所需注解的WebSocket

@ServerEndpoint("/websocket/helloworld")
public class MyService {

    @OnMessage
    String sayHello(String name){ ... };

    @OnOpen
    void helloOnOpen(Session session){ ... };

    @OnClose
    void helloOnClose(CloseReason reason){ ... };

}

我想在外部存储库的接口中拥有该WebSocket的合约,并将该依赖项添加到我实现的项目中。
所以在这个场景中,我将有一个chat-api依赖项,我在其中实现接口

@ServerEndpoint("/websocket/helloworld")
public interface MyServiceInterface {

    @OnMessage
    String sayHello(String name);

    @OnOpen
    void helloOnOpen(Session session);

    @OnClose
    void helloOnClose(CloseReason reason);

}

我的实现将使用这个接口

public class MyServiceImpl implements MyServiceInterface {

    @Override
    String sayHello(String name){ ... };

    @Override
    void helloOnOpen(Session session){ ... };

    @Override
    void helloOnClose(CloseReason reason){ ... };

}

但是如果我这样做,Wildfly不处理WebSocket,它不工作。(你可以看到我在这里遇到的问题)
我能帮你安排一下吗?

hiz5n14c

hiz5n14c1#

阅读Javadoc似乎不可能:https://docs.oracle.com/javaee/7/api/javax/websocket/server/ServerEndpoint.html
带注解的类必须有一个公共的无参数构造函数。

相关问题