Я пытаюсь отправить события в движок Esper через сокеты и столкнулся с некоторой проблемой.
я настроил свойства EsperIOSocketAdapter, и когда вызывается метод EsperIOSocketAdapter.start(), он запускает новый поток демона, который будет прослушивать клиентов, но поток демона завершается, когда родительский поток завершается до того, как клиент сокета фактически пытается подключиться.
мой фрагмент кода выглядит следующим образом:
ConfigurationSocketAdapter adapterConfig = new ConfigurationSocketAdapter();
SocketConfig socket = new SocketConfig();
socket.setDataType(DataType.CSV);
socket.setPort(6789);
adapterConfig.getSockets().put("CourseSocket", socket);
EsperIOSocketAdapter socketAdapter = new EsperIOSocketAdapter (adapterConfig, "CourseSocket");
socketAdapter.start();
Еще одно сомнение в программах без использования SocketAdapter, который я использовал для отправки событий через код
EPRuntime.sendEvent(новый TestEvent(событие));
При использовании SocketAdapter следует использовать sendEvent(), иначе события будут автоматически отправлены в движок.