Я использую Grails 1.2.1.У меня есть этот метод в моем контроллере…
class SocialMediaCacheProxyController {
def index = {
def url = params.url
if (params.dumpAll != null) {
transportCacheService.processCacheDump(request.getRemoteAddr(), response)
} else if (url != null) {
doCacheTransport(request, response)
} // if
}
Проблема в том, что оба пути выполнения записывают содержимое в ответ.Тем не менее, я думаю, что Grails пытается отобразить страницу в конце метода index, потому что я неоднократно получаю следующую ошибку после вызова этого метода ...
1339754 [http-8080-4] ERROR org.apache.catalina.core.ContainerBase.[Tomcat].[localhost].[/socialmediaproxy].[default] - Servlet.service() for servlet default threw exception
java.lang.IllegalStateException: response.getWriter() called after response.getOutputStream()
at org.codehaus.groovy.grails.web.sitemesh.GrailsPageResponseWrapper$GrailsBuffer.getWriter(GrailsPageResponseWrapper.java:284)
at org.codehaus.groovy.grails.web.sitemesh.GrailsPageResponseWrapper$3.activateDestination(GrailsPageResponseWrapper.java:125)
Любые идеи, как заставить Grails остановить рендерингчто-нибудь после того, как мой метод завершен?Спасибо, Дэйв