具有 spring-security 的 Grails 应用程序在 WAS7 上导致 500 过滤器错误
我已经使用相同的 WebSphere 配置部署了此应用程序的早期版本,但我使用的是 grails 1.3.7,没有资源或 webxml 插件。
我能够部署到 Tomcat,但是当我将相同的战争部署到 WebSphere 时,当我尝试访问该应用程序时,出现以下错误:
Error 500: No thread-bound request found: Are you referring to request attributes outside of an actual web request, or processing a request outside of the originally receiving thread? If you are actually operating within a web request and still receive this message, your code is probably running outside of DispatcherServlet/DispatcherPortlet: In this case, use RequestContextListener or RequestContextFilter to expose the current request.
Exception Message: No thread-bound request found: Are you referring to request attributes outside of an actual web request, or processing a request outside of the originally receiving thread? If you are actually operating within a web request and still receive this message, your code is probably running outside of DispatcherServlet/DispatcherPortlet: In this case, use RequestContextListener or RequestContextFilter to expose the current request.
Caused by: Filter [springSecurityFilterChain]: filter is unavailable.
Grails 版本:2.0.0 常规版本:1.8.4 JVM 版本:1.6.0_29
安装的插件 核心 - 2.0.0 资源 - 1.1.6 webxml - 1.4.1 servlet - 2.0.0 springSecurityCore - 1.2.7 springSecurityLdap - 1.0.5
我已将 webcontainer 上的 invokeFiltersCompatibility 自定义属性设置为 true。
I have had an earlier version of this app deployed with the same WebSphere configuration but I was on grails 1.3.7 with out the resources or webxml plugins.
I am able to deploy to Tomcat but when I deploy the same war to WebSphere I am getting the following error when I try to access the app:
Error 500: No thread-bound request found: Are you referring to request attributes outside of an actual web request, or processing a request outside of the originally receiving thread? If you are actually operating within a web request and still receive this message, your code is probably running outside of DispatcherServlet/DispatcherPortlet: In this case, use RequestContextListener or RequestContextFilter to expose the current request.
Exception Message: No thread-bound request found: Are you referring to request attributes outside of an actual web request, or processing a request outside of the originally receiving thread? If you are actually operating within a web request and still receive this message, your code is probably running outside of DispatcherServlet/DispatcherPortlet: In this case, use RequestContextListener or RequestContextFilter to expose the current request.
Caused by: Filter [springSecurityFilterChain]: filter is unavailable.
Grails version: 2.0.0
Groovy version: 1.8.4
JVM version: 1.6.0_29
INSTALLED PLUGINS
core - 2.0.0
resources - 1.1.6
webxml - 1.4.1
servlets - 2.0.0
springSecurityCore - 1.2.7
springSecurityLdap - 1.0.5
I have set the invokeFiltersCompatibility custom property on the webcontainer to true.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
如果您在 web.xml 中使用属性:metadata-complete="true",Websphere 将保留您的 web.xml。为了编辑 web.xml,您必须使用 grails“install-templates”命令来获取 web.xml 文件的工作副本。
另请参阅:
http://www.experts-exchange.com/Software /Server_Software/Application_Servers/Java/IBM_Websphere/Q_26625087.html
If you use the attribute: metadata-complete="true" in your web.xml, Websphere will leave your web.xml alone. In order to to edit your web.xml, you have to use the grails "install-templates" command to get a working copy of your web.xml file.
Also see:
http://www.experts-exchange.com/Software/Server_Software/Application_Servers/Java/IBM_Websphere/Q_26625087.html