StreamSource (Java Platform SE 8 ) (original) (raw)
- javax.xml.transform.stream.StreamSource
All Implemented Interfaces:
Source
public class StreamSource
extends Object
implements Source
Acts as an holder for a transformation Source in the form of a stream of XML markup.
Note: Due to their internal use of either a Reader or InputStream instance,StreamSource
instances may only be used once.
Field Summary
Fields
Modifier and Type Field Description static String FEATURE If TransformerFactory.getFeature(java.lang.String) returns true when passed this value as an argument, the Transformer supports Source input of this type. Constructor Summary
Constructors
Constructor Description StreamSource() Zero-argument default constructor. StreamSource(File f) Construct a StreamSource from a File. StreamSource(InputStream inputStream) Construct a StreamSource from a byte stream. StreamSource(InputStream inputStream,String systemId) Construct a StreamSource from a byte stream. StreamSource(Reader reader) Construct a StreamSource from a character reader. StreamSource(Reader reader,String systemId) Construct a StreamSource from a character reader. StreamSource(String systemId) Construct a StreamSource from a URL. Method Summary
All Methods Instance Methods Concrete Methods
Modifier and Type Method Description InputStream getInputStream() Get the byte stream that was set with setByteStream. String getPublicId() Get the public identifier that was set with setPublicId. Reader getReader() Get the character stream that was set with setReader. String getSystemId() Get the system identifier that was set with setSystemId. void setInputStream(InputStream inputStream) Set the byte stream to be used as input. void setPublicId(String publicId) Set the public identifier for this Source. void setReader(Reader reader) Set the input to be a character reader. void setSystemId(File f) Set the system ID from a File reference. void setSystemId(String systemId) Set the system identifier for this Source. * ### Methods inherited from class java.lang.[Object](../../../../java/lang/Object.html "class in java.lang") `[clone](../../../../java/lang/Object.html#clone--), [equals](../../../../java/lang/Object.html#equals-java.lang.Object-), [finalize](../../../../java/lang/Object.html#finalize--), [getClass](../../../../java/lang/Object.html#getClass--), [hashCode](../../../../java/lang/Object.html#hashCode--), [notify](../../../../java/lang/Object.html#notify--), [notifyAll](../../../../java/lang/Object.html#notifyAll--), [toString](../../../../java/lang/Object.html#toString--), [wait](../../../../java/lang/Object.html#wait--), [wait](../../../../java/lang/Object.html#wait-long-), [wait](../../../../java/lang/Object.html#wait-long-int-)`
Field Detail
* #### FEATURE public static final [String](../../../../java/lang/String.html "class in java.lang") FEATURE See Also: [Constant Field Values](../../../../constant-values.html#javax.xml.transform.stream.StreamSource.FEATURE)
Constructor Detail
* #### StreamSource public StreamSource() See Also: [Transformer.transform(Source xmlSource, Result outputTarget)](../../../../javax/xml/transform/Transformer.html#transform-javax.xml.transform.Source-javax.xml.transform.Result-) * #### StreamSource public StreamSource([InputStream](../../../../java/io/InputStream.html "class in java.io") inputStream) Construct a StreamSource from a byte stream. Normally, a stream should be used rather than a reader, so the XML parser can resolve character encoding specified by the XML declaration. If this constructor is used to process a stylesheet, normally setSystemId should also be called, so that relative URI references can be resolved. Parameters: `inputStream` \- A valid InputStream reference to an XML stream. * #### StreamSource public StreamSource([InputStream](../../../../java/io/InputStream.html "class in java.io") inputStream, [String](../../../../java/lang/String.html "class in java.lang") systemId) Construct a StreamSource from a byte stream. Normally, a stream should be used rather than a reader, so that the XML parser can resolve character encoding specified by the XML declaration. This constructor allows the systemID to be set in addition to the input stream, which allows relative URIs to be processed. Parameters: `inputStream` \- A valid InputStream reference to an XML stream. `systemId` \- Must be a String that conforms to the URI syntax. * #### StreamSource public StreamSource([Reader](../../../../java/io/Reader.html "class in java.io") reader) Construct a StreamSource from a character reader. Normally, a stream should be used rather than a reader, so that the XML parser can resolve character encoding specified by the XML declaration. However, in many cases the encoding of the input stream is already resolved, as in the case of reading XML from a StringReader. Parameters: `reader` \- A valid Reader reference to an XML character stream. * #### StreamSource public StreamSource([Reader](../../../../java/io/Reader.html "class in java.io") reader, [String](../../../../java/lang/String.html "class in java.lang") systemId) Construct a StreamSource from a character reader. Normally, a stream should be used rather than a reader, so that the XML parser may resolve character encoding specified by the XML declaration. However, in many cases the encoding of the input stream is already resolved, as in the case of reading XML from a StringReader. Parameters: `reader` \- A valid Reader reference to an XML character stream. `systemId` \- Must be a String that conforms to the URI syntax. * #### StreamSource public StreamSource([String](../../../../java/lang/String.html "class in java.lang") systemId) Construct a StreamSource from a URL. Parameters: `systemId` \- Must be a String that conforms to the URI syntax. * #### StreamSource public StreamSource([File](../../../../java/io/File.html "class in java.io") f) Construct a StreamSource from a File. Parameters: `f` \- Must a non-null File reference.
Method Detail
* #### setInputStream public void setInputStream([InputStream](../../../../java/io/InputStream.html "class in java.io") inputStream) Set the byte stream to be used as input. Normally, a stream should be used rather than a reader, so that the XML parser can resolve character encoding specified by the XML declaration. If this Source object is used to process a stylesheet, normally setSystemId should also be called, so that relative URL references can be resolved. Parameters: `inputStream` \- A valid InputStream reference to an XML stream. * #### getInputStream public [InputStream](../../../../java/io/InputStream.html "class in java.io") getInputStream() Get the byte stream that was set with setByteStream. Returns: The byte stream that was set with setByteStream, or null if setByteStream or the ByteStream constructor was not called. * #### setReader public void setReader([Reader](../../../../java/io/Reader.html "class in java.io") reader) Set the input to be a character reader. Normally, a stream should be used rather than a reader, so that the XML parser can resolve character encoding specified by the XML declaration. However, in many cases the encoding of the input stream is already resolved, as in the case of reading XML from a StringReader. Parameters: `reader` \- A valid Reader reference to an XML CharacterStream. * #### getReader public [Reader](../../../../java/io/Reader.html "class in java.io") getReader() Get the character stream that was set with setReader. Returns: The character stream that was set with setReader, or null if setReader or the Reader constructor was not called. * #### setPublicId public void setPublicId([String](../../../../java/lang/String.html "class in java.lang") publicId) Set the public identifier for this Source. The public identifier is always optional: if the application writer includes one, it will be provided as part of the location information. Parameters: `publicId` \- The public identifier as a string. * #### getPublicId public [String](../../../../java/lang/String.html "class in java.lang") getPublicId() Get the public identifier that was set with setPublicId. Returns: The public identifier that was set with setPublicId, or null if setPublicId was not called. * #### setSystemId public void setSystemId([String](../../../../java/lang/String.html "class in java.lang") systemId) Set the system identifier for this Source. The system identifier is optional if there is a byte stream or a character stream, but it is still useful to provide one, since the application can use it to resolve relative URIs and can include it in error messages and warnings (the parser will attempt to open a connection to the URI only if there is no byte stream or character stream specified). Specified by: `[setSystemId](../../../../javax/xml/transform/Source.html#setSystemId-java.lang.String-)` in interface `[Source](../../../../javax/xml/transform/Source.html "interface in javax.xml.transform")` Parameters: `systemId` \- The system identifier as a URL string. * #### getSystemId public [String](../../../../java/lang/String.html "class in java.lang") getSystemId() Get the system identifier that was set with setSystemId. Specified by: `[getSystemId](../../../../javax/xml/transform/Source.html#getSystemId--)` in interface `[Source](../../../../javax/xml/transform/Source.html "interface in javax.xml.transform")` Returns: The system identifier that was set with setSystemId, or null if setSystemId was not called. * #### setSystemId public void setSystemId([File](../../../../java/io/File.html "class in java.io") f) Set the system ID from a File reference. Parameters: `f` \- Must a non-null File reference.
Submit a bug or feature
For further API reference and developer documentation, see Java SE Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.
Copyright © 1993, 2025, Oracle and/or its affiliates. All rights reserved. Use is subject to license terms. Also see the documentation redistribution policy.