weblogic10.3.6 自动启动服务后停止的解决方案

      windows部署weblogic后,需要手动开启weblogic管理员服务器,即Start Admin Server for Weblogic Server Domain,不过这样的话每次重启或者不小心就关掉了cmd窗体,很不方便。幸好weblogic本身可以实现通过windows服务自动启动weblogic管理员服务器。

      Weblogic的版本为10.3.6,在用installSvc.cmd安装服务后,自动启动服务时,提示如下 服务自动停止的错误。

     

      安装服务的具体操作如下

      编辑安装目录 C:\Oracle\Middleware\wlserver_10.3\server\bin里的installSvc.cmd文件,在 

rem *** Install the service
"%WL_HOME%\server\bin\beasvc" -install -svcname:"beasvc %DOMAIN_NAME%_%SERVER_NAME%" -javahome:"%JAVA_HOME%" -execdir:"%USERDOMAIN_HOME%" -maxconnectretries:"%MAX_CONNECT_RETRIES%" -host:"%HOST%" -port:"%PORT%" -extrapath:"%EXTRAPATH%" -password:"%WLS_PW%" -cmdline:%CMDLINE%

     代码前面 加上以下几句话
    

set JAVA_HOME=C:\Program Files\Java\jdk1.7.0_45
set DOMAIN_NAME=BASE_DOMAIN set SERVER_NAME=AdminServer set USERDOMAIN_HOME=C:\Oracle\Middleware\user_projects\domains\base_domain set WLS_USER=weblogic set WLS_PW=Pass@word1

     JAVA_HOME即java JDK的安装目录,DOMAIN_NAME即weblogic server的域的名称(登录weblogic查看域),SERVER_NAME即weblogic 服务器的实例的名称(登录weblogic查看服务器),USERDOMAIN_HOME即当前登录用户域所在目录,WLS_USER和WLS_PW是登录weblogic的用户名和密码。

    加上之后,以管理员身份打开cmd命令窗口,执行以下命令(每一行是一条命令)

cd C:\Oracle\Middleware\wlserver_10.3\server\bin
installSvc.cmd

    之后在启动时,就遇上面图中的错误,现在说一下解决方案:
    首先呢,在命令窗口执行如下命令(每一行是一条命令),进行服务的启动调试

cd C:\Oracle\Middleware\wlserver_10.3\server\bin
beasvc -debug "beasvc BASE_DOMAIN_AdminServer"

    这时系统会提示服务启动不了得具体原因,如下图所示
   

     这是提示unable to locate java.dll in c:\program files\java\jdk1.7.0_45\bin\jre\bin!,看黑色加粗部分我们可知,是我们的java环境路径不对,我们在installSvc.cmd里面搜索JAVA_HOME 发现JAVA_HOME变量让我设置错了,多加了一个bin,具体如下代码

set JAVA_HOME=C:\Program Files\Java\jdk1.7.0_45\bin

      重新安装服务,运行beasvc -debug "beasvc BASE_DOMAIN_AdminServer"命令后,发现如下错误

     

       这是我们注册表注册服务的时候出了问题,regedit打开注册表,找到HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\beasvc BASE_DOMAIN_AdminServer\Parameters,在CmdLine这个属性处,我们发现有个-client,具体如下图

       

        编辑此属性,去除-client,重新运行服务,发现一切正常了.

        另外今天(2014-3-14)在注册另一台机器weblogic的windows服务的时候,报这个错误

       

       然后按要求打开注册表 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\beasvc BASE_DOMAIN_AdminServer\Parameters,把cmdline的-client去掉后,还是不可以,然后发现JAVAHOME的键值有些异常,如下图所示

       

       果断去掉JAVAHome键值中路径的set beasvc……的值,重启服务,但过了一会还是自动停止。 于是卸载掉服务,重新安装,发现在安装文件installsvc.CMD里有句话写错了,具体如下

       

        换行后,正常。

卸载服务

        卸载此服务命令的方法如下,找到C:\Oracle\Middleware\wlserver_10.3\server\bin里的uninstallSvc.cmd

        编辑里面的

"%WL_HOME%\server\bin\beasvc" -remove -svcname:"beasvc %DOMAIN_NAME%_%SERVER_NAME% 修改为

"%WL_HOME%\server\bin\beasvc" -remove -svcname:"beasvc BASE_DOMAIN_AdminServer" 

     (beasvc BASE_DOMAIN_AdminServer为你的服务名)

      在命令窗口运行如下命令(每一行是一条命令),

cd C:\Oracle\Middleware\wlserver_10.3\server\bin
uninstallSvc.cmd

 

 

posted @ 2014-03-02 01:01  flowbywind  阅读(9463)  评论(1编辑  收藏  举报