定义Jboss 7.4中websocket接口的实现

问题描述 投票:0回答:1

按照 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,它也不起作用。 (你可以在这里看到我遇到的问题

有什么办法可以设置吗?

java websocket jboss wildfly
1个回答
0
投票
阅读 Javadoc 似乎不可能:

https://docs.oracle.com/javaee/7/api/javax/websocket/server/ServerEndpoint.html

带注释的类必须有一个公共的无参数构造函数。

© www.soinside.com 2019 - 2024. All rights reserved.