dhis2-devs team mailing list archive
-
dhis2-devs team
-
Mailing list archive
-
Message #11125
[Branch ~dhis2-devs-core/dhis2/trunk] Rev 3123: Moved the dhis-web-exportdatamart namespace and actions from dhis-web-importexport to dhis-web-re...
------------------------------------------------------------
revno: 3123
committer: Lars Helge Overland <larshelge@xxxxxxxxx>
branch nick: dhis2
timestamp: Tue 2011-03-22 14:57:39 +0100
message:
Moved the dhis-web-exportdatamart namespace and actions from dhis-web-importexport to dhis-web-reporting
removed:
dhis-2/dhis-web/dhis-web-importexport/src/main/java/org/hisp/dhis/importexport/action/exp/ExportDataMartAction.java
added:
dhis-2/dhis-web/dhis-web-reporting/src/main/java/org/hisp/dhis/reporting/exp/
dhis-2/dhis-web/dhis-web-reporting/src/main/java/org/hisp/dhis/reporting/exp/ExportDataMartAction.java
modified:
dhis-2/dhis-web/dhis-web-importexport/src/main/resources/META-INF/dhis/beans.xml
dhis-2/dhis-web/dhis-web-importexport/src/main/resources/struts.xml
dhis-2/dhis-web/dhis-web-reporting/src/main/resources/META-INF/dhis/beans.xml
dhis-2/dhis-web/dhis-web-reporting/src/main/resources/struts.xml
--
lp:dhis2
https://code.launchpad.net/~dhis2-devs-core/dhis2/trunk
Your team DHIS 2 developers is subscribed to branch lp:dhis2.
To unsubscribe from this branch go to https://code.launchpad.net/~dhis2-devs-core/dhis2/trunk/+edit-subscription
=== removed file 'dhis-2/dhis-web/dhis-web-importexport/src/main/java/org/hisp/dhis/importexport/action/exp/ExportDataMartAction.java'
--- dhis-2/dhis-web/dhis-web-importexport/src/main/java/org/hisp/dhis/importexport/action/exp/ExportDataMartAction.java 2011-01-19 11:57:37 +0000
+++ dhis-2/dhis-web/dhis-web-importexport/src/main/java/org/hisp/dhis/importexport/action/exp/ExportDataMartAction.java 1970-01-01 00:00:00 +0000
@@ -1,258 +0,0 @@
-package org.hisp.dhis.importexport.action.exp;
-
-/*
- * Copyright (c) 2004-2010, University of Oslo
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions are met:
- * * Redistributions of source code must retain the above copyright notice, this
- * list of conditions and the following disclaimer.
- * * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
- * * Neither the name of the HISP project nor the names of its contributors may
- * be used to endorse or promote products derived from this software without
- * specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
- * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
- * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR
- * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
- * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
- * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
- * ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
- * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-
-
-import java.io.IOException;
-import java.io.OutputStream;
-import java.text.DateFormat;
-import java.text.SimpleDateFormat;
-import java.util.Calendar;
-import java.util.Date;
-import java.util.zip.GZIPOutputStream;
-
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
-
-import org.apache.commons.logging.Log;
-import org.apache.commons.logging.LogFactory;
-import org.apache.struts2.ServletActionContext;
-import org.hisp.dhis.importexport.synchronous.ExportPivotViewService;
-import org.hisp.dhis.importexport.synchronous.ExportPivotViewService.RequestType;
-import org.hisp.dhis.system.util.DateUtils;
-import org.hisp.dhis.system.util.StreamUtils;
-import org.hisp.dhis.user.CurrentUserService;
-
-import com.opensymphony.xwork2.Action;
-import org.hisp.dhis.importexport.synchronous.ExportPivotViewService.RequestPeriodType;
-
-/**
- * @author Bob Jolliffe
- *
- * This action is called to export a csv formatted selection of aggregated indicator or
- * data values from datamart.
- * It requires 4 parameters:
- * startdate and enddate: 8 character string representation of date - 20100624
- * root: id of root organization unit
- * level: level number to fetch aggregated values for
- */
-public class ExportDataMartAction
- implements Action
-{
- // TODO: experiment with different sizes for this to stop data dribbling out
- private static final int GZIPBUFFER = 8192;
-
- private static final Log log = LogFactory.getLog( ExportDataMartAction.class );
-
- private static final DateFormat dateFormat = new SimpleDateFormat( "yyyyMMdd" );
-
- // parameter errors
- private static final String NO_STARTDATE = "The request is missing a startDate parameter";
-
- private static final String NO_ENDDATE = "The request is missing an endDate parameter";
-
- private static final String BAD_STARTDATE = "The request has a bad startDate parameter. Required format is YYYMMDD";
-
- private static final String BAD_ENDDATE = "The request has a bad endDate parameter. Required format is YYYMMDD";
-
- private static final String NO_ROOT = "The request is missing a non-zero dataSourceRoot parameter";
-
- private static final String NO_LEVEL = "The request is missing a non-zero dataSourceLevel parameter";
-
- // http header result type
- private static final String CLIENT_ERROR = "client-error";
-
- private static final int HTTP_ERROR = 400;
- // -------------------------------------------------------------------------
- // Dependencies
- // -------------------------------------------------------------------------
-
- private CurrentUserService currentUserService;
-
- public void setCurrentUserService( CurrentUserService currentUserService )
- {
- this.currentUserService = currentUserService;
- }
-
- private ExportPivotViewService exportPivotViewService;
-
- public void setExportPivotViewService( ExportPivotViewService exportPivotViewService )
- {
- this.exportPivotViewService = exportPivotViewService;
- }
-
- // -------------------------------------------------------------------------
- // Input
- // -------------------------------------------------------------------------
-
- private String startDate;
-
- public void setStartDate( String startDate )
- {
- this.startDate = startDate;
- }
-
- private String endDate;
-
- public void setEndDate( String endDate )
- {
- this.endDate = endDate;
- }
-
- private int dataSourceLevel;
-
- public void setDataSourceLevel( int dataSourceLevel )
- {
- this.dataSourceLevel = dataSourceLevel;
- }
-
- private int dataSourceRoot;
-
- public void setDataSourceRoot( int dataSourceRoot )
- {
- this.dataSourceRoot = dataSourceRoot;
- }
-
- private RequestType requestType;
-
- public void setRequestType( RequestType requestType )
- {
- this.requestType = requestType;
- }
-
- private RequestPeriodType periodType;
-
- public void setPeriodType( RequestPeriodType requestType )
- {
- this.periodType = requestType;
- }
-
- // -------------------------------------------------------------------------
- // Action implementation
- // -------------------------------------------------------------------------
- public String execute() throws IOException
- {
- // do a basic audit log
- HttpServletRequest request = ServletActionContext.getRequest();
-
- log.info( "DataMart export request from " + currentUserService.getCurrentUsername() +
- " @ " + request.getRemoteAddr() );
-
- HttpServletResponse response = ServletActionContext.getResponse();
-
- // ---------------------------------------------------------------------
- // Check all parameters
- // ---------------------------------------------------------------------
-
- String paramError = null;
-
- if ( startDate == null )
- {
- paramError = NO_STARTDATE;
- }
-
- if ( endDate == null )
- {
- paramError = NO_ENDDATE;
- }
-
- if ( dataSourceRoot == 0 )
- {
- paramError = NO_ROOT;
- }
-
- if ( dataSourceLevel == 0 )
- {
- paramError = NO_LEVEL;
- }
-
- Date start = null;
- Date end = null;
-
- if ( paramError == null )
- {
- try
- {
- start = dateFormat.parse( startDate );
-
- if ( start == null )
- {
- paramError = BAD_STARTDATE;
- }
-
- end = dateFormat.parse( endDate );
-
- if ( end == null )
- {
- paramError = BAD_ENDDATE;
- }
- } catch ( java.text.ParseException ex )
- {
- paramError = ex.getMessage();
- }
- }
-
- if ( paramError != null )
- {
- response.sendError( HTTP_ERROR, paramError );
- log.info( paramError );
- return CLIENT_ERROR;
- }
-
- // timestamp filename
- SimpleDateFormat format = new SimpleDateFormat( "_yyyy_MM_dd_HHmm_ss" );
- String fileName = requestType + format.format(Calendar.getInstance().getTime()) + ".csv.gz";
-
- // prepare to write output
- OutputStream out = null;
-
- // how many rows do we expect
- int count = exportPivotViewService.count( requestType, periodType, start, end,
- dataSourceLevel, dataSourceRoot);
-
- response.setContentType( "application/gzip");
- response.addHeader( "Content-Disposition", "attachment; filename=\""+fileName+"\"" );
- response.addHeader( "Cache-Control", "no-cache" );
- response.addHeader( "Expires", DateUtils.getExpiredHttpDateString() );
- // write number of rows to custom header
- response.addHeader( "X-Number-Of-Rows", String.valueOf( count ) );
-
- try
- {
- out = new GZIPOutputStream(response.getOutputStream(), GZIPBUFFER);
- exportPivotViewService.execute(out, requestType, periodType, start, end,
- dataSourceLevel, dataSourceRoot);
- }
- finally
- {
- StreamUtils.closeOutputStream( out );
- }
-
- return SUCCESS;
- }
-}
=== modified file 'dhis-2/dhis-web/dhis-web-importexport/src/main/resources/META-INF/dhis/beans.xml'
--- dhis-2/dhis-web/dhis-web-importexport/src/main/resources/META-INF/dhis/beans.xml 2011-01-07 15:48:39 +0000
+++ dhis-2/dhis-web/dhis-web-importexport/src/main/resources/META-INF/dhis/beans.xml 2011-03-22 13:57:39 +0000
@@ -173,14 +173,6 @@
ref="org.hisp.dhis.organisationunit.OrganisationUnitService" />
</bean>
-
- <bean id="org.hisp.dhis.importexport.action.exp.ExportDataMartAction"
- class="org.hisp.dhis.importexport.action.exp.ExportDataMartAction"
- scope="prototype">
- <property name="currentUserService" ref="org.hisp.dhis.user.CurrentUserService" />
- <property name="exportPivotViewService" ref="org.hisp.dhis.importexport.synchronous.ExportPivotViewService" />
- </bean>
-
<bean id="org.hisp.dhis.importexport.action.exp.GetExportStatusAction"
class="org.hisp.dhis.importexport.action.exp.GetExportStatusAction"
scope="prototype">
=== modified file 'dhis-2/dhis-web/dhis-web-importexport/src/main/resources/struts.xml'
--- dhis-2/dhis-web/dhis-web-importexport/src/main/resources/struts.xml 2011-01-19 11:57:37 +0000
+++ dhis-2/dhis-web/dhis-web-importexport/src/main/resources/struts.xml 2011-03-22 13:57:39 +0000
@@ -214,38 +214,4 @@
</action>
</package>
- <!-- Create a new namespace to map actions for exporting datamart -->
- <package name="dhis-web-exportdatamart" extends="dhis-web-commons" namespace="/dhis-web-exportdatamart">
-
- <!-- route all export value requests through same action -->
-
- <action name="monthlyDataValues" class="org.hisp.dhis.importexport.action.exp.ExportDataMartAction">
- <result name="success" type="outputStreamResult" />
- <result name="client-error" type="httpheader" />
- <param name="requestType">DATAVALUE</param>
- <param name="periodType">MONTHLY</param>
- </action>
-
- <action name="yearlyDataValues" class="org.hisp.dhis.importexport.action.exp.ExportDataMartAction">
- <result name="success" type="outputStreamResult" />
- <result name="client-error" type="httpheader" />
- <param name="requestType">DATAVALUE</param>
- <param name="periodType">YEARLY</param>
- </action>
-
- <action name="monthlyIndicatorValues" class="org.hisp.dhis.importexport.action.exp.ExportDataMartAction">
- <result name="success" type="outputStreamResult" />
- <result name="client-error" type="httpheader" />
- <param name="requestType">INDICATORVALUE</param>
- <param name="periodType">MONTHLY</param>
- </action>
-
- <action name="yearlyIndicatorValues" class="org.hisp.dhis.importexport.action.exp.ExportDataMartAction">
- <result name="success" type="outputStreamResult" />
- <result name="client-error" type="httpheader" />
- <param name="requestType">INDICATORVALUE</param>
- <param name="periodType">YEARLY</param>
- </action>
-
- </package>
</struts>
=== added directory 'dhis-2/dhis-web/dhis-web-reporting/src/main/java/org/hisp/dhis/reporting/exp'
=== added file 'dhis-2/dhis-web/dhis-web-reporting/src/main/java/org/hisp/dhis/reporting/exp/ExportDataMartAction.java'
--- dhis-2/dhis-web/dhis-web-reporting/src/main/java/org/hisp/dhis/reporting/exp/ExportDataMartAction.java 1970-01-01 00:00:00 +0000
+++ dhis-2/dhis-web/dhis-web-reporting/src/main/java/org/hisp/dhis/reporting/exp/ExportDataMartAction.java 2011-03-22 13:57:39 +0000
@@ -0,0 +1,258 @@
+package org.hisp.dhis.reporting.exp;
+
+/*
+ * Copyright (c) 2004-2010, University of Oslo
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are met:
+ * * Redistributions of source code must retain the above copyright notice, this
+ * list of conditions and the following disclaimer.
+ * * Redistributions in binary form must reproduce the above copyright notice,
+ * this list of conditions and the following disclaimer in the documentation
+ * and/or other materials provided with the distribution.
+ * * Neither the name of the HISP project nor the names of its contributors may
+ * be used to endorse or promote products derived from this software without
+ * specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
+ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+ * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
+ * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR
+ * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
+ * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+ * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
+ * ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+
+import java.io.IOException;
+import java.io.OutputStream;
+import java.text.DateFormat;
+import java.text.SimpleDateFormat;
+import java.util.Calendar;
+import java.util.Date;
+import java.util.zip.GZIPOutputStream;
+
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
+import org.apache.struts2.ServletActionContext;
+import org.hisp.dhis.importexport.synchronous.ExportPivotViewService;
+import org.hisp.dhis.importexport.synchronous.ExportPivotViewService.RequestType;
+import org.hisp.dhis.system.util.DateUtils;
+import org.hisp.dhis.system.util.StreamUtils;
+import org.hisp.dhis.user.CurrentUserService;
+
+import com.opensymphony.xwork2.Action;
+import org.hisp.dhis.importexport.synchronous.ExportPivotViewService.RequestPeriodType;
+
+/**
+ * @author Bob Jolliffe
+ *
+ * This action is called to export a csv formatted selection of aggregated indicator or
+ * data values from datamart.
+ * It requires 4 parameters:
+ * startdate and enddate: 8 character string representation of date - 20100624
+ * root: id of root organization unit
+ * level: level number to fetch aggregated values for
+ */
+public class ExportDataMartAction
+ implements Action
+{
+ // TODO: experiment with different sizes for this to stop data dribbling out
+ private static final int GZIPBUFFER = 8192;
+
+ private static final Log log = LogFactory.getLog( ExportDataMartAction.class );
+
+ private static final DateFormat dateFormat = new SimpleDateFormat( "yyyyMMdd" );
+
+ // parameter errors
+ private static final String NO_STARTDATE = "The request is missing a startDate parameter";
+
+ private static final String NO_ENDDATE = "The request is missing an endDate parameter";
+
+ private static final String BAD_STARTDATE = "The request has a bad startDate parameter. Required format is YYYMMDD";
+
+ private static final String BAD_ENDDATE = "The request has a bad endDate parameter. Required format is YYYMMDD";
+
+ private static final String NO_ROOT = "The request is missing a non-zero dataSourceRoot parameter";
+
+ private static final String NO_LEVEL = "The request is missing a non-zero dataSourceLevel parameter";
+
+ // http header result type
+ private static final String CLIENT_ERROR = "client-error";
+
+ private static final int HTTP_ERROR = 400;
+ // -------------------------------------------------------------------------
+ // Dependencies
+ // -------------------------------------------------------------------------
+
+ private CurrentUserService currentUserService;
+
+ public void setCurrentUserService( CurrentUserService currentUserService )
+ {
+ this.currentUserService = currentUserService;
+ }
+
+ private ExportPivotViewService exportPivotViewService;
+
+ public void setExportPivotViewService( ExportPivotViewService exportPivotViewService )
+ {
+ this.exportPivotViewService = exportPivotViewService;
+ }
+
+ // -------------------------------------------------------------------------
+ // Input
+ // -------------------------------------------------------------------------
+
+ private String startDate;
+
+ public void setStartDate( String startDate )
+ {
+ this.startDate = startDate;
+ }
+
+ private String endDate;
+
+ public void setEndDate( String endDate )
+ {
+ this.endDate = endDate;
+ }
+
+ private int dataSourceLevel;
+
+ public void setDataSourceLevel( int dataSourceLevel )
+ {
+ this.dataSourceLevel = dataSourceLevel;
+ }
+
+ private int dataSourceRoot;
+
+ public void setDataSourceRoot( int dataSourceRoot )
+ {
+ this.dataSourceRoot = dataSourceRoot;
+ }
+
+ private RequestType requestType;
+
+ public void setRequestType( RequestType requestType )
+ {
+ this.requestType = requestType;
+ }
+
+ private RequestPeriodType periodType;
+
+ public void setPeriodType( RequestPeriodType requestType )
+ {
+ this.periodType = requestType;
+ }
+
+ // -------------------------------------------------------------------------
+ // Action implementation
+ // -------------------------------------------------------------------------
+ public String execute() throws IOException
+ {
+ // do a basic audit log
+ HttpServletRequest request = ServletActionContext.getRequest();
+
+ log.info( "DataMart export request from " + currentUserService.getCurrentUsername() +
+ " @ " + request.getRemoteAddr() );
+
+ HttpServletResponse response = ServletActionContext.getResponse();
+
+ // ---------------------------------------------------------------------
+ // Check all parameters
+ // ---------------------------------------------------------------------
+
+ String paramError = null;
+
+ if ( startDate == null )
+ {
+ paramError = NO_STARTDATE;
+ }
+
+ if ( endDate == null )
+ {
+ paramError = NO_ENDDATE;
+ }
+
+ if ( dataSourceRoot == 0 )
+ {
+ paramError = NO_ROOT;
+ }
+
+ if ( dataSourceLevel == 0 )
+ {
+ paramError = NO_LEVEL;
+ }
+
+ Date start = null;
+ Date end = null;
+
+ if ( paramError == null )
+ {
+ try
+ {
+ start = dateFormat.parse( startDate );
+
+ if ( start == null )
+ {
+ paramError = BAD_STARTDATE;
+ }
+
+ end = dateFormat.parse( endDate );
+
+ if ( end == null )
+ {
+ paramError = BAD_ENDDATE;
+ }
+ } catch ( java.text.ParseException ex )
+ {
+ paramError = ex.getMessage();
+ }
+ }
+
+ if ( paramError != null )
+ {
+ response.sendError( HTTP_ERROR, paramError );
+ log.info( paramError );
+ return CLIENT_ERROR;
+ }
+
+ // timestamp filename
+ SimpleDateFormat format = new SimpleDateFormat( "_yyyy_MM_dd_HHmm_ss" );
+ String fileName = requestType + format.format(Calendar.getInstance().getTime()) + ".csv.gz";
+
+ // prepare to write output
+ OutputStream out = null;
+
+ // how many rows do we expect
+ int count = exportPivotViewService.count( requestType, periodType, start, end,
+ dataSourceLevel, dataSourceRoot);
+
+ response.setContentType( "application/gzip");
+ response.addHeader( "Content-Disposition", "attachment; filename=\""+fileName+"\"" );
+ response.addHeader( "Cache-Control", "no-cache" );
+ response.addHeader( "Expires", DateUtils.getExpiredHttpDateString() );
+ // write number of rows to custom header
+ response.addHeader( "X-Number-Of-Rows", String.valueOf( count ) );
+
+ try
+ {
+ out = new GZIPOutputStream(response.getOutputStream(), GZIPBUFFER);
+ exportPivotViewService.execute(out, requestType, periodType, start, end,
+ dataSourceLevel, dataSourceRoot);
+ }
+ finally
+ {
+ StreamUtils.closeOutputStream( out );
+ }
+
+ return SUCCESS;
+ }
+}
=== modified file 'dhis-2/dhis-web/dhis-web-reporting/src/main/resources/META-INF/dhis/beans.xml'
--- dhis-2/dhis-web/dhis-web-reporting/src/main/resources/META-INF/dhis/beans.xml 2011-03-15 23:26:14 +0000
+++ dhis-2/dhis-web/dhis-web-reporting/src/main/resources/META-INF/dhis/beans.xml 2011-03-22 13:57:39 +0000
@@ -509,4 +509,13 @@
ref="org.hisp.dhis.dataset.DataSetService"/>
</bean>
+ <!-- Export -->
+
+ <bean id="org.hisp.dhis.reporting.exp.ExportDataMartAction"
+ class="org.hisp.dhis.reporting.exp.ExportDataMartAction"
+ scope="prototype">
+ <property name="currentUserService" ref="org.hisp.dhis.user.CurrentUserService" />
+ <property name="exportPivotViewService" ref="org.hisp.dhis.importexport.synchronous.ExportPivotViewService" />
+ </bean>
+
</beans>
=== modified file 'dhis-2/dhis-web/dhis-web-reporting/src/main/resources/struts.xml'
--- dhis-2/dhis-web/dhis-web-reporting/src/main/resources/struts.xml 2011-03-20 09:53:16 +0000
+++ dhis-2/dhis-web/dhis-web-reporting/src/main/resources/struts.xml 2011-03-22 13:57:39 +0000
@@ -383,4 +383,36 @@
</action>
</package>
+
+ <package name="dhis-web-exportdatamart" extends="dhis-web-commons" namespace="/dhis-web-exportdatamart">
+
+ <action name="monthlyDataValues" class="org.hisp.dhis.reporting.exp.ExportDataMartAction">
+ <result name="success" type="outputStreamResult" />
+ <result name="client-error" type="httpheader" />
+ <param name="requestType">DATAVALUE</param>
+ <param name="periodType">MONTHLY</param>
+ </action>
+
+ <action name="yearlyDataValues" class="org.hisp.dhis.reporting.exp.ExportDataMartAction">
+ <result name="success" type="outputStreamResult" />
+ <result name="client-error" type="httpheader" />
+ <param name="requestType">DATAVALUE</param>
+ <param name="periodType">YEARLY</param>
+ </action>
+
+ <action name="monthlyIndicatorValues" class="org.hisp.dhis.reporting.exp.ExportDataMartAction">
+ <result name="success" type="outputStreamResult" />
+ <result name="client-error" type="httpheader" />
+ <param name="requestType">INDICATORVALUE</param>
+ <param name="periodType">MONTHLY</param>
+ </action>
+
+ <action name="yearlyIndicatorValues" class="org.hisp.dhis.reporting.exp.ExportDataMartAction">
+ <result name="success" type="outputStreamResult" />
+ <result name="client-error" type="httpheader" />
+ <param name="requestType">INDICATORVALUE</param>
+ <param name="periodType">YEARLY</param>
+ </action>
+
+ </package>
</struts>