我试图从Tomcat 6Tomcat的迁移 - 身份验证问题
的应用程序迁移到Tomcat 7使用形式的认证,并在应用程序登录时卡在/ j_security_check为空白页。
Tomcat显示用户已通过身份验证并出现错误。
java.lang.NoSuchMethodError: org.apache.catalina.realm.GenericPrincipal.getRealm()Lorg/apache/catalina/Realm;
不知道该从哪里出发。
[编辑]
在Tomcat服务器上的server.xml文件只是默认。
context.xml的应用程序中的
<Realm
appName="Informer" className="AuthRealm"
dbContext="java:comp/env/jdbc/appdb" debug="2"
krbFile="C:\\Program Files\\Apache Software Foundation\\Apache Tomcat 7.0.14\\conf\\krb5.conf"
loginFile="C:\\Program Files\\Apache Software Foundation\\Apache Tomcat 7.0.14\\conf\\jaas.conf"
ndcLdap="ldap://server:389"
nedLdap="ldap://server:389" roleClassNames=""
useContextClassLoader="true" userClassNames="" />
[[编辑]]
我打电话的getRealm()方法来生成一个新的GenericPrincipal对象。看起来我只需要更新到新的构造函数。
[[[EDIT]]]
两个问题。我正在调用getRealm(),并且调用是在一个构造函数中,不再将领域作为参数。
因此,我查找了GenericPrincipal的新构造函数,我所要做的就是从参数中移除getRealm()调用。
已解决。
问候,
你的配置文件是什么? – madth3 2012-03-22 16:52:00