Details
-
Bug
-
Resolution: Done
-
Major
-
None
-
JBossAS-5.0.1.GA, JBossAS-5.1.0.Beta1
-
None
-
None
Description
In JBoss 4.2.3, I was able to prepend to run.bat a JAVA_OPTS option with a pipe symbol (|) by escaping it using quote marks.
Example:
set JAVA_OPTS=-Dhttp.nonProxyHosts="localhost|*.ldms.ibm.com"
In JBoss 5.0.1.GA and 5.1.0.Beta1, the run.bat script has been modified slightly so that this is no longer possible. This modification was to wrap JAVA_OPTS with quote marks which will not parse if JAVA_OPTS already has quote marks as in the above example. There are two places where this occurs. Here is the first place:
if "x%JAVA_OPTS%" == "x" (
set "JAVA_OPTS=-Dprogram.name=%PROGNAME%"
) else (
set "JAVA_OPTS=%JAVA_OPTS% -Dprogram.name=%PROGNAME%"
)
The first place where it occurs can be fixed by reverting to the version 4.2.3 run.bat code without quote marks:
set JAVA_OPTS=%JAVA_OPTS% -Dprogram.name=%PROGNAME%
The second place it occurs is as follows:
if not errorlevel == 1 (
set "JAVA_OPTS=%JAVA_OPTS% -server"
)
This second place can be fixed by removing the quote marks:
if not errorlevel == 1 (
set JAVA_OPTS=%JAVA_OPTS% -server
)