Java 为什么JAAS不连接到数据库?
下面给出的代码用于JAAS的用户身份验证。使用Oracle 11g和应用服务器Tomcat 8的数据库 为什么在输入用户名和密码后,总是输入login-error.html 表格:Java 为什么JAAS不连接到数据库?,java,authentication,jaas,Java,Authentication,Jaas,下面给出的代码用于JAAS的用户身份验证。使用Oracle 11g和应用服务器Tomcat 8的数据库 为什么在输入用户名和密码后,总是输入login-error.html 表格: CREATE TABLE "USERS" ("USERNAME" NVARCHAR2(50) NOT NULL ENABLE, "PASSWORD" NVARCHAR2(50) NOT NULL ENABLE, CONSTRAINT "USERS_PK" PRIMARY KEY ("U
CREATE TABLE "USERS"
("USERNAME" NVARCHAR2(50) NOT NULL ENABLE,
"PASSWORD" NVARCHAR2(50) NOT NULL ENABLE,
CONSTRAINT "USERS_PK" PRIMARY KEY ("USERNAME") ENABLE
) ;
CREATE TABLE "USERSROLE"
( "ROLENAME" NVARCHAR2(50) NOT NULL ENABLE,
"USERNAME" NVARCHAR2(50),
CONSTRAINT "USERSROLE_PK" PRIMARY KEY ("ROLENAME") ENABLE
) ;ALTER TABLE "USERSROLE" ADD CONSTRAINT "USERSROLE_FK" FOREIGN KEY ("USERNAME")
REFERENCES "USERS" ("USERNAME") ENABLE;
context.xml
<?xml version="1.0" encoding="UTF-8"?>
<Context path="/ProjectName"> ">
<Realm className="org.apache.catalina.realm.JDBCRealm"
driverName="oracle.jdbc.driver.OracleDriver"
connectionURL="jdbc:oracle:thin:@localhost:1521:xe"
connectionName="DBName" connectionPassword="myPassword"
userTable="users" userNameCol="USERNAME" userCredCol="PASSWORD"
userRoleTable="USERSROLE" roleNameCol="ROLENAME" />
</Context>
<security-constraint>
<web-resource-collection>
<web-resource-name>wholesale</web-resource-name>
<url-pattern>/*</url-pattern>
<http-method>GET</http-method>
<http-method>POST</http-method>
</web-resource-collection>
<auth-constraint>
<role-name>Admin</role-name>
</auth-constraint>
</security-constraint>
<login-config>
<auth-method>FORM</auth-method>
<form-login-config>
<form-login-page>/login.html</form-login-page>
<form-error-page>/login-error.html</form-error-page>
</form-login-config>
</login-config>
<security-role>
<role-name>Admin</role-name>
</security-role>
<form action="j_security_check" method="post">
User Name<input type="text" name="j_username"/> <br/>
Password<input type="password" name="j_password"/> <br/>
<input type="submit" value="Login" />
</form>
Login Failed! Try again!
<form action="j_security_check" method="post">
User Name<input type="text" name="j_username"/> <br/>
Password<input type="password" name="j_password"/> <br/>
<input type="submit" value="Login" />
</form>
">
web.xml
<?xml version="1.0" encoding="UTF-8"?>
<Context path="/ProjectName"> ">
<Realm className="org.apache.catalina.realm.JDBCRealm"
driverName="oracle.jdbc.driver.OracleDriver"
connectionURL="jdbc:oracle:thin:@localhost:1521:xe"
connectionName="DBName" connectionPassword="myPassword"
userTable="users" userNameCol="USERNAME" userCredCol="PASSWORD"
userRoleTable="USERSROLE" roleNameCol="ROLENAME" />
</Context>
<security-constraint>
<web-resource-collection>
<web-resource-name>wholesale</web-resource-name>
<url-pattern>/*</url-pattern>
<http-method>GET</http-method>
<http-method>POST</http-method>
</web-resource-collection>
<auth-constraint>
<role-name>Admin</role-name>
</auth-constraint>
</security-constraint>
<login-config>
<auth-method>FORM</auth-method>
<form-login-config>
<form-login-page>/login.html</form-login-page>
<form-error-page>/login-error.html</form-error-page>
</form-login-config>
</login-config>
<security-role>
<role-name>Admin</role-name>
</security-role>
<form action="j_security_check" method="post">
User Name<input type="text" name="j_username"/> <br/>
Password<input type="password" name="j_password"/> <br/>
<input type="submit" value="Login" />
</form>
Login Failed! Try again!
<form action="j_security_check" method="post">
User Name<input type="text" name="j_username"/> <br/>
Password<input type="password" name="j_password"/> <br/>
<input type="submit" value="Login" />
</form>
批发
/*
得到
邮递
管理
形式
/login.html
/login-error.html
管理
login.html
<?xml version="1.0" encoding="UTF-8"?>
<Context path="/ProjectName"> ">
<Realm className="org.apache.catalina.realm.JDBCRealm"
driverName="oracle.jdbc.driver.OracleDriver"
connectionURL="jdbc:oracle:thin:@localhost:1521:xe"
connectionName="DBName" connectionPassword="myPassword"
userTable="users" userNameCol="USERNAME" userCredCol="PASSWORD"
userRoleTable="USERSROLE" roleNameCol="ROLENAME" />
</Context>
<security-constraint>
<web-resource-collection>
<web-resource-name>wholesale</web-resource-name>
<url-pattern>/*</url-pattern>
<http-method>GET</http-method>
<http-method>POST</http-method>
</web-resource-collection>
<auth-constraint>
<role-name>Admin</role-name>
</auth-constraint>
</security-constraint>
<login-config>
<auth-method>FORM</auth-method>
<form-login-config>
<form-login-page>/login.html</form-login-page>
<form-error-page>/login-error.html</form-error-page>
</form-login-config>
</login-config>
<security-role>
<role-name>Admin</role-name>
</security-role>
<form action="j_security_check" method="post">
User Name<input type="text" name="j_username"/> <br/>
Password<input type="password" name="j_password"/> <br/>
<input type="submit" value="Login" />
</form>
Login Failed! Try again!
<form action="j_security_check" method="post">
User Name<input type="text" name="j_username"/> <br/>
Password<input type="password" name="j_password"/> <br/>
<input type="submit" value="Login" />
</form>
用户名
密码
登录错误。html
<?xml version="1.0" encoding="UTF-8"?>
<Context path="/ProjectName"> ">
<Realm className="org.apache.catalina.realm.JDBCRealm"
driverName="oracle.jdbc.driver.OracleDriver"
connectionURL="jdbc:oracle:thin:@localhost:1521:xe"
connectionName="DBName" connectionPassword="myPassword"
userTable="users" userNameCol="USERNAME" userCredCol="PASSWORD"
userRoleTable="USERSROLE" roleNameCol="ROLENAME" />
</Context>
<security-constraint>
<web-resource-collection>
<web-resource-name>wholesale</web-resource-name>
<url-pattern>/*</url-pattern>
<http-method>GET</http-method>
<http-method>POST</http-method>
</web-resource-collection>
<auth-constraint>
<role-name>Admin</role-name>
</auth-constraint>
</security-constraint>
<login-config>
<auth-method>FORM</auth-method>
<form-login-config>
<form-login-page>/login.html</form-login-page>
<form-error-page>/login-error.html</form-error-page>
</form-login-config>
</login-config>
<security-role>
<role-name>Admin</role-name>
</security-role>
<form action="j_security_check" method="post">
User Name<input type="text" name="j_username"/> <br/>
Password<input type="password" name="j_password"/> <br/>
<input type="submit" value="Login" />
</form>
Login Failed! Try again!
<form action="j_security_check" method="post">
User Name<input type="text" name="j_username"/> <br/>
Password<input type="password" name="j_password"/> <br/>
<input type="submit" value="Login" />
</form>
登录失败!请重试!
用户名
密码