You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@tomcat.apache.org by Markus Schiegl <ms...@schiegl.com> on 2007/08/08 22:53:58 UTC
Tomcat and path with pound sign (#) -> ClassNotFoundException
Hi there,
starting Tomcat from a path containing a pound sign (#) somewhere
results in a ClassNotFoundException.
I've checked this with
- Solaris Sparc/X86 + Mac OS X
- Java 5 + 6
- Tomcat 5.5.23 + 6.0.13
example:
- mkdir /export/home/markus/tomcat#1
- extract tomcat within this directory
- export JAVA_HOME=/usr/java (JDK 6)
- /export/home/markus/tomcat#1/apache-tomcat-6.0.13/bin/startup.sh
or
cd /export/home/markus/tomcat#1/apache-tomcat-6.0.13/bin ; ./startup.sh
output from catalina.sh with the java call (added set -x to catalina.sh
- i.e. no problem of the calling script omitting something)
/usr/java/bin/java
-Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager
-Djava.util.logging.config.file=/export/home/markus/tomcat#1/apache-tomcat-6.0.13/conf/logging.properties
-Djava.endorsed.dirs=/export/home/markus/tomcat#1/apache-tomcat-6.0.13/endorsed
-classpath
:/export/home/markus/tomcat#1/apache-tomcat-6.0.13/bin/bootstrap.jar:/export/home/markus/tomcat#1/apache-tomcat-6.0.13/bin/commons-logging-api.jar
-Dcatalina.base=/export/home/markus/tomcat#1/apache-tomcat-6.0.13
-Dcatalina.home=/export/home/markus/tomcat#1/apache-tomcat-6.0.13
-Djava.io.tmpdir=/export/home/markus/tomcat#1/apache-tomcat-6.0.13/temp
org.apache.catalina.startup.Bootstrap start
$cat catalina.out
java.lang.ClassNotFoundException: org.apache.catalina.startup.Catalina
at java.net.URLClassLoader$1.run(URLClassLoader.java:200)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
at org.apache.catalina.startup.Bootstrap.init(Bootstrap.java:215)
at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:390)
truss output: path was truncated after the # sign:
...
2717/2: read(5, "CAFEBABE\0\0\0 1\00701\0".., 142) = 142
2717/2:
stat64("/export/home/markus/tomcat#1/apache-tomcat-6.0.13/bin/org/apache/catalina/security/SecurityClassLoad.class",
0xD230ABF0) Err#2 ENOENT
2717/2: llseek(9, 1422, SEEK_SET) = 1422
2717/2: read(9, " P K0304\n\0\0\0\b\0F91C".., 30) = 30
2717/2: llseek(9, 1504, SEEK_SET) = 1504
2717/2: read(9, "95 W k o14 U18 ~ f [DAC3".., 1634) = 1634
2717/2: brk(0x08172F08) = 0
2717/2: brk(0x08176F08) = 0
2717/9: pollsys(0x00000000, 0, 0xCFCA9CD8, 0x00000000) = 0
2717/2:
stat64("/export/home/markus/tomcat#1/apache-tomcat-6.0.13/bin/org/apache/catalina/startup/Catalina.class",
0xD230B3D0) Err#2 ENOENT
2717/2: stat64("/export/home/markus/tomcat", 0xD230AA60) Err#2
ENOENT
2717/2: stat64("/export/home/markus/tomcat", 0xD230AA60) Err#2
ENOENT
2717/2: stat64("/export/home/markus/tomcat", 0xD230AA60) Err#2
ENOENT
2717/2: stat64("/export/home/markus/tomcat", 0xD230AA60) Err#2
ENOENT
2717/3: lwp_cond_wait(0x0806F7A0, 0x0806F788, 0xD208DB48, 0)
(sleeping...)
2717/3: lwp_cond_wait(0x0806F7A0, 0x0806F788, 0xD208DB48, 0)
Err#62 ETIME
2717/9: pollsys(0x00000000, 0, 0xCFCA9CD8, 0x00000000) = 0
2717/2: stat64("/export/home/markus/tomcat", 0xD230AA60) Err#2
ENOENT
2717/2: stat64("/export/home/markus/tomcat", 0xD230AA60) Err#2
ENOENT
2717/2: stat64("/export/home/markus/tomcat", 0xD230AA60) Err#2
ENOENT
...
Although there is a rather old but maybe similar bug at:
http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=4231042
i supose somewhere the road this has been fixed, as i have no problems
with JAVA 5/6 and other java programs otherwise my tests where flawed.
Installing the jdk in such a directory (e.g. /opt/java#6) works with
tomcat, too.
Can anybody confirm that "#" is still a special character (for tomcat)?
Unfortunately i'm somewhat forced to place tomcat installations/
instances into such (with #) directories.
Any fix possible?
thanks in advance!
kind regards,
Markus
---------------------------------------------------------------------
To start a new topic, e-mail: users@tomcat.apache.org
To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
For additional commands, e-mail: users-help@tomcat.apache.org
Re: Tomcat and path with pound sign (#) -> ClassNotFoundException
Posted by Markus Schiegl <ms...@schiegl.com>.
Hi,
being root (for these tests) should give me enough permissions. I have
no problems creating sym-links at all (with or without #) although my
test-case involves no symbolic links.
Any specific test?
kind regards,
Markus
Alexey Solofnenko wrote:
> Are you allowed to create symbolic links with normal names?
>
> - Alexey.
>
> Markus Schiegl wrote:
>> Hi there,
>>
>> starting Tomcat from a path containing a pound sign (#) somewhere
>> results in a ClassNotFoundException.
>>
>> I've checked this with
>> - Solaris Sparc/X86 + Mac OS X
>> - Java 5 + 6
>> - Tomcat 5.5.23 + 6.0.13
>>
>> example:
>> - mkdir /export/home/markus/tomcat#1
>> - extract tomcat within this directory
>> - export JAVA_HOME=/usr/java (JDK 6)
>> - /export/home/markus/tomcat#1/apache-tomcat-6.0.13/bin/startup.sh
>> or
>> cd /export/home/markus/tomcat#1/apache-tomcat-6.0.13/bin ; ./startup.sh
>>
>> output from catalina.sh with the java call (added set -x to catalina.sh
>> - i.e. no problem of the calling script omitting something)
>>
>> /usr/java/bin/java
>> -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager
>> -Djava.util.logging.config.file=/export/home/markus/tomcat#1/apache-tomcat-6.0.13/conf/logging.properties
>>
>> -Djava.endorsed.dirs=/export/home/markus/tomcat#1/apache-tomcat-6.0.13/endorsed
>>
>> -classpath
>> :/export/home/markus/tomcat#1/apache-tomcat-6.0.13/bin/bootstrap.jar:/export/home/markus/tomcat#1/apache-tomcat-6.0.13/bin/commons-logging-api.jar
>>
>> -Dcatalina.base=/export/home/markus/tomcat#1/apache-tomcat-6.0.13
>> -Dcatalina.home=/export/home/markus/tomcat#1/apache-tomcat-6.0.13
>> -Djava.io.tmpdir=/export/home/markus/tomcat#1/apache-tomcat-6.0.13/temp
>> org.apache.catalina.startup.Bootstrap start
>>
>> $cat catalina.out
>> java.lang.ClassNotFoundException: org.apache.catalina.startup.Catalina
>> at java.net.URLClassLoader$1.run(URLClassLoader.java:200)
>> at java.security.AccessController.doPrivileged(Native Method)
>> at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
>> at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
>> at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
>> at org.apache.catalina.startup.Bootstrap.init(Bootstrap.java:215)
>> at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:390)
>>
>>
>> truss output: path was truncated after the # sign:
>>
>> ...
>> 2717/2: read(5, "CAFEBABE\0\0\0 1\00701\0".., 142) = 142
>> 2717/2:
>> stat64("/export/home/markus/tomcat#1/apache-tomcat-6.0.13/bin/org/apache/catalina/security/SecurityClassLoad.class",
>>
>> 0xD230ABF0) Err#2 ENOENT
>> 2717/2: llseek(9, 1422, SEEK_SET) = 1422
>> 2717/2: read(9, " P K0304\n\0\0\0\b\0F91C".., 30) = 30
>> 2717/2: llseek(9, 1504, SEEK_SET) = 1504
>> 2717/2: read(9, "95 W k o14 U18 ~ f [DAC3".., 1634) = 1634
>> 2717/2: brk(0x08172F08) = 0
>> 2717/2: brk(0x08176F08) = 0
>> 2717/9: pollsys(0x00000000, 0, 0xCFCA9CD8, 0x00000000) = 0
>> 2717/2:
>> stat64("/export/home/markus/tomcat#1/apache-tomcat-6.0.13/bin/org/apache/catalina/startup/Catalina.class",
>>
>> 0xD230B3D0) Err#2 ENOENT
>> 2717/2: stat64("/export/home/markus/tomcat", 0xD230AA60) Err#2
>> ENOENT
>> 2717/2: stat64("/export/home/markus/tomcat", 0xD230AA60) Err#2
>> ENOENT
>> 2717/2: stat64("/export/home/markus/tomcat", 0xD230AA60) Err#2
>> ENOENT
>> 2717/2: stat64("/export/home/markus/tomcat", 0xD230AA60) Err#2
>> ENOENT
>> 2717/3: lwp_cond_wait(0x0806F7A0, 0x0806F788, 0xD208DB48, 0)
>> (sleeping...)
>> 2717/3: lwp_cond_wait(0x0806F7A0, 0x0806F788, 0xD208DB48, 0)
>> Err#62 ETIME
>> 2717/9: pollsys(0x00000000, 0, 0xCFCA9CD8, 0x00000000) = 0
>> 2717/2: stat64("/export/home/markus/tomcat", 0xD230AA60) Err#2
>> ENOENT
>> 2717/2: stat64("/export/home/markus/tomcat", 0xD230AA60) Err#2
>> ENOENT
>> 2717/2: stat64("/export/home/markus/tomcat", 0xD230AA60) Err#2
>> ENOENT
>> ...
>>
>> Although there is a rather old but maybe similar bug at:
>> http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=4231042
>> i supose somewhere the road this has been fixed, as i have no problems
>> with JAVA 5/6 and other java programs otherwise my tests where flawed.
>>
>> Installing the jdk in such a directory (e.g. /opt/java#6) works with
>> tomcat, too.
>>
>> Can anybody confirm that "#" is still a special character (for tomcat)?
>> Unfortunately i'm somewhat forced to place tomcat installations/
>> instances into such (with #) directories.
>>
>> Any fix possible?
>>
>> thanks in advance!
>>
>> kind regards,
>> Markus
>>
>>
>> ---------------------------------------------------------------------
>> To start a new topic, e-mail: users@tomcat.apache.org
>> To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
>> For additional commands, e-mail: users-help@tomcat.apache.org
>>
>
---------------------------------------------------------------------
To start a new topic, e-mail: users@tomcat.apache.org
To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
For additional commands, e-mail: users-help@tomcat.apache.org
Re: Tomcat and path with pound sign (#) -> ClassNotFoundException
Posted by Alexey Solofnenko <A....@mdl.com>.
Are you allowed to create symbolic links with normal names?
- Alexey.
Markus Schiegl wrote:
> Hi there,
>
> starting Tomcat from a path containing a pound sign (#) somewhere
> results in a ClassNotFoundException.
>
> I've checked this with
> - Solaris Sparc/X86 + Mac OS X
> - Java 5 + 6
> - Tomcat 5.5.23 + 6.0.13
>
> example:
> - mkdir /export/home/markus/tomcat#1
> - extract tomcat within this directory
> - export JAVA_HOME=/usr/java (JDK 6)
> - /export/home/markus/tomcat#1/apache-tomcat-6.0.13/bin/startup.sh
> or
> cd /export/home/markus/tomcat#1/apache-tomcat-6.0.13/bin ; ./startup.sh
>
> output from catalina.sh with the java call (added set -x to catalina.sh
> - i.e. no problem of the calling script omitting something)
>
> /usr/java/bin/java
> -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager
> -Djava.util.logging.config.file=/export/home/markus/tomcat#1/apache-tomcat-6.0.13/conf/logging.properties
> -Djava.endorsed.dirs=/export/home/markus/tomcat#1/apache-tomcat-6.0.13/endorsed
> -classpath
> :/export/home/markus/tomcat#1/apache-tomcat-6.0.13/bin/bootstrap.jar:/export/home/markus/tomcat#1/apache-tomcat-6.0.13/bin/commons-logging-api.jar
> -Dcatalina.base=/export/home/markus/tomcat#1/apache-tomcat-6.0.13
> -Dcatalina.home=/export/home/markus/tomcat#1/apache-tomcat-6.0.13
> -Djava.io.tmpdir=/export/home/markus/tomcat#1/apache-tomcat-6.0.13/temp
> org.apache.catalina.startup.Bootstrap start
>
> $cat catalina.out
> java.lang.ClassNotFoundException: org.apache.catalina.startup.Catalina
> at java.net.URLClassLoader$1.run(URLClassLoader.java:200)
> at java.security.AccessController.doPrivileged(Native Method)
> at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
> at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
> at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
> at org.apache.catalina.startup.Bootstrap.init(Bootstrap.java:215)
> at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:390)
>
>
> truss output: path was truncated after the # sign:
>
> ...
> 2717/2: read(5, "CAFEBABE\0\0\0 1\00701\0".., 142) = 142
> 2717/2:
> stat64("/export/home/markus/tomcat#1/apache-tomcat-6.0.13/bin/org/apache/catalina/security/SecurityClassLoad.class",
> 0xD230ABF0) Err#2 ENOENT
> 2717/2: llseek(9, 1422, SEEK_SET) = 1422
> 2717/2: read(9, " P K0304\n\0\0\0\b\0F91C".., 30) = 30
> 2717/2: llseek(9, 1504, SEEK_SET) = 1504
> 2717/2: read(9, "95 W k o14 U18 ~ f [DAC3".., 1634) = 1634
> 2717/2: brk(0x08172F08) = 0
> 2717/2: brk(0x08176F08) = 0
> 2717/9: pollsys(0x00000000, 0, 0xCFCA9CD8, 0x00000000) = 0
> 2717/2:
> stat64("/export/home/markus/tomcat#1/apache-tomcat-6.0.13/bin/org/apache/catalina/startup/Catalina.class",
> 0xD230B3D0) Err#2 ENOENT
> 2717/2: stat64("/export/home/markus/tomcat", 0xD230AA60) Err#2
> ENOENT
> 2717/2: stat64("/export/home/markus/tomcat", 0xD230AA60) Err#2
> ENOENT
> 2717/2: stat64("/export/home/markus/tomcat", 0xD230AA60) Err#2
> ENOENT
> 2717/2: stat64("/export/home/markus/tomcat", 0xD230AA60) Err#2
> ENOENT
> 2717/3: lwp_cond_wait(0x0806F7A0, 0x0806F788, 0xD208DB48, 0)
> (sleeping...)
> 2717/3: lwp_cond_wait(0x0806F7A0, 0x0806F788, 0xD208DB48, 0)
> Err#62 ETIME
> 2717/9: pollsys(0x00000000, 0, 0xCFCA9CD8, 0x00000000) = 0
> 2717/2: stat64("/export/home/markus/tomcat", 0xD230AA60) Err#2
> ENOENT
> 2717/2: stat64("/export/home/markus/tomcat", 0xD230AA60) Err#2
> ENOENT
> 2717/2: stat64("/export/home/markus/tomcat", 0xD230AA60) Err#2
> ENOENT
> ...
>
> Although there is a rather old but maybe similar bug at:
> http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=4231042
> i supose somewhere the road this has been fixed, as i have no problems
> with JAVA 5/6 and other java programs otherwise my tests where flawed.
>
> Installing the jdk in such a directory (e.g. /opt/java#6) works with
> tomcat, too.
>
> Can anybody confirm that "#" is still a special character (for tomcat)?
> Unfortunately i'm somewhat forced to place tomcat installations/
> instances into such (with #) directories.
>
> Any fix possible?
>
> thanks in advance!
>
> kind regards,
> Markus
>
>
> ---------------------------------------------------------------------
> To start a new topic, e-mail: users@tomcat.apache.org
> To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
> For additional commands, e-mail: users-help@tomcat.apache.org
>
--
------------------------------------------------------------------------
Alexey N. Solofnenko <http://trelony.cjb.net/>
Pleasant Hill, CA (GMT-8 usually)
Re: Tomcat and path with pound sign (#) -> ClassNotFoundException
Posted by Hassan Schroeder <ha...@gmail.com>.
On 8/8/07, Markus Schiegl <ms...@schiegl.com> wrote:
> Has anybody been able to start a tomcat server from such a directory?
I copied a working installation from /usr/local/apache-tomcat-6.0.13
to /usr/local/apache-tomcat#6.0.13, set CATALINA_HOME and got this:
> ./bin/catalina.sh run
Using CATALINA_BASE: /usr/local/apache-tomcat#6.0.13
Using CATALINA_HOME: /usr/local/apache-tomcat#6.0.13
Using CATALINA_TMPDIR: /usr/local/apache-tomcat#6.0.13/temp
Using JRE_HOME: /usr/local/jdk1.6.0_02/jre
java.lang.ClassNotFoundException: org.apache.catalina.startup.Catalina
at java.net.URLClassLoader$1.run(URLClassLoader.java:200)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
at org.apache.catalina.startup.Bootstrap.init(Bootstrap.java:215)
at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:390)
So it seems a genuine limitation...
HTH,
--
Hassan Schroeder ------------------------ hassan.schroeder@gmail.com
---------------------------------------------------------------------
To start a new topic, e-mail: users@tomcat.apache.org
To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
For additional commands, e-mail: users-help@tomcat.apache.org
Re: Tomcat and path with pound sign (#) -> ClassNotFoundException
Posted by Markus Schiegl <ms...@schiegl.com>.
Hi Ben,
this is exactly the question. As these directories are created and used
by other software changing the # sign to something else involves
modifications to these programs and therefore hours/days of work too.
I've decided to put in a few hours to evaluate the situation before
making a conclusion.
Can anybody confirm the #-sign is a reserved char (maybe because the
classloader is a URL-Classloader and #'s in URLs are used for anchors)
for tomcat - but not for java itself anymore?
Even if it's a tomcat bug but would be marked as "will not fix" for
whatever reasons i'm fine. Just want to have all available informations/
statements before i open bug report.
Has anybody been able to start a tomcat server from such a directory?
kind regards,
Markus
ben short wrote:
> Why not just change it to /export/home/markus/tomcat_1 or something
> and be done with it. Is trying to make it work with a # really worth
> the time an effort? Think in terms of hours spent * hourly rate or
> hour spent that you could be doing something else.
>
> Just my opinion.
>
> On 8/8/07, Markus Schiegl <ms...@schiegl.com> wrote:
>> Hi,
>>
>> as far as i see the shell has no problems passing the # character.
>> I've added "ps auxwww |grep java" after the java call in catalina.sh,
>> just to verify the java-program itself is called with the correct
>> values, see below:
>>
>> $ ~/tomcat#1/apache-tomcat-6.0.13/bin$ ./startup.sh
>> Using CATALINA_BASE: /export/home/markus/tomcat#1/apache-tomcat-6.0.13
>> Using CATALINA_HOME: /export/home/markus/tomcat#1/apache-tomcat-6.0.13
>> Using CATALINA_TMPDIR:
>> /export/home/markus/tomcat#1/apache-tomcat-6.0.13/temp
>> Using JRE_HOME: /usr/java
>> markus 2877 0.6 1.842428 8964 pts/1 R 23:20:06 0:00
>> /usr/java/bin/java
>> -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager
>> -Djava.util.logging.config.file=/export/home/markus/tomcat#1/apache-tomcat-6.0.13/conf/logging.properties
>> -Djava.endorsed.dirs=/export/home/markus/tomcat#1/apache-tomcat-6.0.13/endorsed
>> -classpath
>> :/export/home/markus/tomcat#1/apache-tomcat-6.0.13/bin/bootstrap.jar:/export/home/markus/tomcat#1/apache-tomcat-6.0.13/bin/commons-logging-api.jar
>> -Dcatalina.base=/export/home/markus/tomcat#1/apache-tomcat-6.0.13
>> -Dcatalina.home=/export/home/markus/tomcat#1/apache-tomcat-6.0.13
>> -Djava.io.tmpdir=/export/home/markus/tomcat#1/apache-tomcat-6.0.13/temp
>> org.apache.catalina.startup.Bootstrap start
>> $ ~/tomcat#1/apache-tomcat-6.0.13/bin$ pwd
>> /export/home/markus/tomcat#1/apache-tomcat-6.0.13/bin
>> $ ~/tomcat#1/apache-tomcat-6.0.13/bin$
>>
>> thanks!
>>
>> kind regards,
>> Markus
>>
>> P.S shell commands with # between or after other characters are ok, e.g.
>> $ echo bla # 1
>> bla
>> $ echo bla#1
>> bla#1
>> $ echo bla#
>> bla#
>>
>> Fargusson.Alan wrote:
>>> The # character starts a comment in the shell. Try quoting the pathname, or put a \ in front of the #.
>>>
>>> I would bet that your mkdir and cd commands didn't do what you think they did.
>>>
>>> -----Original Message-----
>>> From: Markus Schiegl [mailto:ms@schiegl.com]
>>> Sent: Wednesday, August 08, 2007 1:54 PM
>>> To: users@tomcat.apache.org
>>> Subject: Tomcat and path with pound sign (#) -> ClassNotFoundException
>>>
>>>
>>> Hi there,
>>>
>>> starting Tomcat from a path containing a pound sign (#) somewhere
>>> results in a ClassNotFoundException.
>>>
>>> I've checked this with
>>> - Solaris Sparc/X86 + Mac OS X
>>> - Java 5 + 6
>>> - Tomcat 5.5.23 + 6.0.13
>>>
>>> example:
>>> - mkdir /export/home/markus/tomcat#1
>>> - extract tomcat within this directory
>>> - export JAVA_HOME=/usr/java (JDK 6)
>>> - /export/home/markus/tomcat#1/apache-tomcat-6.0.13/bin/startup.sh
>>> or
>>> cd /export/home/markus/tomcat#1/apache-tomcat-6.0.13/bin ; ./startup.sh
>>>
>>> output from catalina.sh with the java call (added set -x to catalina.sh
>>> - i.e. no problem of the calling script omitting something)
>>>
>>> /usr/java/bin/java
>>> -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager
>>> -Djava.util.logging.config.file=/export/home/markus/tomcat#1/apache-tomcat-6.0.13/conf/logging.properties
>>> -Djava.endorsed.dirs=/export/home/markus/tomcat#1/apache-tomcat-6.0.13/endorsed
>>> -classpath
>>> :/export/home/markus/tomcat#1/apache-tomcat-6.0.13/bin/bootstrap.jar:/export/home/markus/tomcat#1/apache-tomcat-6.0.13/bin/commons-logging-api.jar
>>> -Dcatalina.base=/export/home/markus/tomcat#1/apache-tomcat-6.0.13
>>> -Dcatalina.home=/export/home/markus/tomcat#1/apache-tomcat-6.0.13
>>> -Djava.io.tmpdir=/export/home/markus/tomcat#1/apache-tomcat-6.0.13/temp
>>> org.apache.catalina.startup.Bootstrap start
>>>
>>> $cat catalina.out
>>> java.lang.ClassNotFoundException: org.apache.catalina.startup.Catalina
>>> at java.net.URLClassLoader$1.run(URLClassLoader.java:200)
>>> at java.security.AccessController.doPrivileged(Native Method)
>>> at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
>>> at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
>>> at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
>>> at org.apache.catalina.startup.Bootstrap.init(Bootstrap.java:215)
>>> at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:390)
>>>
>>>
>>> truss output: path was truncated after the # sign:
>>>
>>> ...
>>> 2717/2: read(5, "CAFEBABE\0\0\0 1\00701\0".., 142) = 142
>>> 2717/2:
>>> stat64("/export/home/markus/tomcat#1/apache-tomcat-6.0.13/bin/org/apache/catalina/security/SecurityClassLoad.class",
>>> 0xD230ABF0) Err#2 ENOENT
>>> 2717/2: llseek(9, 1422, SEEK_SET) = 1422
>>> 2717/2: read(9, " P K0304\n\0\0\0\b\0F91C".., 30) = 30
>>> 2717/2: llseek(9, 1504, SEEK_SET) = 1504
>>> 2717/2: read(9, "95 W k o14 U18 ~ f [DAC3".., 1634) = 1634
>>> 2717/2: brk(0x08172F08) = 0
>>> 2717/2: brk(0x08176F08) = 0
>>> 2717/9: pollsys(0x00000000, 0, 0xCFCA9CD8, 0x00000000) = 0
>>> 2717/2:
>>> stat64("/export/home/markus/tomcat#1/apache-tomcat-6.0.13/bin/org/apache/catalina/startup/Catalina.class",
>>> 0xD230B3D0) Err#2 ENOENT
>>> 2717/2: stat64("/export/home/markus/tomcat", 0xD230AA60) Err#2
>>> ENOENT
>>> 2717/2: stat64("/export/home/markus/tomcat", 0xD230AA60) Err#2
>>> ENOENT
>>> 2717/2: stat64("/export/home/markus/tomcat", 0xD230AA60) Err#2
>>> ENOENT
>>> 2717/2: stat64("/export/home/markus/tomcat", 0xD230AA60) Err#2
>>> ENOENT
>>> 2717/3: lwp_cond_wait(0x0806F7A0, 0x0806F788, 0xD208DB48, 0)
>>> (sleeping...)
>>> 2717/3: lwp_cond_wait(0x0806F7A0, 0x0806F788, 0xD208DB48, 0)
>>> Err#62 ETIME
>>> 2717/9: pollsys(0x00000000, 0, 0xCFCA9CD8, 0x00000000) = 0
>>> 2717/2: stat64("/export/home/markus/tomcat", 0xD230AA60) Err#2
>>> ENOENT
>>> 2717/2: stat64("/export/home/markus/tomcat", 0xD230AA60) Err#2
>>> ENOENT
>>> 2717/2: stat64("/export/home/markus/tomcat", 0xD230AA60) Err#2
>>> ENOENT
>>> ...
>>>
>>> Although there is a rather old but maybe similar bug at:
>>> http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=4231042
>>> i supose somewhere the road this has been fixed, as i have no problems
>>> with JAVA 5/6 and other java programs otherwise my tests where flawed.
>>>
>>> Installing the jdk in such a directory (e.g. /opt/java#6) works with
>>> tomcat, too.
>>>
>>> Can anybody confirm that "#" is still a special character (for tomcat)?
>>> Unfortunately i'm somewhat forced to place tomcat installations/
>>> instances into such (with #) directories.
>>>
>>> Any fix possible?
>>>
>>> thanks in advance!
>>>
>>> kind regards,
>>> Markus
>>>
>>>
>>> ---------------------------------------------------------------------
>>> To start a new topic, e-mail: users@tomcat.apache.org
>>> To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
>>> For additional commands, e-mail: users-help@tomcat.apache.org
>>>
>>>
>>> ---------------------------------------------------------------------
>>> To start a new topic, e-mail: users@tomcat.apache.org
>>> To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
>>> For additional commands, e-mail: users-help@tomcat.apache.org
>>>
>>>
>> ---------------------------------------------------------------------
>> To start a new topic, e-mail: users@tomcat.apache.org
>> To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
>> For additional commands, e-mail: users-help@tomcat.apache.org
>>
>>
>
> ---------------------------------------------------------------------
> To start a new topic, e-mail: users@tomcat.apache.org
> To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
> For additional commands, e-mail: users-help@tomcat.apache.org
>
>
---------------------------------------------------------------------
To start a new topic, e-mail: users@tomcat.apache.org
To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
For additional commands, e-mail: users-help@tomcat.apache.org
Re: Tomcat and path with pound sign (#) -> ClassNotFoundException
Posted by ben short <ja...@gmail.com>.
Why not just change it to /export/home/markus/tomcat_1 or something
and be done with it. Is trying to make it work with a # really worth
the time an effort? Think in terms of hours spent * hourly rate or
hour spent that you could be doing something else.
Just my opinion.
On 8/8/07, Markus Schiegl <ms...@schiegl.com> wrote:
> Hi,
>
> as far as i see the shell has no problems passing the # character.
> I've added "ps auxwww |grep java" after the java call in catalina.sh,
> just to verify the java-program itself is called with the correct
> values, see below:
>
> $ ~/tomcat#1/apache-tomcat-6.0.13/bin$ ./startup.sh
> Using CATALINA_BASE: /export/home/markus/tomcat#1/apache-tomcat-6.0.13
> Using CATALINA_HOME: /export/home/markus/tomcat#1/apache-tomcat-6.0.13
> Using CATALINA_TMPDIR:
> /export/home/markus/tomcat#1/apache-tomcat-6.0.13/temp
> Using JRE_HOME: /usr/java
> markus 2877 0.6 1.842428 8964 pts/1 R 23:20:06 0:00
> /usr/java/bin/java
> -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager
> -Djava.util.logging.config.file=/export/home/markus/tomcat#1/apache-tomcat-6.0.13/conf/logging.properties
> -Djava.endorsed.dirs=/export/home/markus/tomcat#1/apache-tomcat-6.0.13/endorsed
> -classpath
> :/export/home/markus/tomcat#1/apache-tomcat-6.0.13/bin/bootstrap.jar:/export/home/markus/tomcat#1/apache-tomcat-6.0.13/bin/commons-logging-api.jar
> -Dcatalina.base=/export/home/markus/tomcat#1/apache-tomcat-6.0.13
> -Dcatalina.home=/export/home/markus/tomcat#1/apache-tomcat-6.0.13
> -Djava.io.tmpdir=/export/home/markus/tomcat#1/apache-tomcat-6.0.13/temp
> org.apache.catalina.startup.Bootstrap start
> $ ~/tomcat#1/apache-tomcat-6.0.13/bin$ pwd
> /export/home/markus/tomcat#1/apache-tomcat-6.0.13/bin
> $ ~/tomcat#1/apache-tomcat-6.0.13/bin$
>
> thanks!
>
> kind regards,
> Markus
>
> P.S shell commands with # between or after other characters are ok, e.g.
> $ echo bla # 1
> bla
> $ echo bla#1
> bla#1
> $ echo bla#
> bla#
>
> Fargusson.Alan wrote:
> > The # character starts a comment in the shell. Try quoting the pathname, or put a \ in front of the #.
> >
> > I would bet that your mkdir and cd commands didn't do what you think they did.
> >
> > -----Original Message-----
> > From: Markus Schiegl [mailto:ms@schiegl.com]
> > Sent: Wednesday, August 08, 2007 1:54 PM
> > To: users@tomcat.apache.org
> > Subject: Tomcat and path with pound sign (#) -> ClassNotFoundException
> >
> >
> > Hi there,
> >
> > starting Tomcat from a path containing a pound sign (#) somewhere
> > results in a ClassNotFoundException.
> >
> > I've checked this with
> > - Solaris Sparc/X86 + Mac OS X
> > - Java 5 + 6
> > - Tomcat 5.5.23 + 6.0.13
> >
> > example:
> > - mkdir /export/home/markus/tomcat#1
> > - extract tomcat within this directory
> > - export JAVA_HOME=/usr/java (JDK 6)
> > - /export/home/markus/tomcat#1/apache-tomcat-6.0.13/bin/startup.sh
> > or
> > cd /export/home/markus/tomcat#1/apache-tomcat-6.0.13/bin ; ./startup.sh
> >
> > output from catalina.sh with the java call (added set -x to catalina.sh
> > - i.e. no problem of the calling script omitting something)
> >
> > /usr/java/bin/java
> > -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager
> > -Djava.util.logging.config.file=/export/home/markus/tomcat#1/apache-tomcat-6.0.13/conf/logging.properties
> > -Djava.endorsed.dirs=/export/home/markus/tomcat#1/apache-tomcat-6.0.13/endorsed
> > -classpath
> > :/export/home/markus/tomcat#1/apache-tomcat-6.0.13/bin/bootstrap.jar:/export/home/markus/tomcat#1/apache-tomcat-6.0.13/bin/commons-logging-api.jar
> > -Dcatalina.base=/export/home/markus/tomcat#1/apache-tomcat-6.0.13
> > -Dcatalina.home=/export/home/markus/tomcat#1/apache-tomcat-6.0.13
> > -Djava.io.tmpdir=/export/home/markus/tomcat#1/apache-tomcat-6.0.13/temp
> > org.apache.catalina.startup.Bootstrap start
> >
> > $cat catalina.out
> > java.lang.ClassNotFoundException: org.apache.catalina.startup.Catalina
> > at java.net.URLClassLoader$1.run(URLClassLoader.java:200)
> > at java.security.AccessController.doPrivileged(Native Method)
> > at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
> > at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
> > at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
> > at org.apache.catalina.startup.Bootstrap.init(Bootstrap.java:215)
> > at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:390)
> >
> >
> > truss output: path was truncated after the # sign:
> >
> > ...
> > 2717/2: read(5, "CAFEBABE\0\0\0 1\00701\0".., 142) = 142
> > 2717/2:
> > stat64("/export/home/markus/tomcat#1/apache-tomcat-6.0.13/bin/org/apache/catalina/security/SecurityClassLoad.class",
> > 0xD230ABF0) Err#2 ENOENT
> > 2717/2: llseek(9, 1422, SEEK_SET) = 1422
> > 2717/2: read(9, " P K0304\n\0\0\0\b\0F91C".., 30) = 30
> > 2717/2: llseek(9, 1504, SEEK_SET) = 1504
> > 2717/2: read(9, "95 W k o14 U18 ~ f [DAC3".., 1634) = 1634
> > 2717/2: brk(0x08172F08) = 0
> > 2717/2: brk(0x08176F08) = 0
> > 2717/9: pollsys(0x00000000, 0, 0xCFCA9CD8, 0x00000000) = 0
> > 2717/2:
> > stat64("/export/home/markus/tomcat#1/apache-tomcat-6.0.13/bin/org/apache/catalina/startup/Catalina.class",
> > 0xD230B3D0) Err#2 ENOENT
> > 2717/2: stat64("/export/home/markus/tomcat", 0xD230AA60) Err#2
> > ENOENT
> > 2717/2: stat64("/export/home/markus/tomcat", 0xD230AA60) Err#2
> > ENOENT
> > 2717/2: stat64("/export/home/markus/tomcat", 0xD230AA60) Err#2
> > ENOENT
> > 2717/2: stat64("/export/home/markus/tomcat", 0xD230AA60) Err#2
> > ENOENT
> > 2717/3: lwp_cond_wait(0x0806F7A0, 0x0806F788, 0xD208DB48, 0)
> > (sleeping...)
> > 2717/3: lwp_cond_wait(0x0806F7A0, 0x0806F788, 0xD208DB48, 0)
> > Err#62 ETIME
> > 2717/9: pollsys(0x00000000, 0, 0xCFCA9CD8, 0x00000000) = 0
> > 2717/2: stat64("/export/home/markus/tomcat", 0xD230AA60) Err#2
> > ENOENT
> > 2717/2: stat64("/export/home/markus/tomcat", 0xD230AA60) Err#2
> > ENOENT
> > 2717/2: stat64("/export/home/markus/tomcat", 0xD230AA60) Err#2
> > ENOENT
> > ...
> >
> > Although there is a rather old but maybe similar bug at:
> > http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=4231042
> > i supose somewhere the road this has been fixed, as i have no problems
> > with JAVA 5/6 and other java programs otherwise my tests where flawed.
> >
> > Installing the jdk in such a directory (e.g. /opt/java#6) works with
> > tomcat, too.
> >
> > Can anybody confirm that "#" is still a special character (for tomcat)?
> > Unfortunately i'm somewhat forced to place tomcat installations/
> > instances into such (with #) directories.
> >
> > Any fix possible?
> >
> > thanks in advance!
> >
> > kind regards,
> > Markus
> >
> >
> > ---------------------------------------------------------------------
> > To start a new topic, e-mail: users@tomcat.apache.org
> > To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
> > For additional commands, e-mail: users-help@tomcat.apache.org
> >
> >
> > ---------------------------------------------------------------------
> > To start a new topic, e-mail: users@tomcat.apache.org
> > To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
> > For additional commands, e-mail: users-help@tomcat.apache.org
> >
> >
>
> ---------------------------------------------------------------------
> To start a new topic, e-mail: users@tomcat.apache.org
> To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
> For additional commands, e-mail: users-help@tomcat.apache.org
>
>
---------------------------------------------------------------------
To start a new topic, e-mail: users@tomcat.apache.org
To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
For additional commands, e-mail: users-help@tomcat.apache.org
Re: Tomcat and path with pound sign (#) -> ClassNotFoundException
Posted by Markus Schiegl <ms...@schiegl.com>.
Hi,
as far as i see the shell has no problems passing the # character.
I've added "ps auxwww |grep java" after the java call in catalina.sh,
just to verify the java-program itself is called with the correct
values, see below:
$ ~/tomcat#1/apache-tomcat-6.0.13/bin$ ./startup.sh
Using CATALINA_BASE: /export/home/markus/tomcat#1/apache-tomcat-6.0.13
Using CATALINA_HOME: /export/home/markus/tomcat#1/apache-tomcat-6.0.13
Using CATALINA_TMPDIR:
/export/home/markus/tomcat#1/apache-tomcat-6.0.13/temp
Using JRE_HOME: /usr/java
markus 2877 0.6 1.842428 8964 pts/1 R 23:20:06 0:00
/usr/java/bin/java
-Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager
-Djava.util.logging.config.file=/export/home/markus/tomcat#1/apache-tomcat-6.0.13/conf/logging.properties
-Djava.endorsed.dirs=/export/home/markus/tomcat#1/apache-tomcat-6.0.13/endorsed
-classpath
:/export/home/markus/tomcat#1/apache-tomcat-6.0.13/bin/bootstrap.jar:/export/home/markus/tomcat#1/apache-tomcat-6.0.13/bin/commons-logging-api.jar
-Dcatalina.base=/export/home/markus/tomcat#1/apache-tomcat-6.0.13
-Dcatalina.home=/export/home/markus/tomcat#1/apache-tomcat-6.0.13
-Djava.io.tmpdir=/export/home/markus/tomcat#1/apache-tomcat-6.0.13/temp
org.apache.catalina.startup.Bootstrap start
$ ~/tomcat#1/apache-tomcat-6.0.13/bin$ pwd
/export/home/markus/tomcat#1/apache-tomcat-6.0.13/bin
$ ~/tomcat#1/apache-tomcat-6.0.13/bin$
thanks!
kind regards,
Markus
P.S shell commands with # between or after other characters are ok, e.g.
$ echo bla # 1
bla
$ echo bla#1
bla#1
$ echo bla#
bla#
Fargusson.Alan wrote:
> The # character starts a comment in the shell. Try quoting the pathname, or put a \ in front of the #.
>
> I would bet that your mkdir and cd commands didn't do what you think they did.
>
> -----Original Message-----
> From: Markus Schiegl [mailto:ms@schiegl.com]
> Sent: Wednesday, August 08, 2007 1:54 PM
> To: users@tomcat.apache.org
> Subject: Tomcat and path with pound sign (#) -> ClassNotFoundException
>
>
> Hi there,
>
> starting Tomcat from a path containing a pound sign (#) somewhere
> results in a ClassNotFoundException.
>
> I've checked this with
> - Solaris Sparc/X86 + Mac OS X
> - Java 5 + 6
> - Tomcat 5.5.23 + 6.0.13
>
> example:
> - mkdir /export/home/markus/tomcat#1
> - extract tomcat within this directory
> - export JAVA_HOME=/usr/java (JDK 6)
> - /export/home/markus/tomcat#1/apache-tomcat-6.0.13/bin/startup.sh
> or
> cd /export/home/markus/tomcat#1/apache-tomcat-6.0.13/bin ; ./startup.sh
>
> output from catalina.sh with the java call (added set -x to catalina.sh
> - i.e. no problem of the calling script omitting something)
>
> /usr/java/bin/java
> -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager
> -Djava.util.logging.config.file=/export/home/markus/tomcat#1/apache-tomcat-6.0.13/conf/logging.properties
> -Djava.endorsed.dirs=/export/home/markus/tomcat#1/apache-tomcat-6.0.13/endorsed
> -classpath
> :/export/home/markus/tomcat#1/apache-tomcat-6.0.13/bin/bootstrap.jar:/export/home/markus/tomcat#1/apache-tomcat-6.0.13/bin/commons-logging-api.jar
> -Dcatalina.base=/export/home/markus/tomcat#1/apache-tomcat-6.0.13
> -Dcatalina.home=/export/home/markus/tomcat#1/apache-tomcat-6.0.13
> -Djava.io.tmpdir=/export/home/markus/tomcat#1/apache-tomcat-6.0.13/temp
> org.apache.catalina.startup.Bootstrap start
>
> $cat catalina.out
> java.lang.ClassNotFoundException: org.apache.catalina.startup.Catalina
> at java.net.URLClassLoader$1.run(URLClassLoader.java:200)
> at java.security.AccessController.doPrivileged(Native Method)
> at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
> at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
> at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
> at org.apache.catalina.startup.Bootstrap.init(Bootstrap.java:215)
> at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:390)
>
>
> truss output: path was truncated after the # sign:
>
> ...
> 2717/2: read(5, "CAFEBABE\0\0\0 1\00701\0".., 142) = 142
> 2717/2:
> stat64("/export/home/markus/tomcat#1/apache-tomcat-6.0.13/bin/org/apache/catalina/security/SecurityClassLoad.class",
> 0xD230ABF0) Err#2 ENOENT
> 2717/2: llseek(9, 1422, SEEK_SET) = 1422
> 2717/2: read(9, " P K0304\n\0\0\0\b\0F91C".., 30) = 30
> 2717/2: llseek(9, 1504, SEEK_SET) = 1504
> 2717/2: read(9, "95 W k o14 U18 ~ f [DAC3".., 1634) = 1634
> 2717/2: brk(0x08172F08) = 0
> 2717/2: brk(0x08176F08) = 0
> 2717/9: pollsys(0x00000000, 0, 0xCFCA9CD8, 0x00000000) = 0
> 2717/2:
> stat64("/export/home/markus/tomcat#1/apache-tomcat-6.0.13/bin/org/apache/catalina/startup/Catalina.class",
> 0xD230B3D0) Err#2 ENOENT
> 2717/2: stat64("/export/home/markus/tomcat", 0xD230AA60) Err#2
> ENOENT
> 2717/2: stat64("/export/home/markus/tomcat", 0xD230AA60) Err#2
> ENOENT
> 2717/2: stat64("/export/home/markus/tomcat", 0xD230AA60) Err#2
> ENOENT
> 2717/2: stat64("/export/home/markus/tomcat", 0xD230AA60) Err#2
> ENOENT
> 2717/3: lwp_cond_wait(0x0806F7A0, 0x0806F788, 0xD208DB48, 0)
> (sleeping...)
> 2717/3: lwp_cond_wait(0x0806F7A0, 0x0806F788, 0xD208DB48, 0)
> Err#62 ETIME
> 2717/9: pollsys(0x00000000, 0, 0xCFCA9CD8, 0x00000000) = 0
> 2717/2: stat64("/export/home/markus/tomcat", 0xD230AA60) Err#2
> ENOENT
> 2717/2: stat64("/export/home/markus/tomcat", 0xD230AA60) Err#2
> ENOENT
> 2717/2: stat64("/export/home/markus/tomcat", 0xD230AA60) Err#2
> ENOENT
> ...
>
> Although there is a rather old but maybe similar bug at:
> http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=4231042
> i supose somewhere the road this has been fixed, as i have no problems
> with JAVA 5/6 and other java programs otherwise my tests where flawed.
>
> Installing the jdk in such a directory (e.g. /opt/java#6) works with
> tomcat, too.
>
> Can anybody confirm that "#" is still a special character (for tomcat)?
> Unfortunately i'm somewhat forced to place tomcat installations/
> instances into such (with #) directories.
>
> Any fix possible?
>
> thanks in advance!
>
> kind regards,
> Markus
>
>
> ---------------------------------------------------------------------
> To start a new topic, e-mail: users@tomcat.apache.org
> To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
> For additional commands, e-mail: users-help@tomcat.apache.org
>
>
> ---------------------------------------------------------------------
> To start a new topic, e-mail: users@tomcat.apache.org
> To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
> For additional commands, e-mail: users-help@tomcat.apache.org
>
>
---------------------------------------------------------------------
To start a new topic, e-mail: users@tomcat.apache.org
To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
For additional commands, e-mail: users-help@tomcat.apache.org
RE: Tomcat and path with pound sign (#) -> ClassNotFoundException
Posted by "Fargusson.Alan" <Al...@ftb.ca.gov>.
The # character starts a comment in the shell. Try quoting the pathname, or put a \ in front of the #.
I would bet that your mkdir and cd commands didn't do what you think they did.
-----Original Message-----
From: Markus Schiegl [mailto:ms@schiegl.com]
Sent: Wednesday, August 08, 2007 1:54 PM
To: users@tomcat.apache.org
Subject: Tomcat and path with pound sign (#) -> ClassNotFoundException
Hi there,
starting Tomcat from a path containing a pound sign (#) somewhere
results in a ClassNotFoundException.
I've checked this with
- Solaris Sparc/X86 + Mac OS X
- Java 5 + 6
- Tomcat 5.5.23 + 6.0.13
example:
- mkdir /export/home/markus/tomcat#1
- extract tomcat within this directory
- export JAVA_HOME=/usr/java (JDK 6)
- /export/home/markus/tomcat#1/apache-tomcat-6.0.13/bin/startup.sh
or
cd /export/home/markus/tomcat#1/apache-tomcat-6.0.13/bin ; ./startup.sh
output from catalina.sh with the java call (added set -x to catalina.sh
- i.e. no problem of the calling script omitting something)
/usr/java/bin/java
-Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager
-Djava.util.logging.config.file=/export/home/markus/tomcat#1/apache-tomcat-6.0.13/conf/logging.properties
-Djava.endorsed.dirs=/export/home/markus/tomcat#1/apache-tomcat-6.0.13/endorsed
-classpath
:/export/home/markus/tomcat#1/apache-tomcat-6.0.13/bin/bootstrap.jar:/export/home/markus/tomcat#1/apache-tomcat-6.0.13/bin/commons-logging-api.jar
-Dcatalina.base=/export/home/markus/tomcat#1/apache-tomcat-6.0.13
-Dcatalina.home=/export/home/markus/tomcat#1/apache-tomcat-6.0.13
-Djava.io.tmpdir=/export/home/markus/tomcat#1/apache-tomcat-6.0.13/temp
org.apache.catalina.startup.Bootstrap start
$cat catalina.out
java.lang.ClassNotFoundException: org.apache.catalina.startup.Catalina
at java.net.URLClassLoader$1.run(URLClassLoader.java:200)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
at org.apache.catalina.startup.Bootstrap.init(Bootstrap.java:215)
at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:390)
truss output: path was truncated after the # sign:
...
2717/2: read(5, "CAFEBABE\0\0\0 1\00701\0".., 142) = 142
2717/2:
stat64("/export/home/markus/tomcat#1/apache-tomcat-6.0.13/bin/org/apache/catalina/security/SecurityClassLoad.class",
0xD230ABF0) Err#2 ENOENT
2717/2: llseek(9, 1422, SEEK_SET) = 1422
2717/2: read(9, " P K0304\n\0\0\0\b\0F91C".., 30) = 30
2717/2: llseek(9, 1504, SEEK_SET) = 1504
2717/2: read(9, "95 W k o14 U18 ~ f [DAC3".., 1634) = 1634
2717/2: brk(0x08172F08) = 0
2717/2: brk(0x08176F08) = 0
2717/9: pollsys(0x00000000, 0, 0xCFCA9CD8, 0x00000000) = 0
2717/2:
stat64("/export/home/markus/tomcat#1/apache-tomcat-6.0.13/bin/org/apache/catalina/startup/Catalina.class",
0xD230B3D0) Err#2 ENOENT
2717/2: stat64("/export/home/markus/tomcat", 0xD230AA60) Err#2
ENOENT
2717/2: stat64("/export/home/markus/tomcat", 0xD230AA60) Err#2
ENOENT
2717/2: stat64("/export/home/markus/tomcat", 0xD230AA60) Err#2
ENOENT
2717/2: stat64("/export/home/markus/tomcat", 0xD230AA60) Err#2
ENOENT
2717/3: lwp_cond_wait(0x0806F7A0, 0x0806F788, 0xD208DB48, 0)
(sleeping...)
2717/3: lwp_cond_wait(0x0806F7A0, 0x0806F788, 0xD208DB48, 0)
Err#62 ETIME
2717/9: pollsys(0x00000000, 0, 0xCFCA9CD8, 0x00000000) = 0
2717/2: stat64("/export/home/markus/tomcat", 0xD230AA60) Err#2
ENOENT
2717/2: stat64("/export/home/markus/tomcat", 0xD230AA60) Err#2
ENOENT
2717/2: stat64("/export/home/markus/tomcat", 0xD230AA60) Err#2
ENOENT
...
Although there is a rather old but maybe similar bug at:
http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=4231042
i supose somewhere the road this has been fixed, as i have no problems
with JAVA 5/6 and other java programs otherwise my tests where flawed.
Installing the jdk in such a directory (e.g. /opt/java#6) works with
tomcat, too.
Can anybody confirm that "#" is still a special character (for tomcat)?
Unfortunately i'm somewhat forced to place tomcat installations/
instances into such (with #) directories.
Any fix possible?
thanks in advance!
kind regards,
Markus
---------------------------------------------------------------------
To start a new topic, e-mail: users@tomcat.apache.org
To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
For additional commands, e-mail: users-help@tomcat.apache.org
---------------------------------------------------------------------
To start a new topic, e-mail: users@tomcat.apache.org
To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
For additional commands, e-mail: users-help@tomcat.apache.org