public class HtmlResponseWriter
extends javax.faces.context.ResponseWriter
HtmlResponseWriter is an Html specific implementation
of the ResponseWriter
abstract class.
Kudos to Adam Winer (Oracle) for much of this code.
Constructor and Description |
---|
HtmlResponseWriter(java.io.Writer writer,
java.lang.String contentType,
java.lang.String encoding)
Constructor sets the
ResponseWriter and
encoding, and enables script hiding by default. |
HtmlResponseWriter(java.io.Writer writer,
java.lang.String contentType,
java.lang.String encoding,
java.lang.Boolean isScriptHidingEnabled)
Constructor sets the
ResponseWriter and
encoding. |
Modifier and Type | Method and Description |
---|---|
javax.faces.context.ResponseWriter |
cloneWithWriter(java.io.Writer writer)
Create a new instance of this
ResponseWriter using
a different Writer . |
void |
close()
Methods From
java.io.Writer |
void |
endDocument()
Output the text for the end of a document.
|
void |
endElement(java.lang.String name)
Write the end of an element.
|
void |
flush()
Flush any buffered output to the contained writer.
|
java.lang.String |
getCharacterEncoding() |
java.lang.String |
getContentType() |
void |
startDocument()
Write the text that should begin a response.
|
void |
startElement(java.lang.String name,
javax.faces.component.UIComponent componentForElement)
Write the start of an element, up to and including the
element name.
|
void |
write(char[] cbuf) |
void |
write(char[] cbuf,
int off,
int len) |
void |
write(int c) |
void |
write(java.lang.String str) |
void |
write(java.lang.String str,
int off,
int len) |
void |
writeAttribute(java.lang.String name,
java.lang.Object value,
java.lang.String componentPropertyName)
Write a properly escaped attribute name and the corresponding
value.
|
void |
writeComment(java.lang.Object comment)
Write a comment string containing the specified text.
|
void |
writeText(char text)
Write a properly escaped single character, If there
is an open element that has been created by a call to
startElement() , that element will be closed first. |
void |
writeText(char[] text)
Write properly escaped text from a character array.
|
void |
writeText(char[] text,
int off,
int len)
Write properly escaped text from a character array.
|
void |
writeText(java.lang.Object text,
java.lang.String componentPropertyName)
Write a properly escaped object.
|
void |
writeURIAttribute(java.lang.String name,
java.lang.Object value,
java.lang.String componentPropertyName)
Write a properly encoded URI attribute name and the corresponding
value.
|
public HtmlResponseWriter(java.io.Writer writer, java.lang.String contentType, java.lang.String encoding) throws javax.faces.FacesException
ResponseWriter
and
encoding, and enables script hiding by default.writer
- the ResponseWriter
contentType
- the content type.encoding
- the character encoding.javax.faces.FacesException
- the encoding is not recognized.public HtmlResponseWriter(java.io.Writer writer, java.lang.String contentType, java.lang.String encoding, java.lang.Boolean isScriptHidingEnabled) throws javax.faces.FacesException
ResponseWriter
and
encoding.writer
- the ResponseWriter
contentType
- the content type.encoding
- the character encoding.isScriptHidingEnabled
- true
if the writer
should attempt to hide JS from older browsersjavax.faces.FacesException
- the encoding is not recognized.public void close() throws java.io.IOException
java.io.Writer
close
in interface java.io.Closeable
close
in interface java.lang.AutoCloseable
close
in class java.io.Writer
java.io.IOException
public void flush() throws java.io.IOException
flush
in interface java.io.Flushable
flush
in class javax.faces.context.ResponseWriter
java.io.IOException
- if an input/output error occurs.public java.lang.String getContentType()
getContentType
in class javax.faces.context.ResponseWriter
public javax.faces.context.ResponseWriter cloneWithWriter(java.io.Writer writer)
Create a new instance of this ResponseWriter
using
a different Writer
.
cloneWithWriter
in class javax.faces.context.ResponseWriter
writer
- The Writer
that will be used to create
another ResponseWriter
.public void endDocument() throws java.io.IOException
endDocument
in class javax.faces.context.ResponseWriter
java.io.IOException
public void endElement(java.lang.String name) throws java.io.IOException
Write the end of an element. This method will first
close any open element created by a call to
startElement()
.
endElement
in class javax.faces.context.ResponseWriter
name
- Name of the element to be endedjava.io.IOException
- if an input/output error occursjava.lang.NullPointerException
- if name
is null
public java.lang.String getCharacterEncoding()
getCharacterEncoding
in class javax.faces.context.ResponseWriter
public void startDocument() throws java.io.IOException
Write the text that should begin a response.
startDocument
in class javax.faces.context.ResponseWriter
java.io.IOException
- if an input/output error occurspublic void startElement(java.lang.String name, javax.faces.component.UIComponent componentForElement) throws java.io.IOException
Write the start of an element, up to and including the
element name. Clients call writeAttribute()
or
writeURIAttribute()
methods to add attributes after
calling this method.
startElement
in class javax.faces.context.ResponseWriter
name
- Name of the starting elementcomponentForElement
- The UIComponent instance that applies to this
element. This argument may be null
.java.io.IOException
- if an input/output error occursjava.lang.NullPointerException
- if name
is null
public void write(char[] cbuf) throws java.io.IOException
write
in class java.io.Writer
java.io.IOException
public void write(int c) throws java.io.IOException
write
in class java.io.Writer
java.io.IOException
public void write(java.lang.String str) throws java.io.IOException
write
in class java.io.Writer
java.io.IOException
public void write(char[] cbuf, int off, int len) throws java.io.IOException
write
in class java.io.Writer
java.io.IOException
public void write(java.lang.String str, int off, int len) throws java.io.IOException
write
in class java.io.Writer
java.io.IOException
public void writeAttribute(java.lang.String name, java.lang.Object value, java.lang.String componentPropertyName) throws java.io.IOException
Write a properly escaped attribute name and the corresponding
value. The value text will be converted to a String if
necessary. This method may only be called after a call to
startElement()
, and before the opened element has been
closed.
writeAttribute
in class javax.faces.context.ResponseWriter
name
- Attribute name to be addedvalue
- Attribute value to be addedcomponentPropertyName
- The name of the component property to
which this attribute argument applies. This argument may be
null
.java.lang.IllegalStateException
- if this method is called when there
is no currently open elementjava.io.IOException
- if an input/output error occursjava.lang.NullPointerException
- if name
is null
public void writeComment(java.lang.Object comment) throws java.io.IOException
Write a comment string containing the specified text.
The text will be converted to a String if necessary.
If there is an open element that has been created by a call
to startElement()
, that element will be closed
first.
writeComment
in class javax.faces.context.ResponseWriter
comment
- Text content of the commentjava.io.IOException
- if an input/output error occursjava.lang.NullPointerException
- if comment
is null
public void writeText(char text) throws java.io.IOException
Write a properly escaped single character, If there
is an open element that has been created by a call to
startElement()
, that element will be closed first.
All angle bracket occurrences in the argument must be escaped using the > < syntax.
text
- Text to be writtenjava.io.IOException
- if an input/output error occurspublic void writeText(char[] text) throws java.io.IOException
Write properly escaped text from a character array.
The output from this command is identical to the invocation:
writeText(c, 0, c.length)
.
If there is an open element that has been created by a call to
startElement()
, that element will be closed first.
All angle bracket occurrences in the argument must be escaped using the > < syntax.
text
- Text to be writtenjava.io.IOException
- if an input/output error occursjava.lang.NullPointerException
- if text
is null
public void writeText(java.lang.Object text, java.lang.String componentPropertyName) throws java.io.IOException
Write a properly escaped object. The object will be converted
to a String if necessary. If there is an open element
that has been created by a call to startElement()
,
that element will be closed first.
writeText
in class javax.faces.context.ResponseWriter
text
- Text to be writtencomponentPropertyName
- The name of the component property to
which this text argument applies. This argument may be null
.java.io.IOException
- if an input/output error occursjava.lang.NullPointerException
- if text
is null
public void writeText(char[] text, int off, int len) throws java.io.IOException
Write properly escaped text from a character array.
If there is an open element that has been created by a call
to startElement()
, that element will be closed
first.
All angle bracket occurrences in the argument must be escaped using the > < syntax.
writeText
in class javax.faces.context.ResponseWriter
text
- Text to be writtenoff
- Starting offset (zero-relative)len
- Number of characters to be writtenjava.lang.IndexOutOfBoundsException
- if the calculated starting or
ending position is outside the bounds of the character arrayjava.io.IOException
- if an input/output error occursjava.lang.NullPointerException
- if text
is null
public void writeURIAttribute(java.lang.String name, java.lang.Object value, java.lang.String componentPropertyName) throws java.io.IOException
Write a properly encoded URI attribute name and the corresponding
value. The value text will be converted to a String if necessary).
This method may only be called after a call to
startElement()
, and before the opened element has been
closed.
writeURIAttribute
in class javax.faces.context.ResponseWriter
name
- Attribute name to be addedvalue
- Attribute value to be addedcomponentPropertyName
- The name of the component property to
which this attribute argument applies. This argument may be
null
.java.lang.IllegalStateException
- if this method is called when there
is no currently open elementjava.io.IOException
- if an input/output error occursjava.lang.NullPointerException
- if name
or
value
is null
Copyright ? 2002-2006 Sun Microsystems, Inc. All Rights Reserved.