我正在使用嵌入式Glassfish(org.glassfish.main.extras:glassfish-embedded-all:3.1.2.2)并尝试添加JDBC领域.应用程序部署正常但在尝试登录时(基本身份验证显示正确的域名称)会出现以下错误消息:
com.sun.web.security.RealmAdapter authenticate警告:WEB9102:Web登录失败:com.sun.enterprise.security.auth.login.common.LoginException:登录失败:没有为jdbcRealm配置LoginModule
我的代码看起来像这样:
嵌入式Glassfish
// create-jdbc-connection-pool ...
// create-jdbc-resource ...
String realmProperties = "jaas-context=jdbcRealm:datasource-jndi=jdbc/myDB:user-table=Users:user-name-column=userid:password-column=password:group-table=Groups:group-name-column=groupid;
glassfish.getCommandRunner().run("create-auth-realm", "--classname", "com.sun.enterprise.security.auth.realm.jdbc.JDBCRealm", "--property", realmProperties, myRealm);
Run Code Online (Sandbox Code Playgroud)
已部署应用程序的web.xml
<login-config>
<auth-method>BASIC</auth-method>
<realm-name>myRealm</realm-name>
</login-config>
Run Code Online (Sandbox Code Playgroud)
我想如果没有指定默认的LoginModule(在domain/conf/login.conf中指定非嵌入式Glassfish的情况下)适用?
glassfish ×1