tomcat-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Endre StĂžlsvik <En...@Stolsvik.com>
Subject Reloading - again..
Date Thu, 07 Dec 2000 19:18:39 GMT
Sorry for going on and on with this, but I cannot stop being puzzled by
it.

It seems like Tomcat only really reloads the one class that you hit
first. I do a full recompile (deleting all class files just to be sure!),
and look at the tomcat log while clicking reload.

These logs are both right after a full recompile, but hitting different
servlets first:

Here I hit "Initialize" first, and then "design.Topbar" and then
"Workbench".

2000-12-07 07:04:38 - ContextManager: Host = endre.devel.coretrek.com
2000-12-07 07:04:38 - ContextManager: SM: Prefix match /itraks/servlet/Initialize -> /servlet/Initialize/*
Initialize(Initialize/null) null
2000-12-07 07:04:38 - ContextManager: SimpleMapper1: Adjust for prefix map /servlet/Initialize

2000-12-07 07:04:38 - ContextManager: SimpleMapper1: SM: After mapping R( /itraks + /servlet/Initialize
+ null) Initialize(Initialize/null)
2000-12-07 07:04:38 - Ctx( /itraks ): Pre servlet destroy Initialize(Initialize/null)
2000-12-07 07:04:39 - Ctx( /itraks ): Post servlet destroy Initialize(Initialize/null)
2000-12-07 07:04:39 - ContextManager: Reloading context Ctx( /itraks )
2000-12-07 07:04:39 - Ctx( /itraks ): Pre servlet init Initialize(Initialize/null)
2000-12-07 07:04:39 - Ctx( /itraks ): Post servlet init Initialize(Initialize/null)
2000-12-07 07:04:39 - ContextManager: Host = endre.devel.coretrek.com
2000-12-07 07:04:39 - ContextManager: SM: Prefix match /itraks/servlet/design.Topbar ->
/servlet/design.Topbar/* design.Topbar(design.Topbar/null) null
2000-12-07 07:04:39 - ContextManager: SimpleMapper1: Adjust for prefix map /servlet/design.Topbar

2000-12-07 07:04:39 - ContextManager: SimpleMapper1: SM: After mapping R( /itraks + /servlet/design.Topbar
+ null) design.Topbar(design.Topbar/null)
2000-12-07 07:04:39 - ContextManager: Host = endre.devel.coretrek.com
2000-12-07 07:04:39 - ContextManager: SM: Prefix match /itraks/servlet/Workbench -> /servlet/Workbench/*
Workbench(Workbench/null) null
2000-12-07 07:04:39 - ContextManager: SimpleMapper1: Adjust for prefix map /servlet/Workbench

2000-12-07 07:04:39 - ContextManager: SimpleMapper1: SM: After mapping R( /itraks + /servlet/Workbench
+ null) Workbench(Workbench/null)

This is strange right away, because why aren't all the servlets destroyed
right away? I mean, they're all ditched right away, since a context reload
actually puts the whole ClassLoader out of scope and makes a new one to be
able to reload the classes. So why aren't they all destroyed too?


Then this is if I hit Workbench first, and then hit the "design.Topbar".

2000-12-07 07:08:43 - ContextManager: Host = endre.devel.coretrek.com
2000-12-07 07:08:43 - ContextManager: SM: Prefix match /itraks/servlet/Workbench -> /servlet/Workbench/*
Workbench(Workbench/null) null
2000-12-07 07:08:43 - ContextManager: SimpleMapper1: Adjust for prefix map /servlet/Workbench

2000-12-07 07:08:43 - ContextManager: SimpleMapper1: SM: After mapping R( /itraks + /servlet/Workbench
+ null) Workbench(Workbench/null)
2000-12-07 07:08:43 - Ctx( /itraks ): Pre servlet destroy Workbench(Workbench/null)
2000-12-07 07:08:43 - Ctx( /itraks ): Post servlet destroy Workbench(Workbench/null)
2000-12-07 07:08:43 - ContextManager: Reloading context Ctx( /itraks )
2000-12-07 07:08:43 - Ctx( /itraks ): Pre servlet init Workbench(Workbench/null)
2000-12-07 07:08:43 - Ctx( /itraks ): Post servlet init Workbench(Workbench/null)
2000-12-07 07:08:49 - ContextManager: Host = endre.devel.coretrek.com
2000-12-07 07:08:49 - ContextManager: SM: Prefix match /itraks/servlet/design.Topbar ->
/servlet/design.Topbar/* design.Topbar(design.Topbar/null) null
2000-12-07 07:08:49 - ContextManager: SimpleMapper1: Adjust for prefix map /servlet/design.Topbar

2000-12-07 07:08:49 - ContextManager: SimpleMapper1: SM: After mapping R( /itraks + /servlet/design.Topbar
+ null) design.Topbar(design.Topbar/null)

Why is this so?

One more thing: Shouldn't the "load-on-startup" servlets also be started
up again on a context-reload?

btw; I'm using tomcat 3.2 final.

-- 
Mvh,
Endre


Mime
View raw message