2016-06-28 3 views
0

Итак, у меня есть два приложения Java, сервер и клиент. Это простые программы, элементы GUI не просто консольные приложения. Они отлично работают на моей машине, и у меня есть клиентская версия, которая может даже подключаться к серверу через Интернет.Подключение веб-приложений к внешнему серверу?

picasso

Вместо того, чтобы хостинг сервер на моей локальной машине я хотел бы провести его с сайта, как OpenShift. У меня уже есть сайт HTML с использованием Tomcat 7. Я также хотел бы иметь возможность перейти на страницу на веб-сервере, и эта страница будет действовать как клиентская программа.

monet

Я хочу встроенной программы клиента в веб-сервер, но ....

Как установить связь между двумя серверами? В основном, как заставить веб-страницу связаться с другим сервером и установить соединение (я использую сокеты)? Нужно ли мне использовать сервлет, JSP или что-то вроде JQuery?

Если вы чувствуете, что вам нужно видеть, как серверная программа или клиент сообщают мне, я отправлю их.

+1

Вопрос ясен и суетлив, но здесь не подходит. Вам будет лучше удача, а затем спросите, как решить конкретные проблемы. –

+0

Есть ли здесь 2 сервера или 1? Вы упомянули, что хотите использовать сторонний хостинг, но нужно ли вам продолжать использовать второй сервер? Возможно, вы могли бы сделать это без какого-либо удаленного подключения. – 4castle

+0

Почему вы хотите пройти через веб-сервер? Ваша серверная программа - если она использует Sockets - может просто запускаться на другом сервере, вашим клиентам нужно будет указать целевой IP-адрес или имя хоста, и он будет работать так же, как ваш первый чертеж. – geert3

ответ

1

Хотелось бы разместить клиентскую версию на веб-странице.

Ваш JSP или сервлет будет клиентом в этом случае, он откроет сокет для серверного процесса. Посмотрите на HttpServlet и его метод doGet, это в основном то, что вы могли бы реализовать, и где бы вы разместили большую часть вашего клиентского кода, например, открыв сокет для вашего серверного процесса и вернув данные. Вы найдете тонны примеров в Интернете, смотри, например,

how to write hello world servlet Example

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

+0

Из-за поведения клиентской программы и сервера я собираюсь сказать, что ваш второй курс действий - это путь. Я собираюсь объяснить, согласны ли вы. Сервер отправляет трансляции каждому клиенту на основе обновления для «состояния» одного из клиентов. то есть. клиент 1 передает обновление серверу, сервер передает это обновление клиенту 1 и 2. Веб-сокеты хм .... это часть пакета сервлетов? Или вы говорите о сокетах и ​​сокетах сервера в java.net? – chewbapoclypse

+0

websockets - это довольно новая технология, которая является частью спецификации Servlet, поскольку v.3.1 - она ​​используется для непрерывного соединения между браузером и веб-сервером/сервлетом, поэтому браузер может получать уведомления с сервера без необходимости делать сначала запрос («push»). Между вашим веб-сервером и вашим «серверным процессом» будет (регулярное) соединение сокетов. Websocket будет использоваться для передачи уведомлений в ваш браузер. – geert3

+0

Я не знаю, хотите ли вы включить это в свой ответ. [Учебник по WebSocket] (http://www.oracle.com/webfolder/technetwork/tutorials/obe/java/HomeWebsocket/WebsocketHome.html) – chewbapoclypse

Смежные вопросы