Windows 7 и Redhat общаются через защищенные веб-сервисы Glassfish - PullRequest
0 голосов
/ 23 мая 2011

Я унаследовал веб-сервис, который был написан на Netbeans и работает на Glassfish (версия 3) и использовался для обмена данными между сервером Redhat и машиной Windows 7.

Их можно запустить вручную, используяNetbeans (6.9) для запуска сервера Glassfish и развертывания сценария Java, и они довольно безопасно взаимодействуют


Конечно, ручное развертывание системы, как это далеко от идеала, поэтому я организовал Glassfishдля развертывания через интерфейс командной строки Redhat;

  1. Создать пользователя

    groupadd glassfish

    useradd -s / bin / bash -d /home / glassfish -m -g glassfish glassfish

  2. Копирование с компакт-диска в каталог Glassfish

    mkdir cdrom

    chmod 777 / cdrom

    mount / dev / cd0 / cdrom

    cp glassfish-v3.zip /home/glassfish/glassfish-v3.zip

  3. Войдите в систему как новый пользователь в терминалеwindow

    sudo -i -u glassfish

  4. IУстановите GlassFish V3, используя пользователя glassfish

    cd ~

    распакуйте glassfish-v3.zip

    rm glassfish-v3.zip

  5. Выйдите из оболочки из шага 2

Затем файл .war (как в сценарии Java) помещается в

glassfish/glassfishv3/glassfish/domains/domain1/autodeploy/CommandAndControlService.war

(как описано в;http://download.oracle.com/docs/cd/E19798-01/821-1757/geyvr/index.html)


Затем, чтобы запустить Glassfish, я просто захожу как пользователь glassfish и запускаю glassfish

sudo -i -u glassfish
sudo glassfishv2/glassfish/bin/asadmin start-domain

(который автоматически развертывает файл .war ранее, так как он находится вкаталог «auto-deploy»)


Затем для машины с Windows 7…

Glassfishv3 распаковывается в

C:\glassfishv3

Затем, чтобы запустить его, я печатаю;

C:\glassfishv3\glassfish\bin\asadmin.bat start-domain

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

Проблема в том, что безопасное соединениетребуется, и это было вставлено в сценарий, и он прекрасно работает, когда Glassfish запускается через NetBeans на обеих машинах.

Однако при использовании описанной выше процедуры для запуска Glassfish защищенная ссылка не работаетиз-за того, что сертификаты являются «самозаверяющими» (в коде используется «Безопасность взаимных сертификатов»).

Я бы сказал, что это должно быть что-то в коде, но как оно работает, когда запускается черезтьфу Netbeans Я бы сказал, что это как-то связано с тем, как я запускаю Glassfish и развертываю файл .war.

(Я пытался запустить только один сервис автоматически, а другой через Netbeans, ноЯ получаю ту же проблему;канал связи, запущенный через командную строку, не может подключиться из-за самозаверяющих сертификатов)

Есть идеи?

Большое спасибо

...