## org.springframework.web.servlet.view.jasperreports
Class ConfigurableJasperReportsView

    java.lang.Object
      org.springframework.context.support.ApplicationObjectSupport
          org.springframework.web.context.support.WebApplicationObjectSupport
              org.springframework.web.servlet.view.AbstractView
                  org.springframework.web.servlet.view.AbstractUrlBasedView
                      org.springframework.web.servlet.view.jasperreports.AbstractJasperReportsView
                          org.springframework.web.servlet.view.jasperreports.AbstractJasperReportsSingleFormatView
                              org.springframework.web.servlet.view.jasperreports.ConfigurableJasperReportsView

All Implemented Interfaces:
  BeanNameAware, InitializingBean, ApplicationContextAware, ServletContextAware, View

    public class ConfigurableJasperReportsView

extends AbstractJasperReportsSingleFormatView

Configurable JasperReports View, allowing to specify the JasperReports exporter to be specified through bean properties rather than through the view class name.

Since:
  2.0
Author:
  Rob Harrop
See Also:
  `JasperReportsCsvView`, `JasperReportsHtmlView`, `JasperReportsPdfView`, `JasperReportsXlsView`

Field Summary

Fields inherited from class org.springframework.web.servlet.view.jasperreports.AbstractJasperReportsView
`CONTENT_DISPOSITION_INLINE, HEADER_CONTENT_DISPOSITION`

Fields inherited from class org.springframework.web.servlet.view.AbstractView
`DEFAULT_CONTENT_TYPE`

Fields inherited from class org.springframework.context.support.ApplicationObjectSupport
`logger`

Fields inherited from interface org.springframework.web.servlet.View
`RESPONSE_STATUS_ATTRIBUTE`

Constructor Summary
`ConfigurableJasperReportsView()`

Method Summary
`protected net.sf.jasperreports.engine.JRExporter` `createExporter()` Returns a new instance of the specified `JRExporter` class.
`protected void` `onInit()` Checks that the `exporterClass` property is specified.
`void` `setExporterClass(Class<? extends net.sf.jasperreports.engine.JRExporter> exporterClass)` Set the `JRExporter` implementation `Class` to use.
`void` `setUseWriter(boolean useWriter)` Specifies whether or not the `JRExporter` writes to the `PrintWriter` of the associated with the request (`true`) or whether it writes directly to the `InputStream` of the request (`false`).
`protected boolean` `useWriter()` Indicates how the `JRExporter` should render its data.

Methods inherited from class org.springframework.web.servlet.view.jasperreports.AbstractJasperReportsSingleFormatView
`generatesDownloadContent, renderReport, renderReportUsingOutputStream, renderReportUsingWriter`

Methods inherited from class org.springframework.web.servlet.view.jasperreports.AbstractJasperReportsView

`convertExporterParameters, convertParameterValue, convertReportData, convertToExporterParameter, createReport, exposeLocalizationContext, fillReport, getConvertedExporterParameters, getExporterParameter, getExporterParameters, getJdbcDataSource, getReport, getReportData, getReportDataTypes, initApplicationContext, isUrlRequired, loadReport, loadReport, postProcessReport, renderMergedOutputModel, setConvertedExporterParameters, setExporterParameters, setHeaders, setJdbcDataSource, setReportDataKey, setSubReportDataKeys, setSubReportUrls`

Methods inherited from class org.springframework.web.servlet.view.AbstractUrlBasedView
`afterPropertiesSet, checkResource, getUrl, setUrl, toString`

Methods inherited from class org.springframework.web.servlet.view.AbstractView
`addStaticAttribute, createRequestContext, createTemporaryOutputStream, exposeModelAsRequestAttributes, getAttributesMap, getBeanName, getContentType, getRequestContextAttribute, getStaticAttributes, prepareResponse, render, setAttributes, setAttributesCSV, setAttributesMap, setBeanName, setContentType, setRequestContextAttribute, writeToResponse`

Methods inherited from class org.springframework.web.context.support.WebApplicationObjectSupport
`getServletContext, getTempDir, getWebApplicationContext, initApplicationContext, initServletContext, isContextRequired, setServletContext`

Methods inherited from class org.springframework.context.support.ApplicationObjectSupport
`getApplicationContext, getMessageSourceAccessor, requiredContextClass, setApplicationContext`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

Constructor Detail

### ConfigurableJasperReportsView

    public ConfigurableJasperReportsView()

Method Detail

### setExporterClass

    public void setExporterClass(Class<? extends net.sf.jasperreports.engine.JRExporter> exporterClass)

  Set the `JRExporter` implementation `Class` to use. Throws `IllegalArgumentException` if the `Class` doesn't implement `JRExporter`. Required setting, as it does not have a default.

### setUseWriter

    public void setUseWriter(boolean useWriter)

  Specifies whether or not the `JRExporter` writes to the `PrintWriter` of the associated with the request (`true`) or whether it writes directly to the `InputStream` of the request (`false`). Default is `true`.

### onInit

    protected void onInit()

  Checks that the `exporterClass` property is specified.

  Overrides:
    `onInit` in class `AbstractJasperReportsView`
  See Also:
    `AbstractJasperReportsView.initApplicationContext()`

### createExporter

    protected net.sf.jasperreports.engine.JRExporter createExporter()

  Returns a new instance of the specified `JRExporter` class.

  Specified by:
    `createExporter` in class `AbstractJasperReportsSingleFormatView`
  See Also:
    `setExporterClass(Class)`, `BeanUtils.instantiateClass(Class)`

### useWriter

    protected boolean useWriter()

  Indicates how the `JRExporter` should render its data.

  Specified by:
    `useWriter` in class `AbstractJasperReportsSingleFormatView`
  See Also:
    `setUseWriter(boolean)`