Author: mriou
Date: Tue Sep 26 12:11:19 2006
New Revision: 450151
URL: http://svn.apache.org/viewvc?view=rev&rev=450151
Log:
Support for external working directory. Ode can use any directory (instead of
the ones directly included in the WAR file) for the deployed processes and the
database (when the embedded one is used). Just set the ode-axis2.working.dir
property in ode-axis2.properties. The embedded database must be copied to this
directory before starting if it's used.
Modified:
incubator/ode/trunk/axis2/src/main/java/org/apache/ode/axis2/ODEConfigProperties.java
incubator/ode/trunk/axis2/src/main/java/org/apache/ode/axis2/ODEServer.java
incubator/ode/trunk/axis2/src/main/java/org/apache/ode/axis2/service/DeploymentWebService.java
Modified:
incubator/ode/trunk/axis2/src/main/java/org/apache/ode/axis2/ODEConfigProperties.java
URL:
http://svn.apache.org/viewvc/incubator/ode/trunk/axis2/src/main/java/org/apache/ode/axis2/ODEConfigProperties.java?view=diff&rev=450151&r1=450150&r2=450151
==============================================================================
---
incubator/ode/trunk/axis2/src/main/java/org/apache/ode/axis2/ODEConfigProperties.java
(original)
+++
incubator/ode/trunk/axis2/src/main/java/org/apache/ode/axis2/ODEConfigProperties.java
Tue Sep 26 12:11:19 2006
@@ -43,6 +43,7 @@
private static final String PROP_POOL_MAX = "ode-axis2.db.pool.max";
private static final String PROP_POOL_MIN = "ode-axis2.db.pool.min";
private static final String PROP_CONNECTOR_PORT = "ode-axis2.jca.port";
+ private static final String PROP_WORKING_DIR = "ode-axis2.working.dir";
private File _installDir;
@@ -123,6 +124,10 @@
public int getConnectorPort() {
return
Integer.valueOf(getProperty(ODEConfigProperties.PROP_CONNECTOR_PORT,"2099"));
+ }
+
+ public String getWorkingDir() {
+ return getProperty(ODEConfigProperties.PROP_WORKING_DIR);
}
}
Modified:
incubator/ode/trunk/axis2/src/main/java/org/apache/ode/axis2/ODEServer.java
URL:
http://svn.apache.org/viewvc/incubator/ode/trunk/axis2/src/main/java/org/apache/ode/axis2/ODEServer.java?view=diff&rev=450151&r1=450150&r2=450151
==============================================================================
--- incubator/ode/trunk/axis2/src/main/java/org/apache/ode/axis2/ODEServer.java
(original)
+++ incubator/ode/trunk/axis2/src/main/java/org/apache/ode/axis2/ODEServer.java
Tue Sep 26 12:11:19 2006
@@ -80,6 +80,7 @@
private static final Messages __msgs =
Messages.getMessages(Messages.class);
private File _appRoot;
+ private File _workRoot;
private BpelServerImpl _server;
private ODEConfigProperties _odeConfig;
@@ -104,6 +105,10 @@
_odeConfig = new ODEConfigProperties(_appRoot);
_odeConfig.load();
+ String wdir = _odeConfig.getWorkingDir();
+ if (wdir == null) _workRoot = _appRoot;
+ else _workRoot = new File(wdir.trim());
+
__log.debug("Initializing transaction manager");
initTxMgr();
@@ -128,11 +133,12 @@
__log.debug("Initializing JCA adapter.");
initConnector();
- File deploymentDir = new File(_appRoot, "processes");
+ File deploymentDir = new File(_workRoot, "processes");
_poller = new DeploymentPoller(deploymentDir, this);
new ManagementService().enableService(_axisConfig, _server,
_appRoot.getAbsolutePath());
- new DeploymentWebService().enableService(_axisConfig, _server,
_poller, _appRoot.getAbsolutePath());
+ new DeploymentWebService().enableService(_axisConfig, _server, _poller,
+ _appRoot.getAbsolutePath(), _workRoot.getAbsolutePath());
_poller.start();
__log.info(__msgs.msgPollingStarted(deploymentDir.getAbsolutePath()));
@@ -333,7 +339,7 @@
private void initEmbeddedDb() throws ServletException {
__log.info("Using DataSource Derby");
- String url = "jdbc:derby:" + _appRoot + "/" +
_odeConfig.getDbEmbeddedName();
+ String url = "jdbc:derby:" + _workRoot + "/" +
_odeConfig.getDbEmbeddedName();
__log.debug("creating Minerva pool for " + url);
Modified:
incubator/ode/trunk/axis2/src/main/java/org/apache/ode/axis2/service/DeploymentWebService.java
URL:
http://svn.apache.org/viewvc/incubator/ode/trunk/axis2/src/main/java/org/apache/ode/axis2/service/DeploymentWebService.java?view=diff&rev=450151&r1=450150&r2=450151
==============================================================================
---
incubator/ode/trunk/axis2/src/main/java/org/apache/ode/axis2/service/DeploymentWebService.java
(original)
+++
incubator/ode/trunk/axis2/src/main/java/org/apache/ode/axis2/service/DeploymentWebService.java
Tue Sep 26 12:11:19 2006
@@ -66,8 +66,8 @@
private DeploymentPoller _poller;
public void enableService(AxisConfiguration axisConfig, BpelServer server,
- DeploymentPoller poller, String rootpath) {
- _deployPath = new File(rootpath, "processes");
+ DeploymentPoller poller, String rootpath, String
workPath) {
+ _deployPath = new File(workPath, "processes");
_service = server.getDeploymentService();
Definition def;