Grails应用程序正在WebSphere6.1上运行NPE

Grails应用程序正在WebSphere6.1上运行NPE,grails,grails-plugin,websphere-6.1,Grails,Grails Plugin,Websphere 6.1,我已经将Grails1.3.7应用程序部署到WebSphere6.1.0.25。应用程序抛出NPE ERROR webapp.WebApp - [Servlet Error]-[Filter [DeclaredResourcesPluginFilter]: filter is unavailable.]: java.lang.NullPointerException 而且它不显示图像。他们似乎有关联,但不确定 可能相关的事情: 1-这些是我正在使用的一些相关插件 runtime ":

我已经将Grails1.3.7应用程序部署到WebSphere6.1.0.25。应用程序抛出NPE

ERROR webapp.WebApp  - [Servlet Error]-[Filter [DeclaredResourcesPluginFilter]: filter is unavailable.]: java.lang.NullPointerException
而且它不显示图像。他们似乎有关联,但不确定

可能相关的事情:

1-这些是我正在使用的一些相关插件

    runtime ":resources:1.1.6"
    runtime ":zipped-resources:1.0"
    runtime ":cached-resources:1.0"
    compile ":cache-headers:1.1.5"
    compile ":lesscss-resources:1.3.0"
2-我已根据 意思是我已经设定了 “通用JVM参数”到“-Xverify:none”和

com.ibm.ws.classloader.getInputStream.enableIOException值:true和

com.ibm.ws.webcontainer.invokeFiltersCompatibility值:true

对于如何调试此问题的任何建议,我都表示感谢

此处:是完整的堆栈跟踪:

[WebContainer : 0] ERROR webapp.WebApp  - [Servlet Error]-[Filter [DeclaredResourcesPluginFilter]: filter is unavailable.]: java.lang.NullPointerException
    at com.ibm.ws.webcontainer.srt.SRTServletResponse.setContentType(SRTServletResponse.java:1141)
    at sun.reflect.GeneratedMethodAccessor635.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:618)
    at org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:90)
    at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:233)
    at groovy.lang.MetaClassImpl.setProperty(MetaClassImpl.java:2395)
    at groovy.lang.ExpandoMetaClass.setProperty(ExpandoMetaClass.java:1129)
    at groovy.lang.MetaClassImpl.setProperty(MetaClassImpl.java:3315)
    at org.codehaus.groovy.runtime.InvokerHelper.setProperty(InvokerHelper.java:183)
    at org.codehaus.groovy.runtime.ScriptBytecodeAdapter.setProperty(ScriptBytecodeAdapter.java:483)
    at org.grails.plugin.resource.ResourceProcessor.processModernResource(ResourceProcessor.groovy:293)
    at org.grails.plugin.resource.ResourceProcessor$processModernResource.call(Unknown Source)
    at org.grails.plugin.resource.ProcessingFilter.doFilter(ProcessingFilter.groovy:39)
    at com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:190)
    at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:130)
    at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:88)
    at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76)
    at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:237)
    at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:167)
    at com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:190)
    at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:130)
    at com.ibm.ws.webcontainer.filter.WebAppFilterChain._doFilter(WebAppFilterChain.java:87)
    at com.ibm.ws.webcontainer.filter.WebAppFilterManager.doFilter(WebAppFilterManager.java:837)
    at com.ibm.ws.webcontainer.filter.WebAppFilterManager.invokeFilters(WebAppFilterManager.java:747)
    at com.ibm.ws.webcontainer.filter.WebAppFilterManager.invokeFilters(WebAppFilterManager.java:700)
    at com.ibm.ws.wswebcontainer.filter.WebAppFilterManager.invokeFilters(WebAppFilterManager.java:115)
    at com.ibm.ws.webcontainer.extension.DefaultExtensionProcessor.invokeFilters(DefaultExtensionProcessor.java:849)
    at com.ibm.ws.webcontainer.extension.DefaultExtensionProcessor.handleRequest(DefaultExtensionProcessor.java:785)
    at com.ibm.ws.wswebcontainer.extension.DefaultExtensionProcessor.handleRequest(DefaultExtensionProcessor.java:113)
    at com.ibm.ws.webcontainer.webapp.WebApp.handleRequest(WebApp.java:3507)
    at com.ibm.ws.webcontainer.webapp.WebGroup.handleRequest(WebGroup.java:269)
    at com.ibm.ws.webcontainer.WebContainer.handleRequest(WebContainer.java:815)
    at com.ibm.ws.wswebcontainer.WebContainer.handleRequest(WebContainer.java:1466)
    at com.ibm.ws.webcontainer.channel.WCChannelLink.ready(WCChannelLink.java:122)
    at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleDiscrimination(HttpInboundLink.java:458)
    at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleNewInformation(HttpInboundLink.java:387)
    at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.ready(HttpInboundLink.java:267)
    at com.ibm.ws.tcp.channel.impl.NewConnectionInitialReadCallback.sendToDiscriminators(NewConnectionInitialReadCallback.java:214)
    at com.ibm.ws.tcp.channel.impl.NewConnectionInitialReadCallback.complete(NewConnectionInitialReadCallback.java:113)
    at com.ibm.ws.tcp.channel.impl.AioReadCompletionListener.futureCompleted(AioReadCompletionListener.java:165)
    at com.ibm.io.async.AbstractAsyncFuture.invokeCallback(AbstractAsyncFuture.java:217)
    at com.ibm.io.async.AsyncChannelFuture$1.run(AsyncChannelFuture.java:205)
    at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:1497)
我为资源插件添加了这个JIRA
这是7.x及以下版本的WAS环境的一个问题

当静态资源的MIME类型未在WAS中设置时,通常会出现此异常(
default\u host
),因此您不会看到图像。如果要查找视图中缺少的.jpg或.png图像,则必须在服务器中添加相应的MIME类型<代码>WAS管理->环境->虚拟主机->默认主机->MIME类型


这个问题在WebSphere7.x中也是持久存在的。

我创建了一个示例应用程序,刚刚添加了Resources插件,它开始抛出相同的异常。所以在这个时候,我假设是来自资源插件的某些东西导致了它。你知道怎么解决吗?你能不使用资源插件吗?我会把它作为一个bug提交到参考资料插件Folks中,我希望我不能使用它,但正如你们所知,很多其他插件都依赖于参考资料插件。我会研究多一点,然后提交一份jira。ThanksI将查看资源过滤器中是否有调试日志记录。@chrislovecnm根据您的指示,我打开了资源插件上的调试标志,它工作了。这个问题似乎与WAS6和Grails1.3.x的不兼容性有关。最终我们转到Grails 2和WAS 8,到目前为止一切都很平静,谢谢。感谢您的回复,我认为您的回复是正确和合理的,我们有WAS 6,特别是版本:6.1.0.25有这个问题当时WAS的更高版本有一个补丁,但我们决定升级到WAS 8,所以我无法证实你的答案,但它似乎很合理。非常感谢你