You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tomcat.apache.org by Kevin Jones <ke...@develop.com> on 2001/07/17 10:40:31 UTC

Problem starting latest nightly

I've just downloaded the latest nightly (20010716), and I can't get it to
start.

I have a context entry in server.xml that looks like this

<Context path="/AddressBook" docBase="AddressBook" debug="9"
reloadable="true">
            <Loader checkInterval="3"
lassname="org.apache.catalina.loader.StandardLoader"/>
</Context>

and I get the following error

ERROR reading .\conf\server.xml
At Line 199 /Server/Service/Engine/Host/Context/Loader/ checkInterval=3
classname=org.apache.catalina.loader.StandardLoader

Catalina.start: java.lang.ClassNotFoundException:
org.apache.catalina.WebappLoader
java.lang.ClassNotFoundException: org.apache.catalina.WebappLoader
        at
org.apache.catalina.loader.StandardClassLoader.loadClass(StandardClassLoader
.java:1122)
        at
org.apache.catalina.loader.StandardClassLoader.loadClass(StandardClassLoader
.java:987)
        at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:320)
        at java.lang.Class.forName0(Native Method)
        at java.lang.Class.forName(Class.java:130)
        at
org.apache.catalina.startup.CreateLoaderAction.start(Catalina.java:918)
        ... lots of XML mapper stuff ...
        at org.apache.catalina.startup.Catalina.start(Catalina.java:687)
        at org.apache.catalina.startup.Catalina.execute(Catalina.java:657)
        at org.apache.catalina.startup.Catalina.process(Catalina.java:178)
        at sun.reflect.GeneratedMethodAccessor3.invoke(Unknown Source)
        at java.lang.reflect.Method.invoke(Method.java:311)
        at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:202)

And indeed org.apache.catalina.WebappLoader doesn't exist although
org.apache.catalina.loader.WebappLoader does

Looking in Catalina.java I see an entry like this

mapper.addRule(prefix + "/Loader", new
CreateLoaderAction("org.apache.catalina.WebappLoader", "className"));

I assume this should be

mapper.addRule(prefix + "/Loader", new
CreateLoaderAction("org.apache.catalina.loader.WebappLoader", "className"));

Kevin Jones
DevelopMentor
www.develop.com


RE: Problem starting latest nightly

Posted by "Craig R. McClanahan" <cr...@apache.org>.

On Wed, 18 Jul 2001, Kevin Jones wrote:

> lokoking at the nightly build for the 17th, you still have this code in
> Catalina.java
> 
>         mapper.addRule(prefix + "/Loader", new CreateLoaderAction
>             ("org.apache.catalina.WebappLoader", "className"));
> 
> so I can start the server by specifying the StandardLoader (with className)
> but if I just have
> <Loader checkInterval="3" />
> 
> I get the same ClassNotFoundException as before,
> 

The patch was actually made yesterday (on the 17th), so this fix will have
shown up in today's nightly build (the 18th).

> Kevin Jones
> DevelopMentor
> www.develop.com
> 

Craig


> > -----Original Message-----
> > From: Craig R. McClanahan [mailto:craigmcc@apache.org]
> > Sent: 17 July 2001 17:34
> > To: Tomcat-Dev
> > Subject: Re: Problem starting latest nightly
> >
> >
> >
> >
> > On Tue, 17 Jul 2001, Kevin Jones wrote:
> >
> > > I've just downloaded the latest nightly (20010716), and I can't
> > get it to
> > > start.
> > >
> > > I have a context entry in server.xml that looks like this
> > >
> > > <Context path="/AddressBook" docBase="AddressBook" debug="9"
> > > reloadable="true">
> > >             <Loader checkInterval="3"
> > > lassname="org.apache.catalina.loader.StandardLoader"/>
> > > </Context>
> > >
> >
> > Thanks Kevin.  I just fixed the default class name in Catalina.java (as
> > you identified below).  Now, if you don't specify a className attribute:
> >
> >   <Loader checkInterval="3"/>
> >
> > you correctly get a WebappLoader instance.  If you really want to use
> > StandardLoader instead, you have to use "className" instead of
> > "classname", which is why you ran into this bug.
> >
> > Craig
> >
> > > and I get the following error
> > >
> > > ERROR reading .\conf\server.xml
> > > At Line 199 /Server/Service/Engine/Host/Context/Loader/ checkInterval=3
> > > classname=org.apache.catalina.loader.StandardLoader
> > >
> > > Catalina.start: java.lang.ClassNotFoundException:
> > > org.apache.catalina.WebappLoader
> > > java.lang.ClassNotFoundException: org.apache.catalina.WebappLoader
> > >         at
> > >
> > org.apache.catalina.loader.StandardClassLoader.loadClass(StandardC
> > lassLoader
> > > .java:1122)
> > >         at
> > >
> > org.apache.catalina.loader.StandardClassLoader.loadClass(StandardC
> > lassLoader
> > > .java:987)
> > >         at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:320)
> > >         at java.lang.Class.forName0(Native Method)
> > >         at java.lang.Class.forName(Class.java:130)
> > >         at
> > > org.apache.catalina.startup.CreateLoaderAction.start(Catalina.java:918)
> > >         ... lots of XML mapper stuff ...
> > >         at org.apache.catalina.startup.Catalina.start(Catalina.java:687)
> > >         at
> > org.apache.catalina.startup.Catalina.execute(Catalina.java:657)
> > >         at
> > org.apache.catalina.startup.Catalina.process(Catalina.java:178)
> > >         at sun.reflect.GeneratedMethodAccessor3.invoke(Unknown Source)
> > >         at java.lang.reflect.Method.invoke(Method.java:311)
> > >         at
> > org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:202)
> > >
> > > And indeed org.apache.catalina.WebappLoader doesn't exist although
> > > org.apache.catalina.loader.WebappLoader does
> > >
> > > Looking in Catalina.java I see an entry like this
> > >
> > > mapper.addRule(prefix + "/Loader", new
> > > CreateLoaderAction("org.apache.catalina.WebappLoader", "className"));
> > >
> > > I assume this should be
> > >
> > > mapper.addRule(prefix + "/Loader", new
> > > CreateLoaderAction("org.apache.catalina.loader.WebappLoader",
> > "className"));
> > >
> > > Kevin Jones
> > > DevelopMentor
> > > www.develop.com
> > >
> > >
> >
> 
> 


RE: Problem starting latest nightly

Posted by Kevin Jones <ke...@develop.com>.
lokoking at the nightly build for the 17th, you still have this code in
Catalina.java

        mapper.addRule(prefix + "/Loader", new CreateLoaderAction
            ("org.apache.catalina.WebappLoader", "className"));

so I can start the server by specifying the StandardLoader (with className)
but if I just have
<Loader checkInterval="3" />

I get the same ClassNotFoundException as before,

Kevin Jones
DevelopMentor
www.develop.com

> -----Original Message-----
> From: Craig R. McClanahan [mailto:craigmcc@apache.org]
> Sent: 17 July 2001 17:34
> To: Tomcat-Dev
> Subject: Re: Problem starting latest nightly
>
>
>
>
> On Tue, 17 Jul 2001, Kevin Jones wrote:
>
> > I've just downloaded the latest nightly (20010716), and I can't
> get it to
> > start.
> >
> > I have a context entry in server.xml that looks like this
> >
> > <Context path="/AddressBook" docBase="AddressBook" debug="9"
> > reloadable="true">
> >             <Loader checkInterval="3"
> > lassname="org.apache.catalina.loader.StandardLoader"/>
> > </Context>
> >
>
> Thanks Kevin.  I just fixed the default class name in Catalina.java (as
> you identified below).  Now, if you don't specify a className attribute:
>
>   <Loader checkInterval="3"/>
>
> you correctly get a WebappLoader instance.  If you really want to use
> StandardLoader instead, you have to use "className" instead of
> "classname", which is why you ran into this bug.
>
> Craig
>
> > and I get the following error
> >
> > ERROR reading .\conf\server.xml
> > At Line 199 /Server/Service/Engine/Host/Context/Loader/ checkInterval=3
> > classname=org.apache.catalina.loader.StandardLoader
> >
> > Catalina.start: java.lang.ClassNotFoundException:
> > org.apache.catalina.WebappLoader
> > java.lang.ClassNotFoundException: org.apache.catalina.WebappLoader
> >         at
> >
> org.apache.catalina.loader.StandardClassLoader.loadClass(StandardC
> lassLoader
> > .java:1122)
> >         at
> >
> org.apache.catalina.loader.StandardClassLoader.loadClass(StandardC
> lassLoader
> > .java:987)
> >         at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:320)
> >         at java.lang.Class.forName0(Native Method)
> >         at java.lang.Class.forName(Class.java:130)
> >         at
> > org.apache.catalina.startup.CreateLoaderAction.start(Catalina.java:918)
> >         ... lots of XML mapper stuff ...
> >         at org.apache.catalina.startup.Catalina.start(Catalina.java:687)
> >         at
> org.apache.catalina.startup.Catalina.execute(Catalina.java:657)
> >         at
> org.apache.catalina.startup.Catalina.process(Catalina.java:178)
> >         at sun.reflect.GeneratedMethodAccessor3.invoke(Unknown Source)
> >         at java.lang.reflect.Method.invoke(Method.java:311)
> >         at
> org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:202)
> >
> > And indeed org.apache.catalina.WebappLoader doesn't exist although
> > org.apache.catalina.loader.WebappLoader does
> >
> > Looking in Catalina.java I see an entry like this
> >
> > mapper.addRule(prefix + "/Loader", new
> > CreateLoaderAction("org.apache.catalina.WebappLoader", "className"));
> >
> > I assume this should be
> >
> > mapper.addRule(prefix + "/Loader", new
> > CreateLoaderAction("org.apache.catalina.loader.WebappLoader",
> "className"));
> >
> > Kevin Jones
> > DevelopMentor
> > www.develop.com
> >
> >
>


RE: Problem starting latest nightly

Posted by "Craig R. McClanahan" <cr...@apache.org>.

On Tue, 17 Jul 2001, Kevin Jones wrote:

> Thanks Craig,
> 
> what's the difference between the two (WebappLoader and StandardLoader)? and
> should I care?
> 

WebappLoader runs faster, and has a bunch of bugfixes.  It is now the
default loader that Catalina uses for web applications.

> Kevin Jones
> DevelopMentor
> www.develop.com
> 

Craig




RE: Problem starting latest nightly

Posted by Kevin Jones <ke...@develop.com>.
Thanks Craig,

what's the difference between the two (WebappLoader and StandardLoader)? and
should I care?

Kevin Jones
DevelopMentor
www.develop.com

> -----Original Message-----
> From: Craig R. McClanahan [mailto:craigmcc@apache.org]
> Sent: 17 July 2001 17:34
> To: Tomcat-Dev
> Subject: Re: Problem starting latest nightly
>
>
>
>
> On Tue, 17 Jul 2001, Kevin Jones wrote:
>
> > I've just downloaded the latest nightly (20010716), and I can't
> get it to
> > start.
> >
> > I have a context entry in server.xml that looks like this
> >
> > <Context path="/AddressBook" docBase="AddressBook" debug="9"
> > reloadable="true">
> >             <Loader checkInterval="3"
> > lassname="org.apache.catalina.loader.StandardLoader"/>
> > </Context>
> >
>
> Thanks Kevin.  I just fixed the default class name in Catalina.java (as
> you identified below).  Now, if you don't specify a className attribute:
>
>   <Loader checkInterval="3"/>
>
> you correctly get a WebappLoader instance.  If you really want to use
> StandardLoader instead, you have to use "className" instead of
> "classname", which is why you ran into this bug.
>
> Craig
>
> > and I get the following error
> >
> > ERROR reading .\conf\server.xml
> > At Line 199 /Server/Service/Engine/Host/Context/Loader/ checkInterval=3
> > classname=org.apache.catalina.loader.StandardLoader
> >
> > Catalina.start: java.lang.ClassNotFoundException:
> > org.apache.catalina.WebappLoader
> > java.lang.ClassNotFoundException: org.apache.catalina.WebappLoader
> >         at
> >
> org.apache.catalina.loader.StandardClassLoader.loadClass(StandardC
> lassLoader
> > .java:1122)
> >         at
> >
> org.apache.catalina.loader.StandardClassLoader.loadClass(StandardC
> lassLoader
> > .java:987)
> >         at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:320)
> >         at java.lang.Class.forName0(Native Method)
> >         at java.lang.Class.forName(Class.java:130)
> >         at
> > org.apache.catalina.startup.CreateLoaderAction.start(Catalina.java:918)
> >         ... lots of XML mapper stuff ...
> >         at org.apache.catalina.startup.Catalina.start(Catalina.java:687)
> >         at
> org.apache.catalina.startup.Catalina.execute(Catalina.java:657)
> >         at
> org.apache.catalina.startup.Catalina.process(Catalina.java:178)
> >         at sun.reflect.GeneratedMethodAccessor3.invoke(Unknown Source)
> >         at java.lang.reflect.Method.invoke(Method.java:311)
> >         at
> org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:202)
> >
> > And indeed org.apache.catalina.WebappLoader doesn't exist although
> > org.apache.catalina.loader.WebappLoader does
> >
> > Looking in Catalina.java I see an entry like this
> >
> > mapper.addRule(prefix + "/Loader", new
> > CreateLoaderAction("org.apache.catalina.WebappLoader", "className"));
> >
> > I assume this should be
> >
> > mapper.addRule(prefix + "/Loader", new
> > CreateLoaderAction("org.apache.catalina.loader.WebappLoader",
> "className"));
> >
> > Kevin Jones
> > DevelopMentor
> > www.develop.com
> >
> >
>


Re: Problem starting latest nightly

Posted by "Craig R. McClanahan" <cr...@apache.org>.

On Tue, 17 Jul 2001, Kevin Jones wrote:

> I've just downloaded the latest nightly (20010716), and I can't get it to
> start.
> 
> I have a context entry in server.xml that looks like this
> 
> <Context path="/AddressBook" docBase="AddressBook" debug="9"
> reloadable="true">
>             <Loader checkInterval="3"
> lassname="org.apache.catalina.loader.StandardLoader"/>
> </Context>
> 

Thanks Kevin.  I just fixed the default class name in Catalina.java (as
you identified below).  Now, if you don't specify a className attribute:

  <Loader checkInterval="3"/>

you correctly get a WebappLoader instance.  If you really want to use
StandardLoader instead, you have to use "className" instead of
"classname", which is why you ran into this bug.

Craig

> and I get the following error
> 
> ERROR reading .\conf\server.xml
> At Line 199 /Server/Service/Engine/Host/Context/Loader/ checkInterval=3
> classname=org.apache.catalina.loader.StandardLoader
> 
> Catalina.start: java.lang.ClassNotFoundException:
> org.apache.catalina.WebappLoader
> java.lang.ClassNotFoundException: org.apache.catalina.WebappLoader
>         at
> org.apache.catalina.loader.StandardClassLoader.loadClass(StandardClassLoader
> .java:1122)
>         at
> org.apache.catalina.loader.StandardClassLoader.loadClass(StandardClassLoader
> .java:987)
>         at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:320)
>         at java.lang.Class.forName0(Native Method)
>         at java.lang.Class.forName(Class.java:130)
>         at
> org.apache.catalina.startup.CreateLoaderAction.start(Catalina.java:918)
>         ... lots of XML mapper stuff ...
>         at org.apache.catalina.startup.Catalina.start(Catalina.java:687)
>         at org.apache.catalina.startup.Catalina.execute(Catalina.java:657)
>         at org.apache.catalina.startup.Catalina.process(Catalina.java:178)
>         at sun.reflect.GeneratedMethodAccessor3.invoke(Unknown Source)
>         at java.lang.reflect.Method.invoke(Method.java:311)
>         at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:202)
> 
> And indeed org.apache.catalina.WebappLoader doesn't exist although
> org.apache.catalina.loader.WebappLoader does
> 
> Looking in Catalina.java I see an entry like this
> 
> mapper.addRule(prefix + "/Loader", new
> CreateLoaderAction("org.apache.catalina.WebappLoader", "className"));
> 
> I assume this should be
> 
> mapper.addRule(prefix + "/Loader", new
> CreateLoaderAction("org.apache.catalina.loader.WebappLoader", "className"));
> 
> Kevin Jones
> DevelopMentor
> www.develop.com
> 
>