Java Spring安全性-从Tomcat 6部署到Tomcat 7时凭据错误

Java Spring安全性-从Tomcat 6部署到Tomcat 7时凭据错误,java,jsp,spring-mvc,tomcat,spring-security,Java,Jsp,Spring Mvc,Tomcat,Spring Security,我有一个使用Spring安全性进行身份验证的web应用程序。 它在Tomcat 6中运行良好。根据业务需求的变化,我不得不将其部署到Tomcat7,但现在无法工作 spring-security.xml(为了简单起见,我更改了查询) 同样,这在Tomcat6中工作得非常好。 我还检查了JSP表单,它确实包含用户凭据,出于某种原因,看起来Spring security找不到它 谁能给我指一下正确的方向吗?我感谢你的意见。 谢谢 更新:我认为过滤器链上的一个过滤器是罪魁祸首,它消耗了请求体中的参数。

我有一个使用Spring安全性进行身份验证的web应用程序。 它在Tomcat 6中运行良好。根据业务需求的变化,我不得不将其部署到Tomcat7,但现在无法工作

spring-security.xml(为了简单起见,我更改了查询)

同样,这在Tomcat6中工作得非常好。 我还检查了JSP表单,它确实包含用户凭据,出于某种原因,看起来Spring security找不到它

谁能给我指一下正确的方向吗?我感谢你的意见。 谢谢


更新:我认为过滤器链上的一个过滤器是罪魁祸首,它消耗了请求体中的参数。将进一步调查。

经过几天的谷歌搜索、痛苦的调试、创建自定义过滤器和tomcat配置,我注意到我所有的表单都不工作,我的控制器都得到空值

我尝试了Tomcat的另一个版本(我有apache-Tomcat-7.0.64,并下载了apache-Tomcat-7.0.47),它成功了


问题解决了。节省了工作

经过几天的谷歌搜索、痛苦的调试、创建自定义过滤器和tomcat配置,我注意到我所有的表单都不工作,我的控制器都得到了空值

我尝试了Tomcat的另一个版本(我有apache-Tomcat-7.0.64,并下载了apache-Tomcat-7.0.47),它成功了


问题解决了。节省了工作

经过几天的谷歌搜索、痛苦的调试、创建自定义过滤器和tomcat配置,我注意到我所有的表单都不工作,我的控制器都得到了空值

我尝试了Tomcat的另一个版本(我有apache-Tomcat-7.0.64,并下载了apache-Tomcat-7.0.47),它成功了


问题解决了。节省了工作

经过几天的谷歌搜索、痛苦的调试、创建自定义过滤器和tomcat配置,我注意到我所有的表单都不工作,我的控制器都得到了空值

我尝试了Tomcat的另一个版本(我有apache-Tomcat-7.0.64,并下载了apache-Tomcat-7.0.47),它成功了


问题解决了。节省了工作

我们经历了同样的奇怪行为。我们只收到表单中的空值

事实证明,在server.xml-File中的连接器配置中解释maxPostSize参数时发生了变化。 从Tomcat版本7.0.63开始,maxPostSize=“0”实际上被解释为零字节的最大Postsize。在版本7.0.63之前,maxPostSize=“0”意味着无限大的postsize。 设置maxPostSize=“-1”解决了我们案例中的问题


也许这个答案可以帮助某人…

我们也经历过同样的奇怪行为。我们只收到表单中的空值

事实证明,在server.xml-File中的连接器配置中解释maxPostSize参数时发生了变化。 从Tomcat版本7.0.63开始,maxPostSize=“0”实际上被解释为零字节的最大Postsize。在版本7.0.63之前,maxPostSize=“0”意味着无限大的postsize。 设置maxPostSize=“-1”解决了我们案例中的问题


也许这个答案可以帮助某人…

我们也经历过同样的奇怪行为。我们只收到表单中的空值

事实证明,在server.xml-File中的连接器配置中解释maxPostSize参数时发生了变化。 从Tomcat版本7.0.63开始,maxPostSize=“0”实际上被解释为零字节的最大Postsize。在版本7.0.63之前,maxPostSize=“0”意味着无限大的postsize。 设置maxPostSize=“-1”解决了我们案例中的问题


也许这个答案可以帮助某人…

我们也经历过同样的奇怪行为。我们只收到表单中的空值

事实证明,在server.xml-File中的连接器配置中解释maxPostSize参数时发生了变化。 从Tomcat版本7.0.63开始,maxPostSize=“0”实际上被解释为零字节的最大Postsize。在版本7.0.63之前,maxPostSize=“0”意味着无限大的postsize。 设置maxPostSize=“-1”解决了我们案例中的问题


也许这个答案可以帮助某人…

你的Spring安全版本是什么?你有hibernate吗?spring security 3.2.2,tiles 2.2.2。没有hibernate。我有一些XML代码将引用Java文件,在那里您可以编写findByUsername(字符串电子邮件)方法。那可能对你有用。不过,如果您有hibernate,这将是有益的,因为这需要用户对象。如果你想要的话,让我知道。你浏览器上j_用户名的查看源是什么?I值=“”是否正在通过?使用浏览器上的HTTP watch进行检查。尝试删除value=${user}作为测试并输入userid您的Spring安全版本是什么?你有hibernate吗?spring security 3.2.2,tiles 2.2.2。没有hibernate。我有一些XML代码将引用Java文件,在那里您可以编写findByUsername(字符串电子邮件)方法。那可能对你有用。不过,如果您有hibernate,这将是有益的,因为这需要用户对象。如果你想要的话,让我知道。你浏览器上j_用户名的查看源是什么?I值=“”是否正在通过?使用浏览器上的HTTP watch进行检查。尝试删除value=${user}作为测试并输入userid您的Spring安全版本是什么?你有hibernate吗?spring security 3.2.2,tiles 2.2.2。没有hibernate。我有一些XML代码将引用Java文件,在那里您可以编写findByUsername(字符串电子邮件)方法。那可能对你有用。不过,如果您有hibernate,这将是有益的,因为这需要用户对象。如果你想要的话,让我知道。你浏览器上j_用户名的查看源是什么?I值=“”是否正在通过?使用浏览器上的HTTP watch进行检查。尝试删除value=${user}作为测试并输入useridWhats y
<form-login login-page="/redirect" 
        login-processing-url="/submitLogin" 
        username-parameter="j_username" 
        password-parameter="j_password" 
        authentication-failure-handler-ref="loginFailureHandler" 
        authentication-success-handler-ref="loginSuccessHandler" />

 <authentication-manager>
    <authentication-provider>
        <jdbc-user-service 
            data-source-ref="sybaseDataSource" 
            users-by-username-query="SELECT distinct EnterpriseID as username, 'password' as password, 1 as enabled FROM users where id = ?" 
            authorities-by-username-query="SELECT ? as id, 'ROLE_USER' as authority" 
           <!-- I know, it shouldnt be like this, just for the sake of the user having an authority -->
        />
    </authentication-provider>
</authentication-manager>
                <form method="POST" action="/submitLogin" id="login-form-sso"> 

                <input type="text" name='j_username' value="${user}"/>
                <input type="text" name='j_password' value="password"/>
            </form>

       $(document).ready(function(){
        $("#login-form-sso").submit();
    });
    org.springframework.jdbc.core.JdbcTemplate , Executing prepared SQL statement [SELECT distinct EnterpriseID as username, 'password' 
org.springframework.jdbc.datasource.DataSourceUtils , Fetching JDBC Connection from DataSource
org.springframework.jdbc.datasource.DataSourceUtils , Returning JDBC Connection to DataSource
org.springframework.security.provisioning.JdbcUserDetailsManager , Query returned no results for user ''
org.springframework.security.authentication.dao.DaoAuthenticationProvider , User '' not found
org.springframework.beans.factory.support.DefaultListableBeanFactory , Returning cached instance of singleton bean 'sessionRegistry'