Если вы хотите управлять JBoss через скрипт, вам, вероятно, следует использовать инструмент twiddle. Подробнее здесь: http://community.jboss.org/wiki/Twiddle.
Если вы хотите остановить приложение WAR, вы можете сделать что-то вроде этого:
- список WAR-приложений и их имя bean-компонента:
twiddle.sh query 'jboss.web.deployment:*'
jboss.web.deployment:war=/ROOT
jboss.web.deployment:war=/admin-console
twiddle.sh invoke 'jboss.web.deployment:war=/ROOT' stop
twiddle.sh invoke 'jboss.web.deployment:war=/ROOT' start
К сожалению, я не могу найти аналогичное разрешение для приложения EJB. Вы можете найти такое приложение, используя эту команду:
twiddle.sh query 'jboss.j2ee:*'
А позже вы можете попробовать остановить или запустить какое-то приложение. К сожалению, это не работает для меня правильно.
Но вы всегда можете отменить развертывание и развернуть такое приложение. Вы можете сделать это так:
twiddle.sh invoke "jboss.system:service=MainDeployer" deploy file:///path/to/ProjectEAR.ear
twiddle.sh invoke "jboss.system:service=MainDeployer" undeploy file:///path/to/ProjectEAR.ear
Deploy
twiddle.sh invoke "jboss.system:service=MainDeployer" deploy file:///path/to/ProjectEAR.ear
Но это вы должны помнить о таких вещах:
- если вы используете горячее развертывание (служба HDScanner), вы не можете поместить приложение в каталог
deploy (оно будет автоматически развернуто после удаления)
- Если ваше приложение находится не в каталоге
deploy, то сервер не установит его при запуске, и вам придется установить его вручную с помощью команды twiddle
person
Lukasz Stelmach
schedule
19.06.2010