Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/342.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 Tomcat上的JAAS登录配置错误。无法loas JAAS配置文件_Java_Tomcat_Jaas - Fatal编程技术网

Java Tomcat上的JAAS登录配置错误。无法loas JAAS配置文件

Java Tomcat上的JAAS登录配置错误。无法loas JAAS配置文件,java,tomcat,jaas,Java,Tomcat,Jaas,我正试图在Tomcat7上实现一个简单的JAAS模块,该模块具有领域配置。我试图基于以下链接实现此功能: 我将jass.config放在CATALINA_HOME/conf文件夹中,并将以下代码添加到CATALINA_HOME/bin/CATALINA.bat文件中 JAVA_OPTS=$JAVA_OPTS "-Djava.security.auth.login.config==$CATALINA_HOME/conf/jaas.config" 但是,一旦我启动Tomcat并尝试访问

我正试图在Tomcat7上实现一个简单的JAAS模块,该模块具有领域配置。我试图基于以下链接实现此功能:

我将jass.config放在CATALINA_HOME/conf文件夹中,并将以下代码添加到CATALINA_HOME/bin/CATALINA.bat文件中

JAVA_OPTS=$JAVA_OPTS "-Djava.security.auth.login.config==$CATALINA_HOME/conf/jaas.config"     
但是,一旦我启动Tomcat并尝试访问受保护的admin.html页面,我就会得到浏览器的基本登录对话框(如预期的那样)。但在尝试登录时,Tomcat报告以下错误:

SEVERE: Unexpected error
java.lang.SecurityException: Unable to locate a login configuration

请帮助如何让Tomcat找到JAAS配置文件。

您使用的是
.bat
文件,这表明您使用的是使用
%VARIABLE%
符号而不是
$VARIABLE
引用变量的窗口。尝试将表达式更改为:

set JAVA_OPTS=%JAVA_OPTS% -Djava.security.auth.login.config=%CATALINA_HOME%/conf/jaas.config

@Vladimír Schäfer感谢您的快速回复。我在Windows8环境中。根据您的建议,我使用您的启动选项更新了/bin/catalina.bat。我还显式地将环境变量CATALINA_HOME设置为E:\apache-tomcat-7.0.55。这个问题仍然存在。catalina.bat中是否有一个特定的部分,我应该在其中添加您建议的启动选项?可能是打字错误吗?在您的问题中,文本中有“jass.config”,但参数中有“jaas.config”?注意“s”的数量吗?如果这没有帮助,请尝试删除%CATALINA\u HOME%,并在CATALINA.bat中指定文件的完整路径,看看是否有帮助。我最终将jaas.config添加到Web应用程序的根目录中,该目录与Web-INF、META-INF、com\Byteslouge\jaas包目录处于同一级别。com\byteslouge\jaas包含登录模块类以及用户和角色主体类。我已经用jaas.config当前位置的完整路径更新了Catalina.bat。已找到jass.config,但未识别登录模块。错误为“javax.security.auth.login.login异常:找不到LoginModule类:com.byteslounge.jaas.BytesLoungeLoginModule”。这里哪里出错了?您可能必须将LoginModule放到Tomcat的类路径,即Tomcat/lib