我试图将Weblogic adminserver安装为Windows服务,但是在执行安装脚本时出现“输入时间过长”错误。
答案 0 :(得分:0)
在这个问题上,我付出了很多努力,终于找到了将AdminServer和Nodemanager注册为Weblogic的Windows服务的方法。以下是进度面临的步骤和问题:
要将weblogic AdminServer注册为Windows服务器,首先需要创建一个包含oracle home,java home等值的脚本。以下是我用于安装服务的脚本:
`
echo off
SETLOCAL
set MW_HOME=C:\Oracle\Middleware\Oracle_Home
set DOMAIN_NAME=osb_domain
set USERDOMAIN_HOME=C:\Oracle\Middleware\Oracle_Home\user_projects\domains\osb_domain
set SERVER_NAME=AdminServer
set WL_HOME=C:\Oracle\Middleware\Oracle_Home\wlserver
set PRODUCTION_MODE=true
set JAVA_OPTIONS=-Dweblogic.Stdout="%USERDOMAIN_HOME%\stdout.txt" -Dweblogic.Stderr="%USERDOMAIN_HOME%\stderr.txt"
set WLS_USER=weblogic
set WLS_PW=Password123
set MEM_ARGS=-Xms1024m -Xmx1024m
call "C:\Oracle\Middleware\Oracle_Home\user_projects\domains\osb_domain\bin\setDomainEnv.cmd"
call "C:\Oracle\Middleware\Oracle_Home\wlserver\server\bin\installSvc.cmd"
ENDLOCAL
`
通过运行此脚本,我什至无法安装Windows服务,因为它抛出“输入太长”错误,原因是Windows字符限制。您可能会对classpath感到困惑,并会尝试解析classpath,但是 问题是由SetDomainEnv.txt设置的JAVA_OPTIONS值造成的。
我已如下修改脚本,并在设置脚本中的JAVA_OPTIONS之前通过调用SetDomainEnv.txt命令来缩短JAVA_OPTIONS值。 这已覆盖了JAVA_OPTIONS的冗长值。现在,我已成功将AdminServer安装为Windows服务。
`
echo off
SETLOCAL
set MW_HOME=C:\Oracle\Middleware\Oracle_Home
set DOMAIN_NAME=osb_domain
set USERDOMAIN_HOME=C:\Oracle\Middleware\Oracle_Home\user_projects\domains\osb_domain
set SERVER_NAME=AdminServer
set WL_HOME=C:\Oracle\Middleware\Oracle_Home\wlserver
set PRODUCTION_MODE=true
call "C:\Oracle\Middleware\Oracle_Home\user_projects\domains\osb_domain\bin\setDomainEnv.cmd"
set JAVA_OPTIONS=-Dweblogic.Stdout="%USERDOMAIN_HOME%\stdout.txt" -Dweblogic.Stderr="%USERDOMAIN_HOME%\stderr.txt"
set WLS_USER=weblogic
set WLS_PW=Password123
set MEM_ARGS=-Xms1024m -Xmx1024m
call "C:\Oracle\Middleware\Oracle_Home\wlserver\server\bin\installSvc.cmd"
ENDLOCAL `
即使该服务已成功安装,当我启动该服务时,该服务也会立即停止,并且由于未连接到AdminServer而没有打印任何日志。
经过一些分析,我发现调用AdminServer非常需要在脚本中覆盖的JAVA_OPTIONS值。
我已经在cmd提示符下运行SetDomainEnv.txt,并复制了JAVA_OPTIONS个值。
由于已经安装了该服务,因此我只是在Windows服务注册表中手动复制了正确的JAVA_OPTIONS值CMDLINE参数。
服务器子系统失败。原因:MultiException有6个异常。 服务器安装为Windows NT服务,用户weblogic的密码不正确。自服务器作为Windows NT服务安装以来,密码可能已更改。请与Windows NT系统管理员联系。
注意:CMDLINE参数中没有插入多余的空格或字符。
现在一切就绪,这实际上是启动管理服务器所需的。但是,当我启动该服务时,它会在adminserver.log文件中引发一些身份验证错误以及其他错误。
经过大量分析,我发现这不是身份验证问题,问题出在boot.properties文件上。开机。属性文件未正确读取。
答案 1 :(得分:0)
此答案是下面一个的继续:
经过大量分析,我发现这不是身份验证问题,问题出在boot.properties文件上。开机。属性文件未正确读取。
现在,我要介绍一些背景知识-如果将融合中间件安装为开发模式,则将在Oracle_HOME \ user_projects \ domains \ domainname \ servers \ AdminServer \ security中自动创建boot.properties文件,如果您查看此prop文件,将以加密模式找到密码和用户名。 如果融合中间件作为生产模式安装,则每次都会要求输入密码和用户名。为了避免这种情况,请执行以下步骤:
username = weblogic 密码=密码
注意:不应添加空格,并且要注意文件扩展名。
最后,按照上述过程安装Windows服务。应该可以。
======================
关于节点管理器,请使用domain \ bin中的installNodeMgrSvc。同样,如果输入太长错误,则必须缩短JAVA_OPTIONS,然后在Windows注册表中仔细编辑CMDLINE参数。