260 lines
7.8 KiB
Batchfile
260 lines
7.8 KiB
Batchfile
@echo off
|
|
rem -------------------------------------------------------------------------
|
|
rem JBoss Bootstrap Script for Windows
|
|
rem -------------------------------------------------------------------------
|
|
|
|
rem $Id$
|
|
|
|
@if not "%ECHO%" == "" echo %ECHO%
|
|
@if "%OS%" == "Windows_NT" setlocal
|
|
rem Set to all parameters by default
|
|
set SERVER_OPTS=%*
|
|
|
|
if "%OS%" == "Windows_NT" (
|
|
set "DIRNAME=%~dp0%"
|
|
) else (
|
|
set DIRNAME=.\
|
|
)
|
|
|
|
pushd "%DIRNAME%.."
|
|
set "RESOLVED_JBOSS_HOME=%CD%"
|
|
popd
|
|
|
|
rem Identifies the launch script type.
|
|
set JBOSS_LAUNCH_SCRIPT=batch
|
|
|
|
call "%DIRNAME%common.bat" :commonConf
|
|
|
|
setlocal EnableDelayedExpansion
|
|
rem check for the security manager system property
|
|
echo(!SERVER_OPTS! | findstr /r /c:"-Djava.security.manager" > nul
|
|
if not errorlevel == 1 (
|
|
echo ERROR: The use of -Djava.security.manager has been removed. Please use the -secmgr command line argument or SECMGR=true environment variable.
|
|
GOTO :EOF
|
|
)
|
|
setlocal DisableDelayedExpansion
|
|
|
|
rem Read command-line args.
|
|
:READ-ARGS
|
|
if "%~1" == "" (
|
|
goto MAIN
|
|
) else if "%~1" == "-secmgr" (
|
|
set SECMGR=true
|
|
)
|
|
shift
|
|
goto READ-ARGS
|
|
|
|
:MAIN
|
|
|
|
if "x%JBOSS_HOME%" == "x" (
|
|
set "JBOSS_HOME=%RESOLVED_JBOSS_HOME%"
|
|
)
|
|
|
|
pushd "%JBOSS_HOME%"
|
|
set "SANITIZED_JBOSS_HOME=%CD%"
|
|
popd
|
|
|
|
if /i "%RESOLVED_JBOSS_HOME%" NEQ "%SANITIZED_JBOSS_HOME%" (
|
|
echo.
|
|
echo WARNING: JBOSS_HOME may be pointing to a different installation - unpredictable results may occur.
|
|
echo.
|
|
echo JBOSS_HOME: "%JBOSS_HOME%"
|
|
echo.
|
|
)
|
|
|
|
rem Read an optional configuration file.
|
|
if "x%DOMAIN_CONF%" == "x" (
|
|
set "DOMAIN_CONF=%DIRNAME%domain.conf.bat"
|
|
)
|
|
if exist "%DOMAIN_CONF%" (
|
|
echo Calling "%DOMAIN_CONF%"
|
|
call "%DOMAIN_CONF%" %*
|
|
) else (
|
|
echo Config file not found "%DOMAIN_CONF%"
|
|
)
|
|
|
|
if "%OS%" == "Windows_NT" (
|
|
set "PROGNAME=%~nx0%"
|
|
) else (
|
|
set "PROGNAME=domain.bat"
|
|
)
|
|
|
|
rem Setup JBoss specific properties
|
|
set "JAVA_OPTS=-Dprogram.name=%PROGNAME% %JAVA_OPTS%"
|
|
|
|
if "x%JAVA_HOME%" == "x" (
|
|
set JAVA=java
|
|
echo JAVA_HOME is not set. Unexpected results may occur.
|
|
echo Set JAVA_HOME to the directory of your local JDK to avoid this message.
|
|
) else (
|
|
if not exist "%JAVA_HOME%" (
|
|
echo JAVA_HOME "%JAVA_HOME%" path doesn't exist
|
|
goto END
|
|
) else (
|
|
if not exist "%JAVA_HOME%\bin\java.exe" (
|
|
echo "%JAVA_HOME%\bin\java.exe" does not exist
|
|
goto END_NO_PAUSE
|
|
)
|
|
echo Setting JAVA property to "%JAVA_HOME%\bin\java"
|
|
set "JAVA=%JAVA_HOME%\bin\java"
|
|
)
|
|
)
|
|
|
|
rem set default modular jvm parameters
|
|
setlocal EnableDelayedExpansion
|
|
call "!DIRNAME!common.bat" :setDefaultModularJvmOptions "!PROCESS_CONTROLLER_JAVA_OPTS!"
|
|
set "PROCESS_CONTROLLER_JAVA_OPTS=!PROCESS_CONTROLLER_JAVA_OPTS! !DEFAULT_MODULAR_JVM_OPTIONS!"
|
|
call "!DIRNAME!common.bat" :setDefaultModularJvmOptions "!HOST_CONTROLLER_JAVA_OPTS!"
|
|
set "HOST_CONTROLLER_JAVA_OPTS=!HOST_CONTROLLER_JAVA_OPTS! !DEFAULT_MODULAR_JVM_OPTIONS!"
|
|
|
|
rem If the -Djava.security.manager is found, enable the -secmgr and include a bogus security manager for JBoss Modules to replace
|
|
echo(!PROCESS_CONTROLLER_JAVA_OPTS! | findstr /r /c:"-Djava.security.manager" > nul && (
|
|
echo "ERROR: Support for using -Djava.security.manager has been removed. Please use -secmgr or set the environment variable SECMGR=true"
|
|
GOTO :EOF
|
|
)
|
|
|
|
rem Set default Security Manager configuration value
|
|
call "!DIRNAME!common.bat" :setSecurityManagerDefault
|
|
set "PROCESS_CONTROLLER_JAVA_OPTS=!PROCESS_CONTROLLER_JAVA_OPTS! !SECURITY_MANAGER_CONFIG_OPTION!"
|
|
set "HOST_CONTROLLER_JAVA_OPTS=!HOST_CONTROLLER_JAVA_OPTS! !SECURITY_MANAGER_CONFIG_OPTION!"
|
|
|
|
setlocal DisableDelayedExpansion
|
|
|
|
rem Add -Djdk.serialFilter if not specified
|
|
echo "%JAVA_OPTS%" | findstr /I "\-Djdk.serialFilter" > nul
|
|
if errorlevel == 1 (
|
|
if "x%DISABLE_JDK_SERIAL_FILTER%" == "x" (
|
|
setlocal EnableDelayedExpansion
|
|
set "PROCESS_CONTROLLER_JAVA_OPTS=!PROCESS_CONTROLLER_JAVA_OPTS! -Djdk.serialFilter="!JDK_SERIAL_FILTER!""
|
|
set "HOST_CONTROLLER_JAVA_OPTS=!HOST_CONTROLLER_JAVA_OPTS! -Djdk.serialFilter="!JDK_SERIAL_FILTER!""
|
|
setlocal DisableDelayedExpansion
|
|
)
|
|
)
|
|
|
|
rem Find run.jar, or we can't continue
|
|
if exist "%JBOSS_HOME%\jboss-modules.jar" (
|
|
set "RUNJAR=%JBOSS_HOME%\jboss-modules.jar"
|
|
) else (
|
|
echo Could not locate "%JBOSS_HOME%\jboss-modules.jar".
|
|
echo Please check that you are in the bin directory when running this script.
|
|
goto END
|
|
)
|
|
|
|
rem Setup directories, note directories with spaces do not work
|
|
setlocal EnableDelayedExpansion
|
|
set "CONSOLIDATED_OPTS=%JAVA_OPTS% %SERVER_OPTS%"
|
|
set baseDirFound=false
|
|
set configDirFound=false
|
|
set logDirFound=false
|
|
for %%a in (!CONSOLIDATED_OPTS!) do (
|
|
if !baseDirFound! == true (
|
|
set "JBOSS_BASE_DIR=%%~a"
|
|
set baseDirFound=false
|
|
)
|
|
if !configDirFound! == true (
|
|
set "JBOSS_CONFIG_DIR=%%~a"
|
|
set configDirFound=false
|
|
)
|
|
if !logDirFound! == true (
|
|
set "JBOSS_LOG_DIR=%%~a"
|
|
set logDirFound=false
|
|
)
|
|
if "%%~a" == "-Djboss.domain.base.dir" (
|
|
set baseDirFound=true
|
|
)
|
|
if "%%~a" == "-Djboss.domain.config.dir" (
|
|
set configDirFound=true
|
|
)
|
|
if "%%~a" == "-Djboss.domain.log.dir" (
|
|
set logDirFound=true
|
|
)
|
|
)
|
|
|
|
setlocal DisableDelayedExpansion
|
|
|
|
rem Setup JBoss specific properties
|
|
|
|
rem Set default module root paths
|
|
if "x%JBOSS_MODULEPATH%" == "x" (
|
|
set "JBOSS_MODULEPATH=%JBOSS_HOME%\modules"
|
|
)
|
|
|
|
rem Set the domain base dir
|
|
if "x%JBOSS_BASE_DIR%" == "x" (
|
|
set "JBOSS_BASE_DIR=%JBOSS_HOME%\domain"
|
|
)
|
|
rem Set the domain log dir
|
|
if "x%JBOSS_LOG_DIR%" == "x" (
|
|
set "JBOSS_LOG_DIR=%JBOSS_BASE_DIR%\log"
|
|
)
|
|
rem Set the domain configuration dir
|
|
if "x%JBOSS_CONFIG_DIR%" == "x" (
|
|
set "JBOSS_CONFIG_DIR=%JBOSS_BASE_DIR%\configuration"
|
|
)
|
|
|
|
rem Set the module options
|
|
set "MODULE_OPTS="
|
|
if "%SECMGR%" == "true" (
|
|
set "MODULE_OPTS=-secmgr"
|
|
)
|
|
|
|
echo ===============================================================================
|
|
echo.
|
|
echo JBoss Bootstrap Environment
|
|
echo.
|
|
echo JBOSS_HOME: "%JBOSS_HOME%"
|
|
echo.
|
|
echo JAVA: "%JAVA%"
|
|
echo.
|
|
echo JAVA_OPTS: "%PROCESS_CONTROLLER_JAVA_OPTS%"
|
|
echo.
|
|
echo ===============================================================================
|
|
echo.
|
|
|
|
:RESTART
|
|
"%JAVA%" %PROCESS_CONTROLLER_JAVA_OPTS% ^
|
|
"-Dorg.jboss.boot.log.file=%JBOSS_LOG_DIR%\process-controller.log" ^
|
|
"-Dlogging.configuration=file:%JBOSS_CONFIG_DIR%/logging.properties" ^
|
|
-jar "%JBOSS_HOME%\jboss-modules.jar" ^
|
|
%MODULE_OPTS% ^
|
|
-mp "%JBOSS_MODULEPATH%" ^
|
|
org.jboss.as.process-controller ^
|
|
-jboss-home "%JBOSS_HOME%" ^
|
|
-jvm "%JAVA%" ^
|
|
%MODULE_OPTS% ^
|
|
-mp "%JBOSS_MODULEPATH%" ^
|
|
-- ^
|
|
"-Dorg.jboss.boot.log.file=%JBOSS_LOG_DIR%\host-controller.log" ^
|
|
"-Dlogging.configuration=file:%JBOSS_CONFIG_DIR%/logging.properties" ^
|
|
%HOST_CONTROLLER_JAVA_OPTS% ^
|
|
-- ^
|
|
-default-jvm "%JAVA%" ^
|
|
%*
|
|
|
|
if %errorlevel% equ 10 (
|
|
echo INFO: Restarting...
|
|
goto RESTART
|
|
)
|
|
|
|
if %errorlevel% equ 20 (
|
|
echo INFO: Starting Candidate Server installation using Management CLI Installer script
|
|
|
|
setlocal EnableDelayedExpansion
|
|
set "INST_MGR_CONSOLE_FILE=!JBOSS_LOG_DIR!\management-cli-installer-out.log"
|
|
call "!JBOSS_HOME!\bin\installation-manager.bat" "!JBOSS_HOME!" "!JBOSS_CONFIG_DIR!\logging.properties" "!JBOSS_LOG_DIR!\host-controller.log" >> "!INST_MGR_CONSOLE_FILE!" 2>&1
|
|
if !ERRORLEVEL! equ 0 (
|
|
echo INFO: Candidate Server installation completed successfully.
|
|
) else (
|
|
echo ERROR: Candidate Server installation failed. Check Management CLI Installer script log file for more information: !INST_MGR_CONSOLE_FILE!
|
|
)
|
|
setlocal DisableDelayedExpansion
|
|
|
|
echo Restarting...
|
|
goto RESTART
|
|
)
|
|
|
|
:END
|
|
if "x%NOPAUSE%" == "x" pause
|
|
|
|
:END_NO_PAUSE
|