Class JasperMultipleReportBaseAction
- All Implemented Interfaces:
IAction,IChangeModeAction,IModelAction,IModuleContextAction,IMultipleForwardAction,IRequestAction
- Direct Known Subclasses:
JasperConcatReportBaseAction
You only need to overwrite the abstract methods.
To send parameters to the reports you have 3 options.
- If all the repors use the same parameters just overwrite getParameters().
- If each report has different parameter overwrite getParameters(int i), or well
- overwrite execute() and before calling to super.execute() call to addParameters() method.
Option 1 for parameters
public Map getParameters() throws Exception {
Map parameters = new HashMap();
parameters.put("param1", value1);
parameters.put("param2", value2);
return parameters;
}
Option 2 for parameters
protected Map getParameters(int index) throws Exception {
Map parameters = new HashMap();
switch (index) {
case 0:
parameters.put("param1", value1);
parameters.put("param2", value2);
return parameters;
case 1:
parameters.put("param3", value3);
parameters.put("param4", value4);
return parameters;
}
return null;
}
Option 3 for parameters
public void execute() throws Exception {
Map parameters1 = new HashMap();
parameters1.put("param1", value1);
parameters1.put("param2", value2);
addParameters(parameters1);
Map parameters2 = new HashMap();
parameters1.put("param3", value3);
parameters1.put("param4", value4);
addParameters(parameters2);
super.execute();
}
- Author:
- Oscar Caro, Franklin Alier : Added a parameters list to allow separate parameters per report
-
Field Summary
FieldsFields inherited from interface org.openxava.actions.IChangeModeAction
DETAIL, LIST, PREVIOUS_MODE, SPLIT -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidaddParameters(int index, Map parameters) Add a parameter set at a specified index.voidaddParameters(Map parameters) Add a parameter set to the current list.voidexecute()protected abstract net.sf.jasperreports.engine.JRDataSource[]Data to print.Output report format, it can be 'pdf' or 'excel'.String[]The URIs to go.protected abstract String[]The name of the XML with the JasperReports design.protected MapParameters to send to report.protected MapgetParameters(int i) Retrieve parameters for the specified report index.Retrieve the current parameter list.booleanvoidOutput report format, it can be 'pdf', 'excel' or 'rtf'.voidvoidsetParametersList(List<Map> parametersList) Set parameter list.Methods inherited from class org.openxava.actions.ViewBaseAction
changeThisPropertyByViewValue, closeDialog, getModelName, getPreviousView, getPreviousViews, getView, resetDescriptionsCache, returnToPreviousView, setControllers, setPreviousViews, setView, showDialog, showDialog, showNewView, showView, validateViewValuesMethods inherited from class org.openxava.actions.BaseAction
addActions, addError, addErrors, addInfo, addMessage, addMessages, addWarning, clearActions, commit, executeAction, executeAfter, executeBefore, getContext, getEnvironment, getErrors, getLocale, getManager, getMessages, getNextMode, getQualifiedActionIfAvailable, getRequest, removeActions, returnToPreviousControllers, rollback, setContext, setDefaultControllers, setEnvironment, setErrors, setMessages, setNextMode, setRequestMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.openxava.actions.IAction
getErrors, getMessages, setEnvironment, setErrors, setMessages
-
Field Details
-
PDF
-
EXCEL
-
RTF
-
ODT
-
-
Constructor Details
-
JasperMultipleReportBaseAction
public JasperMultipleReportBaseAction()
-
-
Method Details
-
getDataSources
Data to print.If return null then a JDBC connection is sent to JasperReport, this is for the case of a SQL inside JasperReport design.
- Throws:
Exception
-
getJRXMLs
The name of the XML with the JasperReports design.If it is a relative path (as
reports/myreport.jrxmlhas to be in classpath. If it is a absolute path (as/home/java/reports/myreport.xmlorC:\\JAVA\\REPORTS\MYREPORT.JRXMLthen it look at the file system.- Throws:
Exception
-
getParameters
Parameters to send to report.- Throws:
Exception
-
getParameters
Retrieve parameters for the specified report index.Maintains backward compatibility by calling getParameters() if parameters list is empty or not enough parameter sets defined.
- Throws:
Exception- Since:
- 4.5
-
getFormat
Output report format, it can be 'pdf' or 'excel'.- Throws:
Exception
-
setFormat
Output report format, it can be 'pdf', 'excel' or 'rtf'.- Throws:
Exception
-
execute
-
getForwardURIs
Description copied from interface:IMultipleForwardActionThe URIs to go.If it starts with "http://" or "http://" the action will forward to the absolute URL in internet, if it starts with "javascript:" the corresponding code will executed by the browser, otherwise it will forward to a resource inside this application.
- Specified by:
getForwardURIsin interfaceIMultipleForwardAction
-
inNewWindow
public boolean inNewWindow() -
setModel
- Specified by:
setModelin interfaceIModelAction
-
setParametersList
Set parameter list.Allows setting the parameter list outside this code.
- Since:
- 4.5
-
getParametersList
Retrieve the current parameter list.- Since:
- 4.5
-
addParameters
Add a parameter set to the current list.Appends the parameter set to the parameter list.
- Since:
- 4.5
-
addParameters
Add a parameter set at a specified index.Inserts the parameter set into the parameter list at the specified index.
- Parameters:
index- - The index to insert into.parameter- - The parameter set to insert.- Since:
- 4.5
-