Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/codeigniter/3.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 Webapp的登录可以在一台服务器上工作,但不能在另一台服务器上工作_Java_Jakarta Ee_Spring Security_Jboss 4.0.x - Fatal编程技术网

Java Webapp的登录可以在一台服务器上工作,但不能在另一台服务器上工作

Java Webapp的登录可以在一台服务器上工作,但不能在另一台服务器上工作,java,jakarta-ee,spring-security,jboss-4.0.x,Java,Jakarta Ee,Spring Security,Jboss 4.0.x,我在一个项目中遇到了一个奇怪的问题,我一直在努力实现一些额外的功能。我已经在我的开发机器和本地测试服务器上运行了它。现在,当我在客户机测试服务器上部署EAR包时,奇怪的事情发生了。该应用程序本身启动正常,但当尝试登录时,它从未成功。密码肯定是正确的。我进入server.log的消息如下: 2011-12-21 11:46:17,202 DEBUG [com.foo.impl.AuthenticationServiceImpl] Authentication event Authenticatio

我在一个项目中遇到了一个奇怪的问题,我一直在努力实现一些额外的功能。我已经在我的开发机器和本地测试服务器上运行了它。现在,当我在客户机测试服务器上部署EAR包时,奇怪的事情发生了。该应用程序本身启动正常,但当尝试登录时,它从未成功。密码肯定是正确的。我进入server.log的消息如下:

2011-12-21 11:46:17,202 DEBUG [com.foo.impl.AuthenticationServiceImpl] Authentication event AuthenticationFailureBadCredentialsEvent: admin; details: org.acegisecurity.ui.WebAuthenticationDetails@1c07a: RemoteIpAddress: xx.xx.xx.xx; SessionId: 4022FD9349C4BC35553DD7D96134FDE8
2011-12-21 11:46:17,202 INFO  [com.foo.impl.AuthenticationServiceImpl] Authentication event AuthenticationFailureBadCredentialsEvent: admin; details: org.acegisecurity.ui.WebAuthenticationDetails@1c07a: RemoteIpAddress: xx.xx.xx.xx; SessionId: 4022FD9349C4BC35553DD7D96134FDE8; exception: Bad credentials
2011-12-21 11:46:17,203 DEBUG [com.foo.web.server.AuthenticationFilter] Updated SecurityContextHolder to contain null Authentication
2011-12-21 11:46:17,203 DEBUG [com.foo.web.server.AuthenticationFilter] Authentication request failed: org.acegisecurity.BadCredentialsException: Bad credentials
我删除了新的软件包,放回了旧的EAR,它已经存在多年了,登录也不起作用。我很确定在我到达那里之前它已经工作了

我们在所有机器上使用JBoss 4.0.5-GA应用服务器,该项目使用acegi-security-1.0.3进行身份验证

为了确保我没有弄糟任何东西,我将整个JBoss文件夹复制到我的pc上,并将其与本地服务器上的文件夹进行了比较。日志文件和postgres-ds.xml中的差异。数据库连接在这两台服务器上都可以工作,因为我可以从打开首页中看到缓存来自数据库的大多数classificator值

我搞不清楚是什么引起的。也许有人有过类似的经历,可以提出一些建议

问候,,
Raido

我不是acegi方面的专家,但是 更新的SecurityContextHolder包含空身份验证,警告某些配置可能错误


是否需要启用Cookie或其他功能?

结果是,除了我之外,还有人在测试服务器中捣乱。他或她所做的大概是恢复一个旧备份,该备份具有错误版本的Postgre配置。后果该应用程序连接到错误的数据库,这导致密码不匹配,但大多数其他数据与正确数据库中的数据相同


奇怪的是,配置文件的最后一次修改日期要追溯到2007年,因此最容易理解的解释是备份还原。

坏凭据异常可能不是来自您的应用程序。检查防火墙etc是否打开,并且您可以通过命令提示符访问数据库。数据库可以通过命令行访问,而防火墙似乎没有阻碍。这真让人难过。