Мне нужно автоматически запустить веб-службу на сервере RedHat. Веб-служба работает и может быть загружена вручную через NetBeans.
Попытка сделать так, чтобы пользователю нужно было выполнить только одну командную строку или что-то подобное, чтобы запустить ее.
Начал с установки и запуска сервера GlassFish (используется http://blogs.oracle.com/foo/entry/run_glassfish_v3_as_a в основном, с некоторым вкладом из других источников)
Это привело к тому, что я сделал следующее;
-Добавлен новый пользователь
groupadd glassfish
useradd -s /bin/bash -d /home/glassfish -m -g glassfish glassfish
-Вошел в систему как указанный пользователь
sudo -i -u glassfish
-Установлена стеклянная рыбка
cd ~
unzip glassfish-v3.zip
rm glassfish-v3.zip
-Оставил оболочку
-Скопировал скрипт в /etc/init.d и настроил его как исполняемый файл
cp <script file as shown below> /etc/init.d/glassfish
chmod +x /etc/rc.d/init.d/glassfish
* СЦЕНАРИЙ *
#!/bin/sh
# Platform Services for GlassFish
#
GF_USER=glassfish
GF_HOME=/home/$GF_USER/glassfishv3/glassfish
ASADMIN=$GF_HOME/bin/asadmin
SU="su --login $GF_USER --command "
case "$1" in start)
$SU "$ASADMIN start-domain > /dev/null 2>&1 &";;stop)
$SU "$ASADMIN stop-domain > /dev/null 2>&1 &";;restart)
$SU "$ASADMIN restart-domain > /dev/null 2>&1 &";;\*)
echo "usage: $0 (start|stop|restart|help)"esac
Можно запускать/останавливать/перезапускать с; sudo /etc/init.d/glassfish start|stop|restart
Проблема, как мне кажется, в том, что Glassfish работает, а мой маленький веб-сервис Java — нет. Я не удивлен, что веб-служба Java не работает, поскольку я никогда не включал ее в приведенное выше, но как мне настроить ее так, чтобы моя веб-служба работала?
Я пришел сегодня утром и понял, что мне нужно развернуть java-клиент. Я сделал это, следуя инструкциям из
http://download.oracle.com/docs/cd/E19798-01/821-1757/geyvr/index.html
Для автоматического развертывания приложений.
Но теперь, используя этот метод, мой веб-клиент Windows не может общаться с моим хостом RedHat, но они совершенно счастливы, когда запускаются вручную.
Единственная разница, о которой я могу думать, заключается в том, что пользователь на машине Redhat при ручном запуске служб является «root» (что немного опасно для веб-приложения). Но при автоматическом запуске клиента он запускается как пользователь... Конечно, это может быть полным отвлекающим маневром....
Есть идеи, ребята?