public final class JRLoader
extends java.lang.Object
Many JasperReports processes, like report compilation, report filling and exporting, often work with serialized objects. Sometimes it is useful to manually load those serialized objects before submitting them to the desired JasperReport process.
The most interesting method exposed by this class is
loadObjectFromLocation(String). When calling this method to load an object from
the supplied location, the program first tries to interpret the location as a valid URL. If
this fails, then the program assumes that the supplied location is the name of a file on
disk and tries to read from it. If no file is found at that location, it will try to locate a
resource through the classpath that would correspond to the location. Only after this third
try fails an exception is thrown.
| Modifier and Type | Method and Description |
|---|---|
protected static void |
collectResources(java.lang.String resourceName,
java.lang.ClassLoader classLoader,
java.util.Map<java.net.URL,ClassLoaderResource> resources) |
protected static void |
collectResources(java.lang.String resourceName,
java.lang.ClassLoader classLoader,
java.util.Set<java.net.URL> resources) |
static java.util.List<ClassLoaderResource> |
getClassLoaderResources(java.lang.String resource)
Scans the context classloader and the classloader of this class for all
resources that have a specified name, and returns a list of
ClassLoaderResource objects for the found resources. |
static java.io.InputStream |
getFileInputStream(java.lang.String filename)
Tries to open a file for reading.
|
static java.io.InputStream |
getInputStream(java.io.File file) |
static java.io.InputStream |
getInputStream(java.net.URL url) |
static java.io.InputStream |
getLocationInputStream(java.lang.String location)
Tries to open an input stream for a location.
|
static java.net.URL |
getResource(java.lang.String resource)
Returns the resource URL for a specified resource name.
|
static java.io.InputStream |
getResourceInputStream(java.lang.String resource)
Tries to open an input stream for a resource.
|
static java.util.List<java.net.URL> |
getResources(java.lang.String resource)
Scans the context classloader and the classloader of this class for all
resources that have a specified name, and returns a list of
URLs for the found resources. |
static java.io.InputStream |
getURLInputStream(java.lang.String spec)
Tries to open an input stream for an URL.
|
static byte[] |
loadBytes(java.io.File file) |
static byte[] |
loadBytes(java.io.InputStream is) |
static byte[] |
loadBytes(java.net.URL url) |
static byte[] |
loadBytesFromResource(java.lang.String resourceName) |
static byte[] |
loadBytesFromResource(java.lang.String resourceName,
java.lang.ClassLoader classLoader) |
static JasperPrint |
loadJasperPrint(java.io.File file,
JRVirtualizer virtualizer)
Loads a JasperPrint object from a file, optionally using a virtualizer for
the object.
|
static JasperPrint |
loadJasperPrint(java.io.InputStream is,
JRVirtualizer virtualizer)
Loads a JasperPrint object from a stream, optionally using a virtualizer for
the object.
|
static JasperPrint |
loadJasperPrint(java.net.URL url,
JRVirtualizer virtualizer)
Loads a JasperPrint object from a URL, optionally using a virtualizer for
the object.
|
static JasperPrint |
loadJasperPrintFromFile(java.lang.String fileName,
JRVirtualizer virtualizer)
Loads a JasperPrint object from a file, optionally using a virtualizer for
the object.
|
static java.lang.Object |
loadObject(java.io.File file) |
static java.lang.Object |
loadObject(java.io.InputStream is) |
static java.lang.Object |
loadObject(JasperReportsContext jasperReportsContext,
java.io.File file) |
static java.lang.Object |
loadObject(JasperReportsContext jasperReportsContext,
java.io.InputStream is) |
static java.lang.Object |
loadObject(JasperReportsContext jasperReportsContext,
java.net.URL url) |
static java.lang.Object |
loadObject(java.net.URL url) |
static java.lang.Object |
loadObjectFromFile(java.lang.String fileName) |
static java.io.InputStream |
loadToMemoryInputStream(java.io.InputStream is) |
public static java.lang.Object loadObjectFromFile(java.lang.String fileName)
throws JRException
JRExceptionpublic static java.lang.Object loadObject(java.io.File file)
throws JRException
JRExceptionpublic static java.lang.Object loadObject(JasperReportsContext jasperReportsContext, java.io.File file) throws JRException
JRExceptionpublic static java.lang.Object loadObject(java.net.URL url)
throws JRException
JRExceptionpublic static java.lang.Object loadObject(JasperReportsContext jasperReportsContext, java.net.URL url) throws JRException
JRExceptionpublic static java.lang.Object loadObject(java.io.InputStream is)
throws JRException
JRExceptionpublic static java.lang.Object loadObject(JasperReportsContext jasperReportsContext, java.io.InputStream is) throws JRException
JRExceptionpublic static java.io.InputStream getInputStream(java.io.File file)
throws JRException
JRExceptionpublic static java.io.InputStream getInputStream(java.net.URL url)
throws JRException
JRExceptionpublic static byte[] loadBytes(java.io.File file)
throws JRException
JRExceptionpublic static byte[] loadBytes(java.net.URL url)
throws JRException
JRExceptionpublic static byte[] loadBytes(java.io.InputStream is)
throws JRException
JRExceptionpublic static java.io.InputStream loadToMemoryInputStream(java.io.InputStream is)
throws JRException
JRExceptionpublic static byte[] loadBytesFromResource(java.lang.String resourceName)
throws JRException
JRExceptionpublic static byte[] loadBytesFromResource(java.lang.String resourceName,
java.lang.ClassLoader classLoader)
throws JRException
JRExceptionpublic static java.io.InputStream getLocationInputStream(java.lang.String location)
throws JRException
The method tries to interpret the location as a file name, a resource name or an URL. If any of these succeed, an input stream is created and returned.
location - the locationnull otherwise.JRExceptionpublic static java.io.InputStream getFileInputStream(java.lang.String filename)
throws JRException
filename - the file namenull if the file was not foundJRExceptionpublic static java.io.InputStream getResourceInputStream(java.lang.String resource)
resource - the resource namenull if the resource was not foundpublic static java.util.List<java.net.URL> getResources(java.lang.String resource)
URLs for the found resources.resource - the resource namesURLs of resources with the specified name;
the list is empty if no resources have been found for the nameClassLoader.getResources(String)protected static void collectResources(java.lang.String resourceName,
java.lang.ClassLoader classLoader,
java.util.Set<java.net.URL> resources)
public static java.util.List<ClassLoaderResource> getClassLoaderResources(java.lang.String resource)
ClassLoaderResource objects for the found resources.
The returned list contains the URLs of the resources, and for each resource the highest classloader in the classloader hierarchy on which the resource was found.
resource - the resource namesClassLoader.getResources(String)protected static void collectResources(java.lang.String resourceName,
java.lang.ClassLoader classLoader,
java.util.Map<java.net.URL,ClassLoaderResource> resources)
public static java.net.URL getResource(java.lang.String resource)
resource - the resource namenull if none foundClassLoader.getResource(String)public static java.io.InputStream getURLInputStream(java.lang.String spec)
throws JRException
spec - the string to parse as an URLspec is not a valid URLJRExceptionpublic static JasperPrint loadJasperPrintFromFile(java.lang.String fileName, JRVirtualizer virtualizer) throws JRException
fileName - the file namevirtualizer - the virtualizerJRExceptionJRVirtualizationHelper.setThreadVirtualizer(JRVirtualizer)public static JasperPrint loadJasperPrint(java.io.File file, JRVirtualizer virtualizer) throws JRException
file - the filevirtualizer - the virtualizerJRExceptionJRVirtualizationHelper.setThreadVirtualizer(JRVirtualizer)public static JasperPrint loadJasperPrint(java.net.URL url, JRVirtualizer virtualizer) throws JRException
url - the URLvirtualizer - the virtualizerJRExceptionJRVirtualizationHelper.setThreadVirtualizer(JRVirtualizer)public static JasperPrint loadJasperPrint(java.io.InputStream is, JRVirtualizer virtualizer) throws JRException
is - the streamvirtualizer - the virtualizerJRExceptionJRVirtualizationHelper.setThreadVirtualizer(JRVirtualizer)© 2001-2010 Jaspersoft Corporation www.jaspersoft.com