Чат является одним из самых канонических примеров для объяснения WebSocket. Это довольно часто используемый интерфейс и позволяет очень легко объяснить основные концепции WebSocket. Конечно, Java EE 7 WebSocket также имеет один, доступный здесь ! Вы можете легко запустить его на WildFly, используя следующие шаги:
|
1
2
3
4
5
6
|
curl -O http://download.jboss.org/wildfly/8.1.0.Final/wildfly-8.1.0.Final.zipunzip wildfly-8.1.0.Final.zip./wildfly-8.1.0.Final/bin/standalone.shgit clone https://github.com/javaee-samples/javaee7-samples.gitcd javaee7-samplesmvn -f websocket/chat/pom.xml wildfly:deploy |
А затем получите доступ к нему по адресу http: // localhost: 8080 / chat / .
Одним из самых больших преимуществ WebSocket является то, что он открывает сокет через тот же порт, что и HTTP, в данном случае 8080. Если вы хотите развернуть это приложение в OpenShift, то WebSocket доступен на порту 8000 для обычного доступа и 8443 для безопасного доступа. Это объясняется на рисунке ниже:
Если вы хотите запустить это приложение чата в OpenShift, выполните следующие действия:
- Нажмите здесь, чтобы подготовить экземпляр WildFly в OpenShift. Измените имя на «chatserver» и все остальное по умолчанию. Нажмите «Создать приложение», чтобы создать приложение.
- Клонировать рабочее пространство:
1
git clone ssh://544f08a850044670df00009e@chatserver-milestogo.rhcloud.com/~/git/chatserver.git/ - Отредактируйте первую строку «javaee7-samples / websocket / chat / src / main / webapp / websocket.js» из:
1
var wsUri ="ws://"+ document.location.hostname +":"+ document.location.port + document.location.pathname +"chat";чтобы:
1var wsUri ="ws://"+ document.location.hostname +":8000"+ document.location.pathname +"chat"; - Создайте файл WAR:
12
cd javaee7-samplesmvn -f websocket/chat/pom.xml - Скопируйте созданный файл WAR в рабочую область, клонированную ранее:
12
cd ..cp javaee7-samples/websocket/chat/target/chat.war chatserver/deployments/ROOT.war - Удалите существующие файлы и добавьте файл WAR в репозиторий git:
12345
cd chatservergit rm -rf src pom.xmlgit add deployments/ROOT.wargit commit . -m"updating files"git pushИ это показывает вывод как:
010203040506070809101112131415161718192021222324Counting objects:6, done.Delta compression using up to8threads.Compressing objects:100% (4/4), done.Writing objects:100% (4/4),6.88KiB |0bytes/s, done.Total4(delta1), reused0(delta0)remote: Stopping wildfly cartremote: Sending SIGTERM to wildfly:285130...remote: Building git ref'master', commit 05a7978remote: Preparing buildfordeploymentremote: Deployment id is 14bcec20remote: Activating deploymentremote: Deploying WildFlyremote: Starting wildfly cartremote: Found127.2.87.1:8080listening portremote: Found127.2.87.1:9990listening portremote: /var/lib/openshift/544f08a850044670df00009e/wildfly/standalone/deployments /var/lib/openshift/544f08a850044670df00009e/wildflyremote: /var/lib/openshift/544f08a850044670df00009e/wildflyremote: CLIENT_MESSAGE: Artifacts deployed: ./ROOT.warremote: -------------------------remote: Git Post-Receive Result: successremote: Activation status: successremote: Deployment completed with status: successTo ssh://544f08a850044670df00009e@chatserver-milestogo.rhcloud.com/~/git/chatserver.git/454bba9..05a7978 master -> master
И теперь ваш чат-сервер доступен по адресу: http://chatserver-milestogo.rhcloud.com и выглядит так:
Наслаждайтесь!
| Ссылка: | WebSocket Chat на WildFly и OpenShift от нашего партнера по JCG Аруна Гупта в блоге Miles to go 2.0… . |

