2016-06-30 12 views
0

Я пытаюсь запустить и остановить приложение на одной JVM через консоль wsadmin с веб-интерфейса для IBM BPM PS Adv. не допускает такого рода операции. Итак, у меня есть следующий сценарий:Временной тайм-аут wsadmin при выполнении против DMGR через SOAP

https://gist.github.com/predatorian3/b8661c949617727630152cbe04f78d7e

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

[[email protected] ~]$ cat /usr/local/bin/Run_wsadmin.sh 
#!/bin/bash 
# 
# 
# 

/opt/IBM/WebSphere/AppServer/bin/wsadmin.sh -lang jython -user serviceAccount -password password $* 

[[email protected]soapscrt00 ~]$ time Run_wsadmin.sh -f /opt/IBM/wsadmin/wsadmin_Restart_Application.py WPS00 CRT00WPS01 redirectResource_war 
WASX7209I: Connected to process "dmgr" on node CRTDMGR using SOAP connector; The type of process is: DeploymentManager 
WASX7303I: The following options are passed to the scripting environment and are available as arguments that are stored in the argv variable: "[WPS00, CRT00WPS01, redirectResource_war]" 
WASX7017E: Exception received while running file "/opt/IBM/wsadmin/wsadmin_Restart_Application.py"; exception information: com.ibm.websphere.management.exception.ConnectorException 
org.apache.soap.SOAPException: [SOAPException: faultCode=SOAP-ENV:Client; msg=Read timed out; targetException=java.net.SocketTimeoutException: Read timed out] 


real 3m21.275s 
user 0m17.411s 
sys  0m0.796s 

Таким образом, я не указываю типы подключения и использую по умолчанию, то есть SOAP. Однако, после reading about the other Connection Types, ни один из них не выглядит лучше, но я приписываю это неопределенности IBM Documentation. Есть ли возможность увеличить периоды ожидания таймаута или отключить его, или есть лучший тип соединения?

Кроме того, запуская это непосредственно на консоли wsadmin, кажется, что он висит на сборе строки диспетчера приложений.

[[email protected] ~]$ Run_wsadmin.sh 
WASX7209I: Connected to process "dmgr" on node CRTDMGR using SOAP connector; The type of process is: DeploymentManager WASX7031I: For help, enter: "print Help.help()" 
wsadmin>appManager = AdminControl.queryNames('cell=CRTCELL,node=WPS00,type=ApplicatoinManager,process=CRT00WPS01,*') 
WASX7015E: Exception running command: "appManager = AdminControl.queryNames('cell=CRTCELL,node=WPS00,type=ApplicationManager,process=CRT00WPS01,*')"; exception information: 
com.ibm.websphere.management.exception.ConnectorException 
org.apache.soap.SOAPException: [SOAPException: faultCode=SOAP-ENV:Client; msg=Read timed out; targetException=java.net.SocketTimeoutException: Read timed out] 

wsadmin> 
+0

вы уверены, что клетка, узел, сервера имен являются правильными? И этот узел и сервер работают и работают? – Gas

+0

Да, когда я ищу эти процессы, они появляются. Скрипт работал до тех пор, пока не было установлено определенное приложение. – Pred

ответ

0

Вы можете увеличить значение тайм-аута в {профиля} /properties/soap.client.props

com.ibm.SOAP.requestTimeout=180 
+0

Я исправил свое правописание и все еще имел таймауты. Однако могу ли я добавить параметр «-javaoption» -Dcom.ibm.SOAP.requestTimeout = 0 »в аргумент командной строки или он должен быть в файле конфигурации? – Pred

0

Если вы хотите отключить тайм-аут, изменять com.ibm.SOAP.requestTimeout = 0 Или, если вам нужен более длинный тайм-аут, вы можете изменить значение 180 на что-то еще. Также о вашей команде запроса, я заметил, что у вас есть опечатка на тип MBean, у вас был тип = ApplicatoinManager, он должен быть type = ApplicationManager

+0

Я исправил свое правописание и все еще имел таймауты. Однако могу ли я добавить параметр «-javaoption» -Dcom.ibm.SOAP.requestTimeout = 0 »в аргумент командной строки или он должен быть в файле конфигурации? – Pred

0

ЗДЕСЬ ВЫ GO - У меня была та же проблема. Я хочу временно переопределить тайм-аут. Это работало как чемпион. Убедитесь, что вы выполните следующие шаги в точности. Я сделал некоторые ошибки, и пропер не прошел, я понял, и это работает.

Скопируйте файл soap.client.props из/properties и дайте ему новое имя, например mysoap.client.props. Редактируйте mysoap.client.props и обновите значение com.ibm.SOAP.requestTimeout по мере необходимости Создайте новый файл свойств Java soap_override.props и введите следующую строку: com.ibm.SOAP.ConfigURL = file:/mysoap .client.props Pass soap_override.props в wsadmin с помощью опции -p: wsadmin -p soap_override.props ...

ССЫЛКА: https://www.ibm.com/developerworks/community/blogs/timdp/entry/avoiding_wsadmin_request_timeouts_the_neat_way32?lang=en