This turned out to be caused by not copying over the extra
configuration files and directories tomcat needs. It would be nice to
have stuff installed into var as a consequence of installing the
configuration.
thanks
david jencks
On Sep 5, 2005, at 10:44 AM, David Jencks wrote:
I have been working on splitting up our monolithic server
configuration into smaller bits, including making the web containers
and builders into pluggable configurations. This works fine for Jetty
but I am running into problems with Tomcat. AFAICT all the tomcat
gbeans start properly and deployment appears to work, but when I try
to access web applications I either get an NPE in the log or 404
errors in the browser.
The only startup difference I know of is reflected in my change to
EngineGBean in rev 267422. When separated into a different
configuration, the hosts in the reference collection start after the
engine gbean, so need to be registered with the actual engine when
they start up rather than when the EngineGBean starts up. Can this
possibly be causing the error I see? If so, we need to find a
different way of establishing startup order.
The stack trace I get from the NPE is:
11:00:13,235 ERROR [CoyoteAdapter] An exception or error occurred in
the container during the request processing
java.lang.NullPointerException
at
org.apache.catalina.realm.RealmBase.findSecurityConstraints(RealmBase.j
ava:476)
at
org.apache.catalina.authenticator.AuthenticatorBase.invoke(Authenticato
rBase.java:400)
at
org.apache.geronimo.tomcat.valve.PolicyContextValve.invoke(PolicyContex
tValve.java:47)
at
org.apache.geronimo.tomcat.valve.TransactionContextValve.invoke(Transac
tionContextValve.java:53)
at
org.apache.geronimo.tomcat.valve.ComponentContextValve.invoke(Component
ContextValve.java:47)
at
org.apache.geronimo.tomcat.valve.InstanceContextValve.invoke(InstanceCo
ntextValve.java:60)
at
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.jav
a:126)
at
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.jav
a:105)
at
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve
.java:107)
at
org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:
526)
at
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:
148)
at
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:
856)
at
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process
Connection(Http11Protocol.java:744)
at
org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoin
t.java:527)
at
org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollo
werWorkerThread.java:80)
at
org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPoo
l.java:684)
at java.lang.Thread.run(Thread.java:552)
and comes from trying to access localhost:8080/console
Trying localhost:8080 or localhost:8080/console/ or anything else I
can think of gives 404 errors.
Any assistance, hints, clues, or suggestions where to look would be
gratefully appreciated.
thanks
david jencks