使用tyrus-standalone-client与另一场战争建立websocket连接。
以下是用于建立网络套接字连接的代码段
问题:是否可以将websocket连接到另一个可部署的战争? 我跑的时候找不到任何异常,甚至没有101-404错误(握手错误)。
AuthConfig authConfig = AuthConfig.Builder.create().disableProvidedDigestAuth().build();
Credentials credentials = new Credentials("root", "xyz");
ClientManager client = ClientManager.createClient();
client.getProperties().put(ClientProperties.AUTH_CONFIG, authConfig);
client.getProperties().put(ClientProperties.CREDENTIALS, credentials);
try (Session session = client.connectToServer(GovernorNodeWebSocketClient.class, new URI("ws://10.203.67.168:8080/xyz"))) {
session.getBasicRemote().sendObject("xyz");
System.out.println("4sendMessageToRemoteGovernor :: sent the message from device services to the remote governor"+responseObject.getJson());
}
catch (Exception e) {
e.printStackTrace();
}
答案 0 :(得分:1)
是的,当我在删除凭证部分和ClientManager.createClient()之后使用下面的代码片段时可能;
因此,通过在wildfly实例上添加tyrus依赖项,我们可以在它们之间设置websocket连接
try {
System.out.println("sendMessageToRemoteGovernor :: "+message.getJson());
WebSocketContainer container = ContainerProvider.getWebSocketContainer();
session = container.connectToServer(XYZ.class, new URI("ws://localhost:8080/xyz/xyz"));
session.getBasicRemote().sendObject(message);
}
catch (Exception e) {
e.printStackTrace();
}