Я использую 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 пытается отобразить страницу в конце метода индекса, потому что я неоднократно получаю следующую ошибку после вызова этого метода...
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 прекратить рендеринг всего после моего метода? Спасибо, - Дэйв