ninja-core/src/main/java/ninja/Result.java
@Deprecated
    public Result renderRaw(final String string) {
 
        Renderable renderable = new Renderable() {
 
            @Override
            public void render(Context context, Result result) {
                
                if (result.getContentType() == null) {
                    result.contentType(Result.TEXT_PLAIN);
                }
 
                ResponseStreams resultJsonCustom = context
                        .finalizeHeaders(result);
                
                try (Writer writer = resultJsonCustom.getWriter()) {
                
                    writer.write(string);
                    
                } catch (IOException ioException) {
                
                    logger.error(
                            "Error rendering raw String via renderRaw(...)", 
                            ioException);
                }
 
            }
        };
 
        render(renderable);
 
        return this;
        
    }
@Deprecated
    public Result renderRaw(final String string) {
 
        Renderable renderable = new Renderable() {
 
            @Override
            public void render(Context context, Result result) {
                
                if (result.getContentType() == null) {
                    result.contentType(Result.TEXT_PLAIN);
                }
 
                ResponseStreams resultJsonCustom = context
                        .finalizeHeaders(result);
                
                try (Writer writer = resultJsonCustom.getWriter()) {
                
                    writer.write(string);
                    
                } catch (IOException ioException) {
                
                    logger.error(
                            "Error rendering raw String via renderRaw(...)", 
                            ioException);
                }
 
            }
        };
 
        render(renderable);
 
        return this;
        
    }
@ Deprecated public Result renderRaw ( final String string ) { Renderable renderable = new Renderable ( ) { @ Override public void render ( Context context , Result result ) { if ( result . getContentType ( ) == null ) { result . contentType ( Result . TEXT_PLAIN ) ; } ResponseStreams resultJsonCustom = context . finalizeHeaders ( result ) ; try ( Writer writer = resultJsonCustom . getWriter ( ) ) { writer . write ( string ) ; } catch ( IOException ioException ) { logger . error ( "Error rendering raw String via renderRaw(...)" , ioException ) ; } } } ; render ( renderable ) ; return this ; }
This method directly renders the String to the output. It completely
bypasses any rendering engine.

Thus you can render anything you want.

Chaining of resultRaw().resultRaw()... is NOT supported. Mixing with
render() is NOT supported.

It is always recommended to implement your own RenderingEngine OR use
existing rendering engines.

Example: <code>
public Result controllerMethod() {
String customJson = "{\"user\" : \"john@woo.com\"}";

return Results.json().renderRaw(customJson);
}
</code>

@param string
The string to render.
@return A result that will render the string directly to the output
stream.
@deprecated => use text().render(string), html().render(string),
json().render(string), xml().render(string), or
contentType(type).render(string).
This method directly renders the String to the output . It completely bypasses any rendering engine .