Java Spring security没有';不要在玻璃鱼上工作

Java Spring security没有';不要在玻璃鱼上工作,java,spring-security,glassfish-3,Java,Spring Security,Glassfish 3,我有一个java web应用程序,它使用spring安全性来登录用户、限制访问等,它在Glassfish 2.1、Tomcat、jetty上运行没有问题,但在Glassfish v3上不工作,当我尝试登录并按下按钮登录时,我从Glassfish服务器获得登录框(框)“服务器xxxx需要用户名和密码”) 有人有这样的问题吗?请告诉我如何解决这个问题 谢谢, Iurie您是否在Glassfish服务器中创建了JDBC连接池和资源 例如: User: root Password: java

我有一个java web应用程序,它使用spring安全性来登录用户、限制访问等,它在Glassfish 2.1、Tomcat、jetty上运行没有问题,但在Glassfish v3上不工作,当我尝试登录并按下按钮登录时,我从Glassfish服务器获得登录框(框)“服务器xxxx需要用户名和密码”)

有人有这样的问题吗?请告诉我如何解决这个问题

谢谢,
Iurie

您是否在Glassfish服务器中创建了JDBC连接池和资源

例如:

User: root     
Password: java     
databaseName: theDatabase     
serverName: localhost     
portNumber: 3306    
driverClass: com.mysql.jdbc.Driver   
URL: jdbc:mysql://localhost:3306/dbname  

我不知道是什么原因导致了这种情况(可能是多种原因之一),但我建议您将日志记录级别提高到最大值,看看这是否为您提供了一些关于发生了什么的线索。(当日志记录级别为DEBUG或更高时,SpringSecurity会生成大量日志记录。)


…请求没有发送到spring security,glassfish用他的基本身份验证阻止了它,问题是为什么

我不知道这是什么原因,但如果您想使用SpringSecurity,听起来需要关闭Glassfish身份验证/授权的某些方面。(可能是您在Glassfish 2.1安装中这样做的…)


SpringSecurity的工作方式是,如果一个请求发送到一个安装了SS过滤器链的servlet,您肯定会看到日志消息。可能存在SS错误配置,这意味着您没有安装SS过滤器链,但我怀疑真正的问题是Glassfish以前做了自己的工作请求被发送到筛选器链。

尝试对以下片段进行注释:

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

基本的

在“../glassfish/domains/domain1/config/default web.xml

文件中,问题似乎是对/j_-spring_-security_-check url的混淆,如果更改它,一切都会再次正常工作

<security:form-login login-processing-url="/whatever_security_check" />


请参阅。

任何日志或异常跟踪?我只看到一个警告:warning | glassfish3.0.1 | javax.enterprise.system.container.web.com.sun.web.security | ThreadID=30;| ThreadName=Thread-1;| web登录失败:登录失败:javax.security.auth.login.login异常:系统管理员的文件登录失败。|#]当我尝试使用服务器登录框登录时,谢谢寻求帮助。不,我没有定义任何连接池,所有资源都被管理到web应用程序中。我下载了一个glassfish服务器,没有对设置进行任何修改,我将我的应用程序部署到该服务器上。感谢帮助。关于日志记录,我将尝试启用它们,但我认为,我的登录请求没有达到spring安全过滤器,我t被glasshfish停止。@user627346-日志记录应该确认或反驳这一点。同时检查Spring/SpringSecurity启动期间日志中是否有任何奇怪的内容。我启用了Spring安全日志记录,并且在sturtup上没有错误/警告,按下登录按钮后,请求不会发送给Spring安全,glassf伊什用他的基本身份验证阻止了这一切,问题是为什么