Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/199.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
&引用;“拒绝连接”;Autobahn Android到Java EE端点_Java_Android_Jakarta Ee_Autobahn - Fatal编程技术网

&引用;“拒绝连接”;Autobahn Android到Java EE端点

&引用;“拒绝连接”;Autobahn Android到Java EE端点,java,android,jakarta-ee,autobahn,Java,Android,Jakarta Ee,Autobahn,我在Payara服务器上设置了一个JavaEE端点,我尝试使用AutobahnWebSockets将Android客户端连接到该服务器。我有以下设置: 服务器上的My WebSocket终结点: public class CommunicationSocket extends Endpoint { @Override public void onOpen(Session aSession, EndpointConfig aConfig) { aSession.addMe

我在Payara服务器上设置了一个JavaEE端点,我尝试使用AutobahnWebSockets将Android客户端连接到该服务器。我有以下设置:

服务器上的My WebSocket终结点:

public class CommunicationSocket extends Endpoint {

   @Override
   public void onOpen(Session aSession, EndpointConfig aConfig) {
      aSession.addMessageHandler(new MessageHandler.Whole<byte[]>() {
         @Override
         public void onMessage(byte[] aMessage) {
            // Do something fun
         }
      });
   }
}
然而,当我尝试使用autobahn连接我的android客户端时,套接字关闭,但无法与消息“connection Rejected”建立连接。我在onCreate中使用以下代码进行连接(mSocket是activity类的一个字段):

我对我的清单具有internet权限,因此:

<uses-permission android:name="android.permission.INTERNET">
</uses-permission>


我的代码或方法中是否存在任何错误?是否可以记录/捕获连接事件(握手或其他)以了解连接被拒绝的原因?

当我准备发布我最后一次在谷歌上搜索到的问题时:,localhost不是运行仿真器的机器的localhost(我猜它是模拟设备的localhost)。因此,请使用:

而不是

localhost:[port] 
在模拟器上也可以(如果在实际设备上运行,不要忘记更改)

WebSocketHandler messageHandler = new WebSocketHandler() {
   @Override
   public void onOpen() {
      System.out.println("Connected...");
   }

   @Override
   public void onClose(int code, String reason) {
      System.out.println("Socket closing: " + reason);
      mSocket = null;
   }

   @Override
   public void onTextMessage(String payload) {
      System.out.println("Received: " + payload);
   }

   @Override
   public void onBinaryMessage(byte[] payload) {
      System.out.println("Message received: " + payload);          
   }
};

mSocket = new WebSocketConnection();
try {
   String address = "ws://localhost:46588/Server/WebSocket";
   mSocket.connect(address, messageHandler);
} catch (WebSocketException e) {
   System.out.println("Could not connect to WebSocket: " 
           + e.getMessage());
   mSocket = null;
}
<uses-permission android:name="android.permission.INTERNET">
</uses-permission>
10.0.2.2:[port] 
localhost:[port]