#java #gwt #java-websocket
#java #gwt #java-websocket
Вопрос:
Мне нужна помощь в понимании того, как создать websocket в GWT. По сути, мне нужно изучить возможность создания системы для push-уведомлений, я попытался изучить для этого атмосферу, но в настоящее время у меня есть настройка рабочей области, не использующая maven, и все учебные пособия имеют в виду maven. Я попытался загрузить и вручную импортировать необходимые банки, но все еще возникли проблемы.
Мне было интересно, есть ли учебные пособия по созданию websocket на стороне сервера и прослушиванию его клиентом. В настоящее время я использую GWT 2.8 для настройки своей среды.
Любая помощь или учебные пособия будут с благодарностью приняты.
Комментарии:
1. У Elemental есть хороший API для создания веб-сокетов. В этом примере не используются Websockets, но показано, как подключить elemental FileReader api. gist.github.com/branflake2267/180b69b9a29987214643f62fb279151f и джавадок docs.sencha.com/gxt/4.x/javadoc/gwt-2.8.0/gwt-elemental-2.8.0 /…
Ответ №1:
Может быть, вы можете написать клиентский ws с JSNI следующим образом:
public class SomeClassSingleton{
private static SomeClassSingleton instance;
public static SomeClassSingleton getInstance(){
.
.
.
return instance;
}
private native void connectionWS()/*-{
// connection variable
var connection = new WebSocket('ws://www.endpointwebsocket.com:8888/ws/ws');
// run connection function
connect();
function connect() {
// open connection
connection.onopen;
connection.onerror = function (error) {
.
.
.
};
connection.onmessage = function (e) {
.
.
.
};
connection.onopen = function (e) {
var pa1=@com.something.client.communication.ClientWS::Rol;
var pa2=@com.something.client.communication.ClientWS::channel;
var pa3=@com.something.client.communication.ClientWS::allowRead;
var pa4=@com.something.client.communication.ClientWS::allorMod;
var jsonp= JSON.stringify({ "pC":["false",pa1,pa2,pa3,pa4]});
connection.send(jsonp);
}
connection.onclose = function (e) {
.
.
.
}
}
}-*/;
}
Или, если вам нужна только система gwt push, см. gwteventservice:
https://mvnrepository.com/artifact/de.novanic.gwteventservice/gwteventservice
С уважением