【发布时间】:2014-10-27 13:43:10
【问题描述】:
我的控制器中有一个从某个地方调用的方法。据我所知,我的代码中没有任何东西在调用它,所以我添加了一个堆栈跟踪输出行,看看我是否能知道它是从哪里调用的。有了这个,方法如下所示:
def remediationSearch() {
println " "; println ">>>>>> remediationSearch() start at " + System.nanoTime()
new Exception("why are you calling me?!?!").printStackTrace()
def resultList
if (params.rerender) {
println "<><><> remediationsearch() called with rerender."
resultList = recordSearchService.individualSearch(session.oldIndRemedParams)
}
else {
params.selectedBatch = selectedBatch
session.oldIndRemedParams = params
resultList = recordSearchService.individualSearch(params)
println "<><><> remediationsearch() called fresh."
}
render(template: 'indivSearchResults', model: [resultList: resultList, resultCount: resultList?.size()])
println "<<<<<< remediationSearch() end at " + System.nanoTime(); println " ";
}
这是我似乎无法理解的堆栈跟踪的输出(部分是因为我是 Grails 的新手),因为我似乎没有在其中看到我的任何编码函数:
>>>>>> remediationSearch() start at 67861365037047
Error |
java.lang.Exception: why are you calling me?!?!
Error |
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
Error |
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessor
Impl.java:57)
Error |
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructor
AccessorImpl.java:45)
Error |
at java.lang.reflect.Constructor.newInstance(Constructor.java:526)
Error |
at org.springsource.loaded.ri.ReflectiveInterceptor.jlrConstructorNewInstance(Refl
ectiveInterceptor.java:986)
Error |
at org.codehaus.groovy.reflection.CachedConstructor.invoke(CachedConstructor.java:
77)
Error |
at org.codehaus.groovy.runtime.callsite.ConstructorSite$ConstructorSiteNoUnwrapNoC
oerce.callConstructor(ConstructorSite.java:102)
Error |
at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCallConstructor(CallS
iteArray.java:57)
Error |
at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callConstructor(AbstractC
allSite.java:182)
Error |
at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callConstructor(AbstractC
allSite.java:190)
Error |
at com.twc.fatcaone.CustomerController.remediationSearch(CustomerController.groovy
:264)
Error |
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
Error |
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
Error |
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.ja
va:43)
Error |
at java.lang.reflect.Method.invoke(Method.java:606)
Error |
at org.springsource.loaded.ri.ReflectiveInterceptor.jlrMethodInvoke(ReflectiveInte
rceptor.java:1254)
Error |
at org.codehaus.groovy.grails.web.servlet.mvc.MixedGrailsControllerHelper.invoke(M
ixedGrailsControllerHelper.java:154)
Error |
at org.codehaus.groovy.grails.web.servlet.mvc.AbstractGrailsControllerHelper.handl
eAction(AbstractGrailsControllerHelper.java:354)
Error |
at org.codehaus.groovy.grails.web.servlet.mvc.AbstractGrailsControllerHelper.execu
teAction(AbstractGrailsControllerHelper.java:231)
Error |
at org.codehaus.groovy.grails.web.servlet.mvc.AbstractGrailsControllerHelper.handl
eURI(AbstractGrailsControllerHelper.java:197)
Error |
at org.codehaus.groovy.grails.web.servlet.mvc.AbstractGrailsControllerHelper.handl
eURI(AbstractGrailsControllerHelper.java:121)
Error |
at org.codehaus.groovy.grails.web.servlet.mvc.SimpleGrailsController.handleRequest
(SimpleGrailsController.java:72)
Error |
at org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter.handle(Simpl
eControllerHandlerAdapter.java:48)
Error |
at org.codehaus.groovy.grails.web.servlet.GrailsDispatcherServlet.doDispatch(Grail
sDispatcherServlet.java:355)
Error |
at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.j
ava:856)
Error |
at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServle
t.java:953)
Error |
at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:8
55)
Error |
at javax.servlet.http.HttpServlet.service(HttpServlet.java:646)
Error |
at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:
829)
Error |
at javax.servlet.http.HttpServlet.service(HttpServlet.java:727)
Error |
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFil
terChain.java:303)
Error |
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain
.java:208)
Error |
at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
Error |
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFil
terChain.java:241)
Error |
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain
.java:208)
Error |
at grails.plugin.cache.web.filter.PageFragmentCachingFilter.doFilter(PageFragmentC
achingFilter.java:198)
Error |
at grails.plugin.cache.web.filter.AbstractFilter.doFilter(AbstractFilter.java:63)
Error |
at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingF
ilterProxy.java:343)
Error |
at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterP
roxy.java:260)
Error |
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFil
terChain.java:241)
Error |
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain
.java:208)
Error |
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilt
er.java:101)
Error |
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFil
terChain.java:241)
Error |
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain
.java:208)
Error |
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilt
er.java:101)
Error |
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFil
terChain.java:241)
Error |
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain
.java:208)
Error |
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilt
er.java:101)
Error |
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFil
terChain.java:241)
Error |
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain
.java:208)
Error |
at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.jav
a:748)
Error |
at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispat
cher.java:486)
Error |
at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.
java:411)
Error |
at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.ja
va:338)
Error |
at org.codehaus.groovy.grails.web.util.WebUtils.forwardRequestForUrlMappingInfo(We
bUtils.java:332)
Error |
at org.codehaus.groovy.grails.web.util.WebUtils.forwardRequestForUrlMappingInfo(We
bUtils.java:297)
Error |
at org.codehaus.groovy.grails.web.util.WebUtils.forwardRequestForUrlMappingInfo(We
bUtils.java:288)
Error |
at org.codehaus.groovy.grails.web.mapping.filter.UrlMappingsFilter.doFilterInterna
l(UrlMappingsFilter.java:217)
Error |
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilt
er.java:107)
Error |
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFil
terChain.java:241)
Error |
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain
.java:208)
Error |
at org.codehaus.groovy.grails.web.sitemesh.GrailsPageFilter.executeFilterChainWith
WrappedResponse(GrailsPageFilter.java:233)
Error |
at org.codehaus.groovy.grails.web.sitemesh.GrailsPageFilter.obtainContent(GrailsPa
geFilter.java:208)
Error |
at org.codehaus.groovy.grails.web.sitemesh.GrailsPageFilter.doFilter(GrailsPageFil
ter.java:153)
Error |
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFil
terChain.java:241)
Error |
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain
.java:208)
Error |
at javax.servlet.FilterChain$doFilter.call(Unknown Source)
Error |
at org.grails.plugin.resource.DevModeSanityFilter.doFilter(DevModeSanityFilter.gro
ovy:45)
Error |
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFil
terChain.java:241)
Error |
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain
.java:208)
Error |
at org.codehaus.groovy.grails.web.servlet.mvc.GrailsWebRequestFilter.doFilterInter
nal(GrailsWebRequestFilter.java:69)
Error |
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilt
er.java:107)
Error |
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFil
terChain.java:241)
Error |
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain
.java:208)
Error |
at org.codehaus.groovy.grails.web.filters.HiddenHttpMethodFilter.doFilterInternal(
HiddenHttpMethodFilter.java:67)
Error |
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilt
er.java:107)
Error |
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFil
terChain.java:241)
Error |
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain
.java:208)
Error |
at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(Charact
erEncodingFilter.java:88)
Error |
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilt
er.java:107)
Error |
at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingF
ilterProxy.java:343)
Error |
at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterP
roxy.java:260)
Error |
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFil
terChain.java:241)
Error |
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain
.java:208)
Error |
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:
220)
Error |
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:
122)
Error |
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:170)
Error |
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:98)
Error |
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:11
6)
Error |
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:408)
Error |
at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processo
r.java:1040)
Error |
at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractPr
otocol.java:607)
Error |
at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:315
)
Error |
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
Error |
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
Error |
at java.lang.Thread.run(Thread.java:745)
<><><> remediationsearch() called fresh.
<<<<<< remediationSearch() end at 67863898745818
`
【问题讨论】:
-
确实如此:
com.twc.fatcaone.CustomerController.remediationSearch(CustomerController.groovy :264)。休息一下,你看到的是层层的 Tomcat 容器调用和 Spring MVC 做的伎俩来达到DispatcherServlet。 -
@dmahapatro 您所指的框架是他所询问的方法,而不是调用他所询问的方法的方法。我不知道您所说的“确实如此”是什么意思。
-
问题:“Grails 2.3.8 Stacktrace 没有显示我的任何代码”答案:确实... @JeffScottBrown
-
我认为他的意思是调用相关方法(remediationSearch 方法)的不是他的代码。
-
@JeffScottBrown 您的假设是正确的。我仍然不知所措。
标签: grails