Eclipse base HTML5 Websocket и GlassFish - PullRequest
0 голосов
/ 31 января 2012

Конверт для проекта: - Eclipse 3.6 (Eclipse-jee-helios) + HTML5 + JavaScript + Websocket + (гризли) Glassfish 3.1.1

Я развернул пример проекта и могу запустить его с помощью GF.

Когда я пытаюсь подключить websocket, он всегда вызывает onClose.

Я пытался: - asadmin set configs.config.server-config.network-config.protocols.protocol.http-listener-1.http.websockets-support-enabled = true

GF 3.1.1 поддерживает веб-сокет (скачано с http://glassfish.java.net/downloads/3.1.1-final.html)

Браузер, как Safari, и Google Chrome поддерживает веб-сокет (я использую последний браузер и проверен с http://websocket.org/echo.html URL)

Java Script: -

    var webSocket;

$(document).ready(
function() {

**var URL = "ws://localhost:8080/SampleGF/WebSocketChatServlet";**

      //Tried using and lot of combination of URLS
      var URL = "ws://localhost:8080/";
      var URL = "ws://localhost:8080/SampleGF";
      var URL = "ws://localhost:8080/SampleGF/WebSocketChatServlet";

webSocket = new WebSocket(URL);

//alert("WebSockets are " + (window.WebSocket ? "" : "not ") + "supported"); 

webSocket.onopen = function(event) {
    alert("OPEN")
}
webSocket.onmessage = function(event) {
    var $textarea = $('#messages');
    $textarea.val($textarea.val() + event.data + "\n");
    $textarea.animate({
    scrollTop : $textarea.height()
    }, 1000);
}
webSocket.onclose = function(event) {
    alert("CLOSE")
}
* * 1 022});
 function sendMessage() {
var message = $('#username').val() + ":" + $('#message').val();
webSocket.send(message);
$('#message').val('');
}

Я использовал ChatSocket.java, WebSocketChatServlet.java, ChatApplication.java, как показано ниже: -

http://java.dzone.com/articles/creating-websocket-chat

я добавил servlet-api.jar в мою библиотеку проектов.

Ref. Ссылка: - http://tech.amikelive.com/node-269/eclipse-quick-tip-resolving-error-the-import-javaxservlet-cannot-be-resolved/

Web.xml: -

Я добавил сервлет и отображение сервлетов, как показано ниже:

сервлет

    description    WebSocketChatServlet  description 
    servlet-name   WebSocketChatServlet  servlet-name
    servlet-class  org.trivadis.websocket.servlet.WebSocketChatServlet  servlet-class

сервлет

* * Сервлет тысяча сорок-девять-отображение
servlet-name  WebSocketChatServlet    servlet-name
url-pattern   /WebSocketChatServlet   url-pattern

сервлет-отображение


Я не уверен, что я делаю неправильно ....

Как проверить, правильно ли используется URL-адрес для веб-сокета?

Местоположение GF D: \ glassfish3 \ glassfish для моего проекта. Местоположение проекта D: \ workspace \ SampleGF

Другая причина: -

Даже я пробовал WAR пример снизу ссылки: -

http://jarvana.com/jarvana/search?search_type=project&project=grizzly-websockets-chat

WAR Имя файла: -grizzly-websockets-chat-1.9.45.war

Я импортировал указанный выше файл war в Eclipse и развернул его на сервере glassfish 3.1.1. После запуска приложения всегда вызывайте событие onclose.

Я выполнил приведенную ниже команду: -

asadmin set configs.config.server-config.network-config.protocols.protocol.http-listener-1.http.websockets-support-enabled = true

и я использую браузер, как Safari, и Google Chrome поддерживает веб-сокет (я проверил его по ссылке ниже http://websocket.org/echo.html URL)

Может ли кто-нибудь мне помочь… ..

1 Ответ

2 голосов
/ 06 февраля 2012

Прошло несколько месяцев с тех пор, как я пытался запустить опубликованный пример кода против гризли. Я могу быть устаревшим, но это не сработало, когда я попробовал. Парень, который опубликовал образец, в конце концов признал проблемы в дискуссионных постах ниже своей статьи. Так как я не пробовал это с тех пор, я не знаю, было ли это исправлено; у меня нет подтверждения, что гризли еще работает. (Если кто-то знает о рабочем образце, мне так же интересно, как и вам.)

В то же время, вы можете попробовать эту альтернативу для запуска вашего клиентского кода. Вы можете даже проверить, что вы делаете с бесплатным загружаемым кодом JavaScript, если хотите. http://highlevellogic.blogspot.com/2011/09/websocket-server-demonstration_26.html

Если ваш код работает с этим сервером, попробуйте еще раз с помощью Grizzly. Я буду заинтересован в результатах.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...