WebSocket между ESP32 и Java - PullRequest
       42

WebSocket между ESP32 и Java

0 голосов
/ 04 ноября 2019

Я хотел бы использовать websocket на ESP32 для связи с сервером java websocket. Я использую пример кода из документации ESP32: https://github.com/espressif/esp-idf/tree/a45e99853/examples/protocols/websocket

То, что я настроил, это имя ssid, пароль и адрес конечной точки websocket. Мой код Java выглядит следующим образом:

package com.webapp.ws;

import java.io.IOException;
import java.util.logging.Level;
import java.util.logging.Logger;
import javax.websocket.OnError;
import javax.websocket.OnMessage;
import javax.websocket.OnOpen;
import javax.websocket.Session;
import javax.websocket.server.ServerEndpoint;

@ServerEndpoint("/hello")
public class HelloEndpoint {
    private Session session;

    @OnOpen
    public void onCreateSession(Session session){
        System.out.println("Connected " + session.toString());
        this.session = session;
    }

    @OnMessage
    public void OnTextMessage(String message){
        System.out.println("message=" + message);
        if(this.session != null && this.session.isOpen()){
            try {
                System.out.println("received: " + message);
                this.session.getBasicRemote().sendText("From server: " + message);
            } catch (IOException ex) {
                Logger.getLogger(HelloEndpoint.class.getName()).log(Level.SEVERE, null, ex);
            }
        }
    }

    @OnError
    public void onError(Session session, Throwable thr) {
        Logger.getLogger(HelloEndpoint.class.getName()).log(Level.SEVERE, null, thr.toString());

    }
}

К сожалению, я не могу получить связь между ESP и Java (размещен на Tomee). Журналы из ESP следующие:

I (8088) tcpip_adapter: sta ip: 192.168.1.100, mask: 255.255.255.0, gw: 192.168.1.1
I (8588) example_connect: Connected to Lubinska123
I (8588) example_connect: IPv4 address: 192.168.1.100
I (8588) example_connect: IPv6 address: fe80:0000:0000:0000:3e71:bfff:fef9:6db0
I (8598) WEBSOCKET: Connectiong to ws://192.168.1.104:8080/MvnWebAppSock/hello...
I (8678) WEBSOCKET: WEBSOCKET_EVENT_CONNECTED
I (9608) WEBSOCKET: Sending hello 0000
I (10608) WEBSOCKET: Sending hello 0001
I (11608) WEBSOCKET: Sending hello 0002
I (12608) WEBSOCKET: Sending hello 0003
I (13608) WEBSOCKET: Sending hello 0004
I (14608) WEBSOCKET: Sending hello 0005
I (15608) WEBSOCKET: Sending hello 0006
I (16618) WEBSOCKET: Sending hello 0007
I (17618) WEBSOCKET: Sending hello 0008
I (18618) WEBSOCKET: Sending hello 0009
I (18898) WEBSOCKET: WEBSOCKET_EVENT_DATA
I (18898) WEBSOCKET: Received opcode=10
W (18898) WEBSOCKET: Received=

I (19908) WEBSOCKET: Websocket Stopped

В журналах tomcat я вижу только то, что создано новое соединение, и все. Это означает, что аннотация OnMessage не вызывается в любое время.

Кто-нибудь может мне помочь с этой проблемой?

...