我运行了我的java桌面应用程序,它在WebSocket通信中充当客户端。
服务器代码(webservice)部署在AWS上的tomcat上。
当我尝试在本地运行代码时,无论是桌面应用程序还是tomcat服务器,它都工作得很好。
当我将桌面应用程序指向部署在AWS上的tomcat上的生产url时,我得到了下面的异常。即使我尝试使用excelsior jet
创建.exe
文件,但在运行.exe
文件时仍然存在相同的问题。
异常
ex = (javax.websocket.DeploymentException) javax.websocket.DeploymentException: Handshake error.
响应代码不是101:200
我在Netbeans上运行,但在调用服务器端点时失败。
这些是我用于桌面应用程序的库。
2条答案
按热度按时间ovfsdjhp1#
另一个问题是,当提供商阻止您的IP或区域时。答案是平等的。我找到了一个解决方案,通过HttpProxyAgent和外部HTTP代理服务器连接WS。
smtd7mpg2#
我找到了解决办法
我使用的URL是,
ws://主机名/端点名
而不是这个
ws://hostname:端口/端点名
默认情况下,如果Tomcat运行在port:80上,则不需要在url中提供端口,但我将我的Tomcat更改为8080端口。