不是,  是需要你配置你的项目的web.xml文件

解决方案 »

  1.   

    acegi 是通过它自己的filter进行验证的,你该不会把表单随便提交到一个地方去了吧.....
      

  2.   

    j_security_check这个Action是在哪里配置的?我这里有一个工程,我搜索这个关键子只能在ApplicationContext.xml中可以查询到。提交表单到底是怎么识别j_security_check Action的?能说清楚点么?
      

  3.   

    <bean id="authenticationProcessingFilter" class="net.sf.acegisecurity.ui.webapp.AuthenticationProcessingFilter">
            <property name="authenticationManager"><ref bean="authenticationManager"/></property>
            <property name="authenticationFailureUrl"><value>/login.htm?login_error=0</value></property>
            <property name="defaultTargetUrl"><value>/</value></property>
            <property name="filterProcessesUrl"><value>/login</value></property>
            <property name="rememberMeServices"><ref local="rememberMeServices"/></property>
        </bean>这是一个典型的AuthenticationProcessingFilter配置,
    其属性filterProcessesUrl就是你的login表单要提交的url,默认为j_security_check。
    具体使用在父类AbstractProcessingFilter.requiresAuthentication()方法里面。
      

  4.   

    搞错了,应该是默认为 "/j_acegi_security_check"AuthenticationProcessingFilter对父类AbstractProcessingFilter抽象方法getDefaultFilterProcessesUrl的实现: public String getDefaultFilterProcessesUrl() {
            return "/j_acegi_security_check";
        }
      

  5.   

    我已经配置成这样了:<property name="filterProcessesUrl"><value>/j_security_check</value></property>
    用是这么用的:<form name="loginForm" action="../j_security_check" method="post">可后台一点反应也没有啊。