Change the Output Stream

It looks like there is suppose to be a way, but for the life of me I could not get it to freaking work.
Based on the documentation here, we should be able to do something like the following:

<cfscript>
    strwrt = createObject('java', 'java.io.StringWriter').init();
    ctx = getPageContext();
    body = ctx.pushBody(strwrt);  
          // output should now be written to the writer we provided and it's output stream
    writeOutput('Test');
    ctx.popBody();   
          // output should not go back to the previous output stream
</cfscript>

However it would never go to the writer I provided. I played around with a bunch of different variations of the above with no success.
You can use the underlying page context to capture the output data, but basically you’re just replicating cfsavecontent, as it just saves it to a variable in memory, which is okay, provided you don’t need scalability.