That's true but it does not prevent you to write directly in the response if you want.
Something like:
## Get the response buffer/stream #set($out = $response.outputStream())
## Write some content to the response buffer $out.print("some content")
## Make sure everything is sent $out.flush()
## Indicate XWiki that you already sent the answer $xcontext.setFinished(true)
Hey, we're getting closer! How does this play with the velocity execution? Would its output be discarded then? I've tried this: $response.setContentType("text/plain")## #set($out = $response.outputStream())## ## Write some content to the response buffer $out.println("some content")## $out.println("some content")## $out.println("some content")## $out.println("some content")## $out.println("some content")## $out.println("some content")## $out.println("some content")## $out.println("some content")## $out.println("some content")## $out.println("some content") ## Make sure everything is sent $out.flush()## ## Indicate XWiki that you already sent the answer $xcontext.setFinished(true)## and had only blank pages/ Paul