Конверт для проекта: -
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)
Может ли кто-нибудь мне помочь… ..