org.dbforms.servlets.reports
Class AbstractLineReportServlet
java.lang.Object
javax.servlet.GenericServlet
javax.servlet.http.HttpServlet
org.dbforms.servlets.base.AbstractServletBase
org.dbforms.servlets.reports.AbstractReportServlet
org.dbforms.servlets.reports.AbstractLineReportServlet
- All Implemented Interfaces:
- Serializable, Servlet, ServletConfig
- Direct Known Subclasses:
- CSVReportServlet, ExcelReportServlet
public abstract class AbstractLineReportServlet
- extends AbstractReportServlet
This servlet generates a comma separated values file (CSV). Data is read from
the current dbForm, a Collection or a ResultSetVector The template file is in
the reports directory with a .cr extension it consists of two lines of text,
the first is a list of stirngs to use as header the second a list of comma
separated field names. both lines must have the same number of elements.
Normally the output file will use the first row as the headers. But if no
header line is provided, then no headers are output and every row is data.
usage: with a simple goto button: <db:gotoButton destTable="web_parts"
destination=" /reports/Artikel"/> or for one record: <db:gotoButton
destTable="web_parts" keyToDestPos="currentRow"
destination="/reports/Artikel" /> Servlet mapping must be set to handle
all /reports by this servlet!!! <servlet/>
<servlet-name/>startreport</servlet-name/>
<display-name/>startreport</display-name/>
<servlet-class/>org.dbforms.StartReportServlet</servlet-class/>
</servlet> <servlet-mapping/>
<servlet-name/>startreport</servlet-name/>
<url-pattern/>/reports/</url-pattern/> </servlet-mapping>
web.xml optional parameters reportdirs list of directories to search for
report file reportMimeType mime type to send to browser Parameters
filename=xyz.csv name the output file Support for grabbing data from a
Collection or an existing ResultSetVector set session variable "jasper.input"
to use a Collection object set session variable "jasper.rsv" to use a
ResultSetVector object ex <c:set var="jasper.rsv" value="${rsv_xxxxx}"
scope="session" />
- Author:
- Neal Katz
- See Also:
- Serialized Form
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
AbstractLineReportServlet
public AbstractLineReportServlet()
getMimeType
protected abstract String getMimeType()
getFileExtension
protected abstract String getFileExtension()
writeData
protected abstract void writeData(Object[] data)
throws Exception
- Throws:
Exception
openStream
protected abstract void openStream(OutputStream out)
throws Exception
- Throws:
Exception
closeStream
protected abstract void closeStream(OutputStream out)
throws Exception
- Throws:
Exception
init
public void init()
throws ServletException
- Description copied from class:
AbstractReportServlet
- Initialize this servlet.
- Overrides:
init
in class AbstractReportServlet
- Throws:
ServletException
- if we cannot configure ourselves correctly
getReportFileExtension
protected String getReportFileExtension()
- Specified by:
getReportFileExtension
in class AbstractReportServlet
writeHeader
protected void writeHeader(String[] header)
throws Exception
- Throws:
Exception
processReport
protected ReportWriter processReport(String reportFileFullName,
AbstractJRDataSource dataSource,
ServletContext context,
HttpServletRequest request,
HttpServletResponse response)
- generates a report.
- Specified by:
processReport
in class AbstractReportServlet
- Parameters:
reportFileFullName
- filename of report to process reportHTTPServletRequest
generated by getReportFile! getReportFile should be called
before fetching data, so that error handling of report not
found e.g. could be processed first!dataSource
- data for the reportcontext
- ServletContextrequest
- HTTPServletRequestresponse
- HTTPServletResponse
Copyright © 2002-2006 DbForms. All Rights Reserved.