I need to accomplish JNDIrealm authentication in tomcat 4.1.12. It has to be 4.1.12 for vendor supplied software reasons. I have a working JNDIrealm in 4.1.17. But I can't get 4.1.12 to work. I've even begun to steal .jar files from 4.1.17 and copy them into 4.1.12.
If I copy the entire contents of 4.1.17/server/lib and 4.1.17/common/lib down to my 4.1.12, my authentication works, but my vendor supplied software doesn't.
I originally only copied the 4.1.17/common/lib/jndi.jar & naming-factory.jar. That wasn't enough. So I also copied the 4.1.17/tomcat-util.jar, tomcat-jk2.jar, tomcat-jk.jar and jaas.jar out of desperation. That didn't work either.(I mean: won't authenticate)
I have not tried copying only the entire server/lib or the entire common/lib. I guess I'll do that while I'm waiting to see if anyone knows what the secret is.
I think I've seen this problem mentioned in some forum before as one which is caused by a bug in the way 4.1.12 throws this exception when it shouldn't. However, I can't find that reference again.
I don't get that error in my 4.1.17 implementation, and I copied that to the 4.1.12. (I hope I didn't forget to copy something!)
Any help would be appreciated.
Oh yea. My 4.1.17 was configured as stand-alone. The 4.1.12 uses an apache front end. However, when I test the authentication, I force the port-number in my URL I bypass Apache and go straight to tomcat. It is a form-based authentication and the form does open correctly.
Joined: Jun 04, 2003
In case anyone else ever has this problem.
The only file I needed to copy was the catalina.jar I hated to use such an integral piece. However, just by using the catalina.jar from 4.1.17 and replacing the catalina.jar in 4.1.12, I am now able to authenticate to the Active Directory Server and handle my vendor supplied software also.