Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/347.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java JDBCRealm不工作,但没有错误消息_Java_Mysql_Jdbcrealm - Fatal编程技术网

Java JDBCRealm不工作,但没有错误消息

Java JDBCRealm不工作,但没有错误消息,java,mysql,jdbcrealm,Java,Mysql,Jdbcrealm,我希望有人能帮助我。我尝试通过JDBCRealm配置身份验证。这是第一次这样做 这是我的桌子: *Table userprincipal* email : varchar password : varchar *Table role* email : varchar role : varchar 我使用Tomcat7服务器。因此,我将server.xml从 <Realm className="org.apache.catalina.realm.LockOutRealm">

我希望有人能帮助我。我尝试通过JDBCRealm配置身份验证。这是第一次这样做

这是我的桌子:

*Table userprincipal*
email : varchar
password : varchar

*Table role*
email : varchar
role : varchar
我使用Tomcat7服务器。因此,我将server.xml从

<Realm className="org.apache.catalina.realm.LockOutRealm"> 
    <Realm className="org.apache.catalina.realm.UserDatabaseRealm"
           resourceName="UserDatabase"/>
</Realm>
使用正确的登录数据登录

<Realm className="org.apache.catalina.realm.JDBCRealm"
        driverName="com.mysql.jdbc.Driver" connectionURL="jdbc:mysql://localhost:3306/myData"
        connectionName="user" 
        connectionPassword="pwd" 
        userTable="userprincipal"
        userNameCol="EMAIL" 
        userCredCol="password" 
        userRoleTable="userprincipal_role"
        roleNameCol="role" />
我在web.xml中添加了以下内容

<security-constraint>
    <web-resource-collection>
        <web-resource-name>Default</web-resource-name>
        <url-pattern>/services/customer/*</url-pattern>
        <url-pattern>/services/material/loadAllByQuery</url-pattern>
        <url-pattern>/services/SalesOrder/*</url-pattern>
    </web-resource-collection>
    <auth-constraint>
        <role-name>admin</role-name>
        <role-name>user</role-name>
    </auth-constraint>
</security-constraint>

<login-config>
    <auth-method>BASIC</auth-method>
</login-config>

<security-role>
    <role-name>admin</role-name>
</security-role>
<security-role>
    <role-name>user</role-name>
</security-role>
当我启动应用程序并调用只有管理员和用户才能访问的URL时,我会从浏览器中获得登录弹出窗口。但是如果我用正确的用户数据登录,弹出窗口会再次出现。没有登录的其他页面工作正常

控制台中不显示异常、警告和其他错误

我怎样才能找出问题所在

SDK是Java1.7
Tomcat版本是7.0

看起来问题出在Tomcat的安装上。我通过Eclipse安装了它。现在我手动安装了它,并部署了我项目的war文件。它起作用了