archiva-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Andrew Williams <a...@handyande.co.uk>
Subject Appserver container woes (was re: [plexus-scm] [5531] plexus-appserver/trunk....)
Date Tue, 30 Jan 2007 01:52:53 GMT
OK, so the fault was not in the appserver code brett kindly committed  
- internally that works fine.
(My apologies for wrongly suggesting it was broken)

The problem is that the container the application instances now see  
is the server container to which we apply a different realm. OK, so  
not a problem in itself the real issue is that Jetty service  
publishes this container to the servlets.
plexus-xwork-integration uses it without trouble, as it just grabs  
the context variables which are the same whether it is the appserver  
or the application child (as was).
plexus-webdav on the other hand uses the container to look up  
components. When it does this it is not informed of the custom realm  
and defaults to the [plexus.core] realm which is very wrong.

This is the cause of the 500 errors in archiva etc etc so it needs  
fixed fast.

the options appear to be:
1) Publish the realm alongside the container with a key such as  
(PLEXUS_REALM_KEY) [bad idea]
2) Wrap the container so that all methods dependent on the right  
realm are handled correctly
3) Revert to the old setup where the applications all have their own  
container
4) Stop publishing the container (as it is misleading now) and  
publish the context etc that is valid information. This would need a  
rewrite for webdav to do the lookups externally rather than internally.

My opinion is that:
1) sucks
2) is probably a bad idea
3) is easy, but takes us back to our slightly heavier appserver
4) likely a lot of work impacting much code and may not even work - I  
am not sure

Please offer your opinions or any suggested fixes, I think we have a  
long list of folk wanting this wrapped up.

Andy

Mime
View raw message