[jbpm-commits] JBoss JBPM SVN: r3223 - in projects/balalaika/trunk: server/src/main/java/org/jboss/balalaika and 1 other directory.
do-not-reply at jboss.org
do-not-reply at jboss.org
Fri Dec 5 09:10:55 EST 2008
Author: heiko.braun at jboss.com
Date: 2008-12-05 09:10:55 -0500 (Fri, 05 Dec 2008)
New Revision: 3223
Modified:
projects/balalaika/trunk/core/src/main/java/org/jboss/balalaika/IntegrationConfig.java
projects/balalaika/trunk/server/src/main/java/org/jboss/balalaika/ReportFacade.java
Log:
Expect BIRT_HOME to be server/<config>/data/birt/ReportEngine
Modified: projects/balalaika/trunk/core/src/main/java/org/jboss/balalaika/IntegrationConfig.java
===================================================================
--- projects/balalaika/trunk/core/src/main/java/org/jboss/balalaika/IntegrationConfig.java 2008-12-05 13:36:50 UTC (rev 3222)
+++ projects/balalaika/trunk/core/src/main/java/org/jboss/balalaika/IntegrationConfig.java 2008-12-05 14:10:55 UTC (rev 3223)
@@ -28,7 +28,7 @@
*/
public class IntegrationConfig
{
- private String birtHome = "/Users/hbraun/dev/env/birt-runtime-2_2_2/ReportEngine/";
+ private String birtHome = null;
private String reportDir = null;
private String outputDir = null;
private String imageBaseUrl = null;
Modified: projects/balalaika/trunk/server/src/main/java/org/jboss/balalaika/ReportFacade.java
===================================================================
--- projects/balalaika/trunk/server/src/main/java/org/jboss/balalaika/ReportFacade.java 2008-12-05 13:36:50 UTC (rev 3222)
+++ projects/balalaika/trunk/server/src/main/java/org/jboss/balalaika/ReportFacade.java 2008-12-05 14:10:55 UTC (rev 3223)
@@ -37,8 +37,21 @@
import java.io.InputStream;
/**
- * BIRT integration facade.
+ * BIRT integration facade.<p>
*
+ * Uses the server data directory (i.e. <code>$JBOSS_HOME/server/default/data/birt</code>)
+ * as it's work directory (referred to as $WORK_DIR in the subsequent sections):
+ *
+ * <ul>
+ * <li>report template location: $WORK_DIR/
+ * <li>output directory: $WORK_DIR/output
+ * </ul>
+ *
+ * NOTE: It requires a BIRT report engine to be installed in the work directory:
+ * (<code>$WORK_DIR/ReportEngine</code>.
+ *
+ * @see org.jboss.balalaika.JMXServerConfig
+ *
* @author Heiko.Braun <heiko.braun at jboss.com>
*/
@Path("report")
@@ -48,21 +61,31 @@
private BirtService birtService;
private boolean isInitialized;
- public void lazyInitialize(HttpServletRequest request)
+ public void lazyInitialize(HttpServletRequest request)
{
if(!isInitialized)
{
JMXServerConfig jmxConfig = new JMXServerConfig();
IntegrationConfig iConfig = new IntegrationConfig();
- File dataDir = jmxConfig.getServerDataDir();
- String birtDataDir = dataDir.getAbsolutePath() + "/birt";
- String outputDir = birtDataDir + "/output";
+ File severDataDir = jmxConfig.getServerDataDir();
+ String absServerDataDir = severDataDir.getAbsolutePath();
- File birtOutput = new File(outputDir);
+ String birtDataDir = absServerDataDir + "/birt";
+ String defaultBirtHome = birtDataDir + "/ReportEngine";
+ String birtOutputDir = birtDataDir + "/output";
+
+ File birtOutput = new File(birtOutputDir);
birtOutput.mkdirs(); // will create parent directoy as well
- iConfig.setOutputDir(outputDir);
+ // check dependency on ReportEngine
+ if(! new File(defaultBirtHome).exists())
+ throw new IllegalStateException("The BIRT report engine doesn't seem to be installed:" +defaultBirtHome);
+
+ // --
+
+ iConfig.setBirtHome(defaultBirtHome);
+ iConfig.setOutputDir( birtOutputDir );
iConfig.setReportDir( birtDataDir );
StringBuffer sb = new StringBuffer();
@@ -156,5 +179,4 @@
throw new RuntimeException("Failed to read file " + file);
}
}
-
}
More information about the jbpm-commits
mailing list