Weblog Software Upgraded
I upgraded the weblog software this weekend to Pebble 1.4-dev. A major new feature is trackback.
An interesting twist is that Pebble 1.4-dev uses the commons-httpclient.jar from Apache Commons Project. JBoss 3.2.1 + Tomcat 4.1.24 that hosts this weblog also uses it.
Of course they use different versions of the jar. And posting a trackback to my weblog causes a NoSuchMethodException because the older version that JBoss uses lacks certain method present in the newer version.
Tweaking JBoss's class loading scheme to force the webapp to load it's own commons-httpclient.jar causes errors elsewhere. Copying the newer jar over the older jar doesn't work either.
Luckily, the latest beta version of JBoss, 3.2.2 RC4, uses the exact same version of commons-httpclient.jar as Pebble 1.4-dev. So I upgraded JBoss, and the new feature works as advertised now.
I still have problem with HTTP BASIC authentication in the embedded Tomcat. But it only affect the owner.
Re: Weblog Software Upgraded
Re: Weblog Software Upgraded
Re: Weblog Software Upgraded
JBoss's Scott M Stark wrote on jboss-user:
There is nothing wrong with basic auth in JBoss-3.2.2RC4_Tomcat-4.1.27. It sounds like the app is expecting there to be a valid user on non-secured pages and the caching that is required to achive this is disabled in the embedded version because it breaks the ability to transmit the caller credentials from servlets to ejbs. There is no spec mandate that the caller identity is available within a session from unsecured pages.
Re: Weblog Software Upgraded
If no user has been authenticated, the getRemoteUser method returns null, the isUserInRole method always returns false, and the getUserPrincipal method returns null.
Clearly this is in contrast because this statement doesn't differentiate protected and unprotected resources. The javadoc of the relevant methods in HttpServletRequest also makes no differentiation between protected and unprotected resources, instead being specific about whether the current user has been authenticated. With our problem, the current user has been authenticated. IMHO, I don't think JBoss is playing ball.
Perhaps it's worth dropping a note to this effect (or even copying and pasting this response) into the JBoss forum. ;-)