我正在创建一个脚本来重新启动一个实例,它可以在没有任何日志文件的情况下运行但是当我尝试记录psadmin
的输出时它会出现以下错误:
java.lang.NullPointerException
at com.peoplesoft.pt.psadmin.ui.Progress.<init>(Progress.java:135)
at com.peoplesoft.pt.psadmin.ui.Progress.getInstance(Progress.java:123)
at com.peoplesoft.pt.psadmin.pia.DomainBootHandler.BootWlsServer(DomainBootHandler.java:84)
at com.peoplesoft.pt.psadmin.pia.DomainBootHandler.run(DomainBootHandler.java:62)
at com.peoplesoft.pt.psadmin.pia.PIAAdminCmdLine.startDomain(PIAAdminCmdLine.java:270)
at com.peoplesoft.pt.psadmin.pia.PIAAdminCmdLine.run(PIAAdminCmdLine.java:481)
at com.peoplesoft.pt.psadmin.PSAdmin.runSwitched(PSAdmin.java:170)
at com.peoplesoft.pt.psadmin.PSAdmin.main(PSAdmin.java:232)
以下作品(没有日志):
export ORAENV_ASK=NO
export ORACLE_SID=PSCNV
.oraenv
export TUXDIR=/m001/Oracle/Middleware/tuxedo12.1.1.0
. /m001/pt854/psconfig.sh
. $TUXDIR/tux.env
export PS_CFG_HOME=$PS_HOME
$PS_HOME/appserv/psadmin -w shutdown -d PSCNV
$PS_HOME/appserv/psadmin -w start -d PSCNV
$PS_HOME/appserv/psadmin -w status -d PSCNV
更改psadmin
这样的调用会导致错误:
LOGFILE=/home/psoft/scripts/pscnv_webserv_stopNstart.log
test() {
$PS_HOME/appserv/psadmin -w shutdown -d PSCNV
$PS_HOME/appserv/psadmin -w start -d PSCNV
$PS_HOME/appserv/psadmin -w status -d PSCNV
}
test >> ${LOGFILE}
我还尝试单独重定向每个调用的输出并看到相同的错误。
答案 0 :(得分:0)
我也对这个问题的任何反馈感兴趣。我尝试编写一个跨平台的java程序来反弹多个应用程序和Web服务器,似乎psadmin.jar程序在psadmin程序期间专门保存到stdout。
我想评估psadmin / psadmin.jar的输出,看看是否存在需要在os级别杀死进程的可捕获错误。
希望有一种方法可以分享stdout,但我还没找到方法......
答案 1 :(得分:0)
这为我解决了这个问题。 Observable.bindCallback