我正在使用OpenSessionInView和DWR为我的ajax请求获取一个hibernate会话。当我通过部署战争开始这工作得很好,但是当我尝试使用run-app
跑,我得到以下错误:OpenSessionInView过滤器会导致grails run-app炸弹?
ERROR: org.apache.catalina.startup.ContextConfig - Parse error in application web.xml file at file:/C:/Users/stefan/.grails/1.3.6/projects/myproject/resources/web.xml java.lang.IllegalArgumentException: Filter mapping specifies an unknown filter name hiddenHttpMethod
的web.xml
<filter>
<filter-name>hibernateFilter</filter-name>
<filter-class>org.springframework.orm.hibernate3.support.OpenSessionInViewFilter</filter-class>
<init-param>
<param-name>singleSession</param-name>
<param-value>true</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>hibernateFilter</filter-name>
<url-pattern>/dwr/*</url-pattern>
</filter-mapping>
我尝试添加过滤器映射的hiddenHttpMethod
,但我得到相同的错误。这是怎么回事?
添加的条目,其失败:
<filter>
<filter-name>hiddenHttpMethod</filter-name>
<filter-class>org.codehaus.groovy.grails.web.filters.HiddenHttpMethodFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>hiddenHttpMethod</filter-name>
<url-pattern>/*</url-pattern>
<dispatcher>FORWARD</dispatcher>
<dispatcher>REQUEST</dispatcher>
</filter-mapping>