You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@synapse.apache.org by as...@apache.org on 2008/05/10 22:19:05 UTC

svn commit: r655150 - in /synapse/branches/1.2: modules/core/src/main/java/org/apache/synapse/ modules/core/src/main/java/org/apache/synapse/config/ modules/core/src/main/java/org/apache/synapse/config/xml/ modules/core/src/main/java/org/apache/synapse...

Author: asankha
Date: Sat May 10 13:19:04 2008
New Revision: 655150

URL: http://svn.apache.org/viewvc?rev=655150&view=rev
Log:
fix https://issues.apache.org/jira/browse/SYNAPSE-302

Modified:
    synapse/branches/1.2/modules/core/src/main/java/org/apache/synapse/ServerManager.java
    synapse/branches/1.2/modules/core/src/main/java/org/apache/synapse/SynapseConstants.java
    synapse/branches/1.2/modules/core/src/main/java/org/apache/synapse/SynapseServer.java
    synapse/branches/1.2/modules/core/src/main/java/org/apache/synapse/config/SynapseConfigUtils.java
    synapse/branches/1.2/modules/core/src/main/java/org/apache/synapse/config/SynapseConfiguration.java
    synapse/branches/1.2/modules/core/src/main/java/org/apache/synapse/config/SynapseConfigurationBuilder.java
    synapse/branches/1.2/modules/core/src/main/java/org/apache/synapse/config/xml/MediatorSerializerFinder.java
    synapse/branches/1.2/modules/core/src/main/java/org/apache/synapse/config/xml/endpoints/WSDLEndpointFactory.java
    synapse/branches/1.2/modules/core/src/main/java/org/apache/synapse/core/axis2/ProxyService.java
    synapse/branches/1.2/modules/core/src/main/java/org/apache/synapse/core/axis2/SynapseCallbackReceiver.java
    synapse/branches/1.2/modules/core/src/main/java/org/apache/synapse/core/axis2/SynapseInitializationModule.java
    synapse/branches/1.2/modules/core/src/main/java/org/apache/synapse/core/axis2/SynapseStartUpServlet.java
    synapse/branches/1.2/modules/core/src/main/java/org/apache/synapse/core/axis2/TimeoutHandler.java
    synapse/branches/1.2/modules/core/src/main/java/org/apache/synapse/startup/quartz/SimpleQuartz.java
    synapse/branches/1.2/modules/core/src/test/java/org/apache/synapse/mediators/db/DBLookupMediatorTest.java
    synapse/branches/1.2/modules/core/src/test/java/org/apache/synapse/mediators/db/DBReportMediatorTest.java
    synapse/branches/1.2/modules/core/src/test/java/org/apache/synapse/n2n/SynapseCommodityServiceTest.java
    synapse/branches/1.2/modules/handler/src/main/java/org/apache/synapse/handler/SynapseModule.java
    synapse/branches/1.2/repository/conf/sample/resources/misc/server/axis2.xml
    synapse/branches/1.2/repository/conf/web.xml
    synapse/branches/1.2/repository/conf/wrapper.conf
    synapse/branches/1.2/src/main/bin/synapse.bat
    synapse/branches/1.2/src/main/bin/synapse.sh

Modified: synapse/branches/1.2/modules/core/src/main/java/org/apache/synapse/ServerManager.java
URL: http://svn.apache.org/viewvc/synapse/branches/1.2/modules/core/src/main/java/org/apache/synapse/ServerManager.java?rev=655150&r1=655149&r2=655150&view=diff
==============================================================================
--- synapse/branches/1.2/modules/core/src/main/java/org/apache/synapse/ServerManager.java (original)
+++ synapse/branches/1.2/modules/core/src/main/java/org/apache/synapse/ServerManager.java Sat May 10 13:19:04 2008
@@ -49,40 +49,48 @@
 
 public class ServerManager {
 
-    private static ServerManager instance;
     private static final Log log = LogFactory.getLog(ServerManager.class);
+
+    /** The singleton server manager instance */
+    private static ServerManager instance = new ServerManager();
+
+    /** The Axis2 repository location */
     private String axis2Repolocation;
+    /** The path to the axis2.xml file */
     private String axis2Xml;
+    /** The synapse home is the home directory of the Synapse installation */
+    private String synapseHome;
+    /** The path to the synapse.xml file */
+    private String synapseXMLPath;
+    /** The root directory to resolve paths for registry, default to synapse.home/repository */
+    private String resolveRoot;
+    /** An optional server name to activate pinned services, tasks etc.. and to differentiate instances on a cluster */
+    private String serverName = "localhost";
+
+    /** The Axis2 listener Manager */
     private ListenerManager listenerManager;
+    /** The Axis2 configuration context used by Synapse */
     private ConfigurationContext configctx;
-    private static final int DEFAULT_HTTP_PORT = 8080;
-    private static final int ALTERNATIVE_HTTP_PORT = 8008;
+    /** Reference to the Synapse configuration */
+    private SynapseConfiguration synConfig = null;
     private Map callbackStore = null;
 
     /**
-     * To ensure that there is a only one Manager
-     * @return  Server Manager Instance
+     * return the singleton server manager
+     * @return  ServerManager Instance
      */
     public static ServerManager getInstance() {
-        if (instance == null) {
-            instance = new ServerManager();
-        }
         return instance;
     }
 
-    public void setAxis2Repolocation(String axis2Repolocation) {
-        this.axis2Repolocation = axis2Repolocation;
-    }
-
-    public void setAxis2Xml(String axis2Xml) {
-        this.axis2Xml = axis2Xml;
-    }
-
     /**
      * starting all the listeners
      */
     public void start() {
 
+        // validate if we can start
+        validate();
+
         // Register custom protocol handler classpath://
 		try {
 			URL.setURLStreamHandlerFactory(new URLStreamHandlerFactoryImpl());
@@ -91,17 +99,6 @@
 					"Custom URL protocols may not work properly (e.g. classpath://)");
 		}
 
-        if (axis2Repolocation == null) {
-            log.fatal("The Axis2 Repository must be provided");
-            return;
-        }
-        log.info("Using the Axis2 Repository : "
-                           + new File(axis2Repolocation).getAbsolutePath());
-        
-        if (axis2Xml != null) {
-            log.info("Using the axis2.xml : " + new File(axis2Xml).getAbsolutePath());
-        }
-
         try {
             configctx = ConfigurationContextFactory.
                     createConfigurationContextFromFileSystem(axis2Repolocation, axis2Xml);
@@ -111,8 +108,6 @@
                 listenerManager = new ListenerManager();
                 listenerManager.init(configctx);
             }
-            // decide on HTTP port to execute
-            selectPort(configctx);
 
             for (Object o : configctx.getAxisConfiguration().getTransportsIn().keySet()) {
                 
@@ -134,11 +129,14 @@
                 = configctx.getAxisConfiguration().getParameter(SynapseConstants.SYNAPSE_ENV);
             Parameter synCfg
                 = configctx.getAxisConfiguration().getParameter(SynapseConstants.SYNAPSE_CONFIG);
+
             String message = "Unable to initialize the Synapse Configuration : Cannot find the ";
             if (synCfg == null || synCfg.getValue() == null
                 || !(synCfg.getValue() instanceof SynapseConfiguration)) {
                 log.fatal(message + "Synapse Configuration");
                 throw new SynapseException(message + "Synapse Configuration");
+            } else {
+                synConfig = (SynapseConfiguration) synCfg.getValue();
             }
 
             if (synEnv == null || synEnv.getValue() == null
@@ -155,11 +153,13 @@
                         stp.init((SynapseEnvironment) synEnv.getValue());
                     }
                 }
-            }            
+            }
+
             log.info("Ready for processing");
 
         } catch (Throwable t) {
-            log.fatal("Startup failed...", t);
+            log.fatal("Synaps startup failed...", t);
+            throw new SynapseException("Synapse startup failed", t);
         }
     }
 
@@ -192,7 +192,7 @@
                 listenerManager.destroy();
             }
             
-            //we need to call this method to clean the temp files we created.
+            // we need to call this method to clean the temp files we created.
             if (configctx != null) {
                 configctx.terminate();
             }
@@ -202,79 +202,6 @@
     }
 
     /**
-     * Helper method to select a alternate port if the currently selected port is in use
-     * @param configCtx configuration context 
-     */
-    private static void selectPort(ConfigurationContext configCtx) {
-        // check if configured port is available
-        TransportInDescription trsIn = (TransportInDescription)
-                configCtx.getAxisConfiguration().getTransportsIn().get("http");
-
-        if (trsIn != null) {
-
-            int port = DEFAULT_HTTP_PORT;
-            String bindAddress = null;
-
-            String strPort = System.getProperty("port");
-            if (strPort != null) {
-                // port is specified as a VM parameter
-                try {
-                    port = Integer.parseInt(strPort);
-                } catch (NumberFormatException e) {
-                    // user supplied parameter is not a valid integer. so use the port in configuration.
-                    log.error("System property 'port' does not provide a valid integer");
-                }
-            }
-
-            Parameter param = trsIn.getParameter("port");
-            if (param != null && param.getValue() != null) {
-                port = Integer.parseInt(param.getValue().toString());
-            }
-
-            param = trsIn.getParameter(NhttpConstants.BIND_ADDRESS);
-            if (param != null && param.getValue() != null) {
-                bindAddress = ((String) param.getValue()).trim();
-            }
-
-            while (true) {
-                ServerSocket sock = null;
-                try {
-                    if (bindAddress == null) {
-                        sock = new ServerSocket(port);
-                    } else {
-                        sock = new ServerSocket(port, 50, InetAddress.getByName(bindAddress));
-                    }
-                    trsIn.getParameter("port").setValue(Integer.toString(port));
-                    break;
-                } catch (Exception e) {
-                    log.warn("Port " + port + " already in use. Trying alternate");
-                    if (port == DEFAULT_HTTP_PORT) {
-                        port = ALTERNATIVE_HTTP_PORT;
-                    } else {
-                        port++;
-                    }
-                } finally {
-                    if (sock != null) {
-                        try {
-                            sock.close();
-                        } catch (Exception e) {
-                            // do nothing
-                        }
-                    }
-                }
-            }
-        }
-    }
-
-    public ConfigurationContext getConfigurationContext() {
-        return configctx;
-    }
-
-    public void setCallbackStore(Map callbackStore) {
-        this.callbackStore = callbackStore;
-    }
-
-    /**
      * Expose the number of callbacks in the callback store
      * @return the number of callbacks (messages) waiting for responses
      */
@@ -300,4 +227,137 @@
             return urlSH;
         }
     }
+
+    /**
+     * Validate core settings for startup
+     */
+    private void validate() {
+        if (axis2Repolocation == null) {
+            handleFatal("Axis2 repository");
+        } else {
+            log.info("Using the Axis2 Repository : " + new File(axis2Repolocation).getAbsolutePath());
+        }
+
+        if (axis2Xml == null) {
+            handleFatal("axis2.xml location");
+        } else {
+            log.info("Using the axis2.xml : " + new File(axis2Xml).getAbsolutePath());
+        }
+
+        if (synapseHome == null) {
+            handleFatal("Synapse home");
+        } else {
+            log.info("Using Synapse home as : " + synapseHome);
+        }
+
+        if (synapseXMLPath == null) {
+            handleFatal("synapse.xml path");
+        }
+
+        if (resolveRoot == null) {
+            handleFatal("resolve root");
+        } else {
+            log.info("Using resolve.root as : " + resolveRoot);
+        }
+
+        if (serverName == null) {
+            try {
+                serverName = InetAddress.getLocalHost().getHostName();
+            } catch (UnknownHostException ignore) {}
+            log.info("The server name was not specified, defaulting to : " + serverName);
+        }
+
+        log.info("The timeout handler will run every : " + (getTimeoutHandlerInterval()/1000) + "s");
+    }
+
+    public void handleFatal(String msgPre) {
+        String msg = "The " + msgPre + " must be set as a system property or init-parameter";
+        log.fatal(msg);
+        throw new SynapseException(msg);
+    }
+
+    // getters and setters
+    public ConfigurationContext getConfigurationContext() {
+        return configctx;
+    }
+
+    public void setCallbackStore(Map callbackStore) {
+        this.callbackStore = callbackStore;
+    }
+
+    public void setAxis2Repolocation(String axis2Repolocation) {
+        this.axis2Repolocation = axis2Repolocation;
+    }
+
+    public void setAxis2Xml(String axis2Xml) {
+        this.axis2Xml = axis2Xml;
+    }
+
+    public String getSynapseHome() {
+        return synapseHome;
+    }
+
+    public void setSynapseHome(String synapseHome) {
+        this.synapseHome = synapseHome;
+    }
+
+    public String getResolveRoot() {
+        return resolveRoot;
+    }
+
+    public void setResolveRoot(String resolveRoot) {
+        this.resolveRoot = resolveRoot;
+    }
+
+    public String getServerName() {
+        return serverName;
+    }
+
+    public void setServerName(String serverName) {
+        this.serverName = serverName;
+    }
+
+    public String getSynapseXMLPath() {
+        return synapseXMLPath;
+    }
+
+    public void setSynapseXMLPath(String synapseXMLPath) {
+        this.synapseXMLPath = synapseXMLPath;
+    }
+
+    public int getConnectTimeout() {
+        if (synConfig == null) {
+            return (int) SynapseConstants.DEFAULT_GLOBAL_TIMEOUT;
+        } else {
+            return (int) synConfig.getProperty(
+                SynapseConstants.CONNECTTIMEOUT, SynapseConstants.DEFAULT_CONNECTTIMEOUT);
+        }
+    }
+
+    public int getReadTimeout() {
+        if (synConfig == null) {
+            return SynapseConstants.DEFAULT_READTIMEOUT;
+        } else {
+            return (int) synConfig.getProperty(
+                SynapseConstants.READTIMEOUT, SynapseConstants.DEFAULT_READTIMEOUT);
+        }
+    }
+
+    public long getTimeoutHandlerInterval() {
+        if (synConfig == null) {
+            return SynapseConstants.DEFAULT_TIMEOUT_HANDLER_INTERVAL;
+        } else {
+            return synConfig.getProperty(
+                SynapseConstants.TIMEOUT_HANDLER_INTERVAL, SynapseConstants.DEFAULT_TIMEOUT_HANDLER_INTERVAL);
+        }
+    }
+
+    public long getGlobalTimeoutInterval() {
+        if (synConfig == null) {
+            return SynapseConstants.DEFAULT_GLOBAL_TIMEOUT;
+        } else {
+            return synConfig.getProperty(
+                SynapseConstants.GLOBAL_TIMEOUT_INTERVAL, SynapseConstants.DEFAULT_GLOBAL_TIMEOUT);
+        }
+    }
 }
\ No newline at end of file

Modified: synapse/branches/1.2/modules/core/src/main/java/org/apache/synapse/SynapseConstants.java
URL: http://svn.apache.org/viewvc/synapse/branches/1.2/modules/core/src/main/java/org/apache/synapse/SynapseConstants.java?rev=655150&r1=655149&r2=655150&view=diff
==============================================================================
--- synapse/branches/1.2/modules/core/src/main/java/org/apache/synapse/SynapseConstants.java (original)
+++ synapse/branches/1.2/modules/core/src/main/java/org/apache/synapse/SynapseConstants.java Sat May 10 13:19:04 2008
@@ -96,8 +96,6 @@
 
     /** The name of the system property that will hold the Synapse home directory */
     public static final String SYNAPSE_HOME = "synapse.home";
-    /** The default synapse.properties file path */
-    public static final String DEFAULT_PROP_PATH = "synapse.properties";
     /** The name of the system property used to specify/override the Synapse config XML location */
     public static final String SYNAPSE_XML = "synapse.xml";
     /** The name of the system property used to specify/override the Synapse properties location */
@@ -250,9 +248,9 @@
 
     public static final int DEFAULT_CONNECTTIMEOUT = 20000;
 
-    public static final String READTIMEOUT = "Connection.ReadTimeout";
+    public static final String READTIMEOUT = "synapse.connection.read_timeout";
 
-    public static final String CONNECTTIMEOUT = "Connection.ConnectTimeout";
+    public static final String CONNECTTIMEOUT = "synapse.connection.connect_timeout";
 
     /** chunk size and chunk length configuration parameters */
     public static final int DEFAULT_THRESHOLD_CHUNKS = 8;

Modified: synapse/branches/1.2/modules/core/src/main/java/org/apache/synapse/SynapseServer.java
URL: http://svn.apache.org/viewvc/synapse/branches/1.2/modules/core/src/main/java/org/apache/synapse/SynapseServer.java?rev=655150&r1=655149&r2=655150&view=diff
==============================================================================
--- synapse/branches/1.2/modules/core/src/main/java/org/apache/synapse/SynapseServer.java (original)
+++ synapse/branches/1.2/modules/core/src/main/java/org/apache/synapse/SynapseServer.java Sat May 10 13:19:04 2008
@@ -32,21 +32,29 @@
 
     private static final Log log = LogFactory.getLog(SynapseServer.class);
 
+    private static final String USAGE_TXT =
+        "Usage: SynapseServer <axis2_repository> <axis2_xml> <synapse_home> <synapse_xml> <resolve_root>" +
+        "\n Opts: -? this message";
+
     public static void printUsage() {
-        System.out.println("Usage: SynapseServer <repository>");
-        System.out.println(" Opts: -? this message");
+        System.out.println(USAGE_TXT);
         System.exit(1);
     }
 
     public static void main(String[] args) throws Exception {
 
         // first check if we should print usage
-        if (args.length != 1 || !new File(args[0]).exists()) {
+        if (args.length != 5) {
             printUsage();
         }
 
         ServerManager serverManager = ServerManager.getInstance();
         serverManager.setAxis2Repolocation(args[0]);
+        serverManager.setAxis2Xml(args[1]);
+        serverManager.setSynapseHome(args[2]);
+        serverManager.setSynapseXMLPath(args[3]);
+        serverManager.setResolveRoot(args[4]);
+        
         serverManager.start();
         addShutdownHook();
     }

Modified: synapse/branches/1.2/modules/core/src/main/java/org/apache/synapse/config/SynapseConfigUtils.java
URL: http://svn.apache.org/viewvc/synapse/branches/1.2/modules/core/src/main/java/org/apache/synapse/config/SynapseConfigUtils.java?rev=655150&r1=655149&r2=655150&view=diff
==============================================================================
--- synapse/branches/1.2/modules/core/src/main/java/org/apache/synapse/config/SynapseConfigUtils.java (original)
+++ synapse/branches/1.2/modules/core/src/main/java/org/apache/synapse/config/SynapseConfigUtils.java Sat May 10 13:19:04 2008
@@ -25,6 +25,7 @@
 import org.apache.commons.logging.LogFactory;
 import org.apache.synapse.SynapseConstants;
 import org.apache.synapse.SynapseException;
+import org.apache.synapse.ServerManager;
 import org.apache.synapse.util.SynapseBinaryDataSource;
 import org.xml.sax.InputSource;
 
@@ -134,7 +135,7 @@
                         log.debug("Can not open a connection to the URL with a path :" +
                                 path);
                     }
-                    String synapseHome = System.getProperty(SynapseConstants.SYNAPSE_HOME);
+                    String synapseHome = ServerManager.getInstance().getSynapseHome();
                     if (synapseHome != null) {
                         if (log.isDebugEnabled()) {
                             log.debug("Trying  to resolve an absolute path of the " +
@@ -297,29 +298,11 @@
     }
 
     private static int getReadTimeout() {
-        //getting  read timeout
-        String readTO = System.getProperty(SynapseConstants.READTIMEOUT);
-        int readTimeout = SynapseConstants.DEFAULT_READTIMEOUT;
-        if (readTO != null && !"".equals(readTO)) {
-            try {
-                readTimeout = Integer.parseInt(readTO);
-            } catch (NumberFormatException ignored) {
-            }
-        }
-        return readTimeout;
+        return ServerManager.getInstance().getReadTimeout();
     }
 
     private static int getConnectionTimeout() {
-        //getting  connection timeout
-        String connectionTO = System.getProperty(SynapseConstants.CONNECTTIMEOUT);
-        int connectionTimeout = SynapseConstants.DEFAULT_CONNECTTIMEOUT;
-        if (connectionTO != null && !"".equals(connectionTO)) {
-            try {
-                connectionTimeout = Integer.parseInt(connectionTO);
-            } catch (NumberFormatException ignored) {
-            }
-        }
-        return connectionTimeout;
+        return ServerManager.getInstance().getConnectTimeout();
     }
 
     private static void handleException(String msg, Exception e) {
@@ -369,7 +352,7 @@
                         log.debug("Can not open a connection to the URL with a path :" +
                                 path);
                     }
-                    String synapseHome = System.getProperty(SynapseConstants.SYNAPSE_HOME);
+                    String synapseHome = ServerManager.getInstance().getSynapseHome();
                     if (synapseHome != null) {
                         if (synapseHome.endsWith("/")) {
                             synapseHome = synapseHome.substring(0, synapseHome.lastIndexOf("/"));

Modified: synapse/branches/1.2/modules/core/src/main/java/org/apache/synapse/config/SynapseConfiguration.java
URL: http://svn.apache.org/viewvc/synapse/branches/1.2/modules/core/src/main/java/org/apache/synapse/config/SynapseConfiguration.java?rev=655150&r1=655149&r2=655150&view=diff
==============================================================================
--- synapse/branches/1.2/modules/core/src/main/java/org/apache/synapse/config/SynapseConfiguration.java (original)
+++ synapse/branches/1.2/modules/core/src/main/java/org/apache/synapse/config/SynapseConfiguration.java Sat May 10 13:19:04 2008
@@ -710,6 +710,29 @@
     }
 
     /**
+     * Gets the String representation of the property value if there is a property for the
+     * given propKey or returns the default value passed
+     *
+     * @param propKey - key for the property lookup
+     * @param def     - default value
+     * @return String representation of the property value with the given key or the def value
+     */
+    public long getProperty(String propKey, long def) {
+        String val = System.getProperty(propKey);
+        if (val == null) {
+            val = properties.getProperty(propKey);
+        }
+
+        if (val != null) {
+            if (log.isDebugEnabled()) {
+                log.debug("Using synapse tuning parameter : " + propKey + " = " + val);
+            }
+            return Long.valueOf(val);
+        }
+        return def;
+    }
+
+    /**
      * Gets the propety value if the property specified by the propKey is there or null else
      *
      * @param propKey - key for the property lookup

Modified: synapse/branches/1.2/modules/core/src/main/java/org/apache/synapse/config/SynapseConfigurationBuilder.java
URL: http://svn.apache.org/viewvc/synapse/branches/1.2/modules/core/src/main/java/org/apache/synapse/config/SynapseConfigurationBuilder.java?rev=655150&r1=655149&r2=655150&view=diff
==============================================================================
--- synapse/branches/1.2/modules/core/src/main/java/org/apache/synapse/config/SynapseConfigurationBuilder.java (original)
+++ synapse/branches/1.2/modules/core/src/main/java/org/apache/synapse/config/SynapseConfigurationBuilder.java Sat May 10 13:19:04 2008
@@ -89,13 +89,10 @@
     }
 
     private static Properties loadSynapseProperties() {
-        String props = System.getProperty(SynapseConstants.SYNAPSE_PROPERTIES);
-        if (props == null) {
-            props = SynapseConstants.DEFAULT_PROP_PATH;
-        }
         try {
             Properties properties = new Properties();
-            properties.load(Thread.currentThread().getContextClassLoader().getResourceAsStream(props));
+            properties.load(Thread.currentThread().getContextClassLoader().
+                getResourceAsStream(SynapseConstants.SYNAPSE_PROPERTIES));
             return properties;
         } catch (Exception e) {
             log.info("Using the default tuning parameters for Synapse");

Modified: synapse/branches/1.2/modules/core/src/main/java/org/apache/synapse/config/xml/MediatorSerializerFinder.java
URL: http://svn.apache.org/viewvc/synapse/branches/1.2/modules/core/src/main/java/org/apache/synapse/config/xml/MediatorSerializerFinder.java?rev=655150&r1=655149&r2=655150&view=diff
==============================================================================
--- synapse/branches/1.2/modules/core/src/main/java/org/apache/synapse/config/xml/MediatorSerializerFinder.java (original)
+++ synapse/branches/1.2/modules/core/src/main/java/org/apache/synapse/config/xml/MediatorSerializerFinder.java Sat May 10 13:19:04 2008
@@ -103,7 +103,7 @@
      */
     private void registerExtensions() {
         if (log.isDebugEnabled()) {
-            log.debug("Registering mediator extensions found in the classpath : " + System.getProperty("java.class.path"));
+            log.debug("Registering mediator extensions found in the classpath.. ");
         }
         // register MediatorSerializer extensions
         Iterator it = Service.providers(MediatorSerializer.class);

Modified: synapse/branches/1.2/modules/core/src/main/java/org/apache/synapse/config/xml/endpoints/WSDLEndpointFactory.java
URL: http://svn.apache.org/viewvc/synapse/branches/1.2/modules/core/src/main/java/org/apache/synapse/config/xml/endpoints/WSDLEndpointFactory.java?rev=655150&r1=655149&r2=655150&view=diff
==============================================================================
--- synapse/branches/1.2/modules/core/src/main/java/org/apache/synapse/config/xml/endpoints/WSDLEndpointFactory.java (original)
+++ synapse/branches/1.2/modules/core/src/main/java/org/apache/synapse/config/xml/endpoints/WSDLEndpointFactory.java Sat May 10 13:19:04 2008
@@ -25,6 +25,7 @@
 import org.apache.axiom.om.OMNode;
 import org.apache.axis2.description.WSDL2Constants;
 import org.apache.synapse.SynapseConstants;
+import org.apache.synapse.ServerManager;
 import org.apache.synapse.config.SynapseConfigUtils;
 import org.apache.synapse.config.xml.endpoints.utils.WSDL11EndpointBuilder;
 import org.apache.synapse.endpoints.Endpoint;
@@ -126,7 +127,7 @@
                     (new QName(org.apache.axis2.namespace.Constants.NS_URI_WSDL11, "definitions"));
             if (endpoint == null && definitionElement != null) {
                 wsdlEndpoint.setWsdlDoc(definitionElement);
-                String resolveRoot = System.getProperty(SynapseConstants.RESOLVE_ROOT);
+                String resolveRoot = ServerManager.getInstance().getResolveRoot();
                 String baseUri = "file:./";
                 if (resolveRoot != null) {
                     baseUri = resolveRoot.trim();

Modified: synapse/branches/1.2/modules/core/src/main/java/org/apache/synapse/core/axis2/ProxyService.java
URL: http://svn.apache.org/viewvc/synapse/branches/1.2/modules/core/src/main/java/org/apache/synapse/core/axis2/ProxyService.java?rev=655150&r1=655149&r2=655150&view=diff
==============================================================================
--- synapse/branches/1.2/modules/core/src/main/java/org/apache/synapse/core/axis2/ProxyService.java (original)
+++ synapse/branches/1.2/modules/core/src/main/java/org/apache/synapse/core/axis2/ProxyService.java Sat May 10 13:19:04 2008
@@ -31,6 +31,7 @@
 import org.apache.neethi.PolicyEngine;
 import org.apache.synapse.SynapseConstants;
 import org.apache.synapse.SynapseException;
+import org.apache.synapse.ServerManager;
 import org.apache.synapse.config.SynapseConfigUtils;
 import org.apache.synapse.config.SynapseConfiguration;
 import org.apache.synapse.core.SynapseEnvironment;
@@ -305,7 +306,7 @@
 
                         wsdlToAxisServiceBuilder.setBaseUri(
                                 wsdlURI != null ? wsdlURI.toString() :
-                                        System.getProperty(SynapseConstants.SYNAPSE_HOME));
+                                        ServerManager.getInstance().getSynapseHome());
 
                         if (trace()) {
                             trace.info("Setting up custom resolvers");

Modified: synapse/branches/1.2/modules/core/src/main/java/org/apache/synapse/core/axis2/SynapseCallbackReceiver.java
URL: http://svn.apache.org/viewvc/synapse/branches/1.2/modules/core/src/main/java/org/apache/synapse/core/axis2/SynapseCallbackReceiver.java?rev=655150&r1=655149&r2=655150&view=diff
==============================================================================
--- synapse/branches/1.2/modules/core/src/main/java/org/apache/synapse/core/axis2/SynapseCallbackReceiver.java (original)
+++ synapse/branches/1.2/modules/core/src/main/java/org/apache/synapse/core/axis2/SynapseCallbackReceiver.java Sat May 10 13:19:04 2008
@@ -74,11 +74,7 @@
         TimeoutHandler timeoutHandler = new TimeoutHandler(callbackStore);
         
         Timer timeOutTimer = synCfg.getSynapseTimer();
-        long timeoutHandlerInterval = SynapseConstants.DEFAULT_TIMEOUT_HANDLER_INTERVAL;
-        try {
-            timeoutHandlerInterval = Long.parseLong(
-                System.getProperty(SynapseConstants.TIMEOUT_HANDLER_INTERVAL));
-        } catch (Exception ignore) {}
+        long timeoutHandlerInterval = ServerManager.getInstance().getTimeoutHandlerInterval();
 
         // schedule timeout handler to run every n seconds (n : specified or defaults to 15s)
         timeOutTimer.schedule(timeoutHandler, 0, timeoutHandlerInterval);

Modified: synapse/branches/1.2/modules/core/src/main/java/org/apache/synapse/core/axis2/SynapseInitializationModule.java
URL: http://svn.apache.org/viewvc/synapse/branches/1.2/modules/core/src/main/java/org/apache/synapse/core/axis2/SynapseInitializationModule.java?rev=655150&r1=655149&r2=655150&view=diff
==============================================================================
--- synapse/branches/1.2/modules/core/src/main/java/org/apache/synapse/core/axis2/SynapseInitializationModule.java (original)
+++ synapse/branches/1.2/modules/core/src/main/java/org/apache/synapse/core/axis2/SynapseInitializationModule.java Sat May 10 13:19:04 2008
@@ -32,6 +32,7 @@
 import org.apache.neethi.Policy;
 import org.apache.synapse.SynapseConstants;
 import org.apache.synapse.SynapseException;
+import org.apache.synapse.ServerManager;
 import org.apache.synapse.config.SynapseConfiguration;
 import org.apache.synapse.config.SynapseConfigurationBuilder;
 
@@ -107,7 +108,7 @@
         // this server name is given by system property SynapseServerName
         // otherwise take host-name
         // if nothing found assume localhost
-        String thisServerName = System.getProperty(SynapseConstants.SYNAPSE_SERVER_NAME);
+        String thisServerName = ServerManager.getInstance().getServerName();
         if(thisServerName == null || thisServerName.equals("")) {
           try {
             InetAddress addr = InetAddress.getLocalHost();
@@ -154,16 +155,12 @@
         AxisConfiguration axisConfiguration = cfgCtx.getAxisConfiguration();
         SynapseConfiguration synapseConfiguration;
 
-        String config = System.getProperty(SynapseConstants.SYNAPSE_XML);
+        String config = ServerManager.getInstance().getSynapseXMLPath();
 
         if (config != null) {
-            if (log.isDebugEnabled()) {
-                log.debug("System property '" + SynapseConstants.SYNAPSE_XML +
-                        "' specifies Synapse configuration as " + config);
-            }
             synapseConfiguration = SynapseConfigurationBuilder.getConfiguration(config);
         } else {
-            log.warn("System property '" + SynapseConstants.SYNAPSE_XML +
+            log.warn("System property or init-parameter '" + SynapseConstants.SYNAPSE_XML +
                 "' is not specified. Using default configuration..");
             synapseConfiguration = SynapseConfigurationBuilder.getDefaultConfiguration();
         }

Modified: synapse/branches/1.2/modules/core/src/main/java/org/apache/synapse/core/axis2/SynapseStartUpServlet.java
URL: http://svn.apache.org/viewvc/synapse/branches/1.2/modules/core/src/main/java/org/apache/synapse/core/axis2/SynapseStartUpServlet.java?rev=655150&r1=655149&r2=655150&view=diff
==============================================================================
--- synapse/branches/1.2/modules/core/src/main/java/org/apache/synapse/core/axis2/SynapseStartUpServlet.java (original)
+++ synapse/branches/1.2/modules/core/src/main/java/org/apache/synapse/core/axis2/SynapseStartUpServlet.java Sat May 10 13:19:04 2008
@@ -40,105 +40,72 @@
 public class SynapseStartUpServlet extends HttpServlet {
 
     private static Log log = LogFactory.getLog(SynapseStartUpServlet.class);
+    private ServletContext servletContext = null;
+    private static final String ALREADY_INITED = "synapseAlreadyInited";
 
     public void init() throws ServletException {
         super.init();
     }
 
     public void init(ServletConfig servletConfig) throws ServletException {
-        ServerManager serverManager = ServerManager.getInstance();
-        ServletContext servletContext = servletConfig.getServletContext();
-        if ("true".equals(servletContext.getAttribute("hasAlreadyInit"))) {
-            return;
-        }
-        String synapseHome = resolveSynapseHome(servletConfig);
-        //Setting the all required system properties
-        if (synapseHome != null) {
-            if (synapseHome.endsWith(File.separator)) {
-                synapseHome = synapseHome.substring(0, synapseHome.lastIndexOf(File.separator));
-            }
-            System.setProperty(SynapseConstants.SYNAPSE_HOME, synapseHome);
-            //setting axis2 repository location
-            String axis2Repo = System.getProperty(org.apache.axis2.Constants.AXIS2_REPO);
-            if (axis2Repo == null) {
-                ServerManager.getInstance().setAxis2Repolocation(synapseHome + "/WEB-INF" +
-                    File.separator + "repository");
-                System.setProperty(org.apache.axis2.Constants.AXIS2_REPO,
-                    synapseHome + "/WEB-INF" +
-                        File.separator + "repository");
-            }
-            //setting axis2 configuration location
-            String axis2Xml = System.getProperty(org.apache.axis2.Constants.AXIS2_CONF);
-            if (axis2Xml == null) {
-                System.setProperty(org.apache.axis2.Constants.AXIS2_CONF,
-                    synapseHome + File.separator
-                        + "WEB-INF/conf"
-                        + File.separator + org.apache.axis2.Constants.AXIS2_CONF);
-            }
-            //setting synapse configuration location
-            String synapseXml = System.getProperty(org.apache.synapse.SynapseConstants.SYNAPSE_XML);
-            if (synapseXml == null) {
-                System.setProperty(org.apache.synapse.SynapseConstants.SYNAPSE_XML,
-                    synapseHome + File.separator
-                        + "WEB-INF/conf"
-                        + File.separator + org.apache.synapse.SynapseConstants.SYNAPSE_XML);
 
-            }
-        } else {
-            log.fatal("Can not resolve synapse home  : startup failed");
+        servletContext = servletConfig.getServletContext();
+        if (Boolean.TRUE.equals(servletContext.getAttribute(ALREADY_INITED))) {
             return;
         }
+
+        ServerManager serverManager = ServerManager.getInstance();
+        serverManager.setSynapseHome(loadParameter(servletConfig, SynapseConstants.SYNAPSE_HOME));
+        serverManager.setSynapseXMLPath(loadParameter(servletConfig, SynapseConstants.SYNAPSE_XML));
+        serverManager.setResolveRoot(loadParameter(servletConfig, SynapseConstants.RESOLVE_ROOT));
+        serverManager.setAxis2Repolocation(loadParameter(servletConfig, org.apache.axis2.Constants.AXIS2_REPO));
+        serverManager.setAxis2Xml(loadParameter(servletConfig, org.apache.axis2.Constants.AXIS2_CONF));
+
         serverManager.start();
-        servletContext.setAttribute("hasAlreadyInit", "true");
+        servletContext.setAttribute(ALREADY_INITED, Boolean.TRUE);
     }
 
 
     protected void doGet(HttpServletRequest request,
-                         HttpServletResponse response) throws ServletException,
-        IOException {
+                         HttpServletResponse response) throws ServletException, IOException {
     }
 
     protected void doPost(HttpServletRequest request,
-                          HttpServletResponse response) throws ServletException,
-        IOException {
+                          HttpServletResponse response) throws ServletException, IOException {
     }
 
     public void destroy() {
         try {
             ServerManager serverManager = ServerManager.getInstance();
-            serverManager.stop(); // will stop all started  listeners
-        } catch (Exception ignored) {
+            serverManager.stop();
+            servletContext.removeAttribute(ALREADY_INITED);
+        } catch (Exception e) {
+            log.error("Error stopping the Synapse listener manager", e);
         }
     }
 
-    private String resolveSynapseHome(ServletConfig servletConfig) {
-        // If synapse.home has provided as init-param,the it will take as synapse home
-        String synapseHomeAsParam = servletConfig.getInitParameter(SynapseConstants.SYNAPSE_HOME);
-        if (synapseHomeAsParam != null) {
-            if (synapseHomeAsParam.endsWith(File.separator)) {
-                return synapseHomeAsParam.substring(0,
-                        synapseHomeAsParam.lastIndexOf(File.separator));
+    private String loadParameter(ServletConfig servletConfig, String name)
+        throws ServletException {
+
+        if (System.getProperty(name) == null) {
+
+            String value = servletConfig.getInitParameter(name);
+            log.debug("Init parameter '" + name + "' : " + value);
+
+            if (value == null || value.trim().length() == 0) {
+                handleException("A valid system property or init parameter '" + name + "' is required");
             } else {
-                return synapseHomeAsParam;
-            }
-        }
-        //if synapse.home has set as a system property , then use it
-        String synapseHome = System.getProperty(SynapseConstants.SYNAPSE_HOME);
-        //Setting the all required system properties
-        if (synapseHome == null || "".equals(synapseHome)) {
-            ServletContext servletContext = servletConfig.getServletContext();
-            //if synapse.home stil can not find ,then resolve it using real path of the WEB-INF
-            String webinfPath = servletContext.getRealPath("WEB-INF");
-            if (webinfPath != null) {
-                synapseHome = webinfPath.substring(0, webinfPath.lastIndexOf("WEB-INF"));
-                if (synapseHome != null) {
-                    if (synapseHome.endsWith(File.separator)) {
-                        synapseHome = synapseHome.substring(0,
-                                synapseHome.lastIndexOf(File.separator));
-                    }
-                }
+                return value;
             }
+        } else {
+            return System.getProperty(name);
         }
-        return synapseHome;
+        return null;
+    }
+
+    private void handleException(String message) throws ServletException {
+        log.error(message);
+        log(message);
+        throw new ServletException(message);
     }
 }

Modified: synapse/branches/1.2/modules/core/src/main/java/org/apache/synapse/core/axis2/TimeoutHandler.java
URL: http://svn.apache.org/viewvc/synapse/branches/1.2/modules/core/src/main/java/org/apache/synapse/core/axis2/TimeoutHandler.java?rev=655150&r1=655149&r2=655150&view=diff
==============================================================================
--- synapse/branches/1.2/modules/core/src/main/java/org/apache/synapse/core/axis2/TimeoutHandler.java (original)
+++ synapse/branches/1.2/modules/core/src/main/java/org/apache/synapse/core/axis2/TimeoutHandler.java Sat May 10 13:19:04 2008
@@ -24,6 +24,7 @@
 import org.apache.synapse.FaultHandler;
 import org.apache.synapse.MessageContext;
 import org.apache.synapse.SynapseConstants;
+import org.apache.synapse.ServerManager;
 
 import java.util.Iterator;
 import java.util.Map;
@@ -59,10 +60,7 @@
 
     public TimeoutHandler(Map callbacks) {
         this.callbackStore = callbacks;
-        try {
-            globalTimeout = Long.parseLong(
-                System.getProperty(SynapseConstants.GLOBAL_TIMEOUT_INTERVAL));
-        } catch (Exception ignore) {}
+        globalTimeout = ServerManager.getInstance().getGlobalTimeoutInterval();
         log.info("This engine will expire all callbacks after : " + (globalTimeout /1000) +
             " seconds, irrespective of the timeout action, after the specified or optional timeout");
     }

Modified: synapse/branches/1.2/modules/core/src/main/java/org/apache/synapse/startup/quartz/SimpleQuartz.java
URL: http://svn.apache.org/viewvc/synapse/branches/1.2/modules/core/src/main/java/org/apache/synapse/startup/quartz/SimpleQuartz.java?rev=655150&r1=655149&r2=655150&view=diff
==============================================================================
--- synapse/branches/1.2/modules/core/src/main/java/org/apache/synapse/startup/quartz/SimpleQuartz.java (original)
+++ synapse/branches/1.2/modules/core/src/main/java/org/apache/synapse/startup/quartz/SimpleQuartz.java Sat May 10 13:19:04 2008
@@ -34,6 +34,7 @@
 import org.apache.synapse.core.SynapseEnvironment;
 import org.apache.synapse.SynapseConstants;
 import org.apache.synapse.SynapseException;
+import org.apache.synapse.ServerManager;
 import org.apache.synapse.startup.AbstractStartup;
 import org.quartz.CronTrigger;
 import org.quartz.JobDataMap;
@@ -92,7 +93,7 @@
         // this server name given by system property SynapseServerName
         // otherwise take host-name
         // else assume localhost
-        String thisServerName = System.getProperty(SynapseConstants.SYNAPSE_SERVER_NAME);
+        String thisServerName = ServerManager.getInstance().getServerName();
         if(thisServerName == null || thisServerName.equals("")) {
           try {
             InetAddress addr = InetAddress.getLocalHost();

Modified: synapse/branches/1.2/modules/core/src/test/java/org/apache/synapse/mediators/db/DBLookupMediatorTest.java
URL: http://svn.apache.org/viewvc/synapse/branches/1.2/modules/core/src/test/java/org/apache/synapse/mediators/db/DBLookupMediatorTest.java?rev=655150&r1=655149&r2=655150&view=diff
==============================================================================
--- synapse/branches/1.2/modules/core/src/test/java/org/apache/synapse/mediators/db/DBLookupMediatorTest.java (original)
+++ synapse/branches/1.2/modules/core/src/test/java/org/apache/synapse/mediators/db/DBLookupMediatorTest.java Sat May 10 13:19:04 2008
@@ -28,6 +28,7 @@
 import org.apache.synapse.mediators.TestUtils;
 
 import java.sql.SQLException;
+import java.io.File;
 
 public class DBLookupMediatorTest extends AbstractMediatorTestCase {
 
@@ -52,7 +53,9 @@
 
             protected void setUp() throws Exception {
 
-                String tempPath = System.getProperty("java.io.tmpdir");
+                File temp = File.createTempFile("temp", "delete");
+                temp.deleteOnExit();
+                String tempPath = temp.getParent();
 
                 lookup = (DBLookupMediator)
                     new DBLookupMediatorFactory().createMediator(createOMElement(

Modified: synapse/branches/1.2/modules/core/src/test/java/org/apache/synapse/mediators/db/DBReportMediatorTest.java
URL: http://svn.apache.org/viewvc/synapse/branches/1.2/modules/core/src/test/java/org/apache/synapse/mediators/db/DBReportMediatorTest.java?rev=655150&r1=655149&r2=655150&view=diff
==============================================================================
--- synapse/branches/1.2/modules/core/src/test/java/org/apache/synapse/mediators/db/DBReportMediatorTest.java (original)
+++ synapse/branches/1.2/modules/core/src/test/java/org/apache/synapse/mediators/db/DBReportMediatorTest.java Sat May 10 13:19:04 2008
@@ -30,6 +30,7 @@
 import java.sql.SQLException;
 import java.sql.Connection;
 import java.sql.ResultSet;
+import java.io.File;
 
 public class DBReportMediatorTest extends AbstractMediatorTestCase {    
 
@@ -57,7 +58,9 @@
 
             protected void setUp() throws Exception {
 
-                String tempPath = System.getProperty("java.io.tmpdir");
+                File temp = File.createTempFile("temp", "delete");
+                temp.deleteOnExit();
+                String tempPath = temp.getParent();
 
                 report = (DBReportMediator)
                     new DBReportMediatorFactory().createMediator(createOMElement(

Modified: synapse/branches/1.2/modules/core/src/test/java/org/apache/synapse/n2n/SynapseCommodityServiceTest.java
URL: http://svn.apache.org/viewvc/synapse/branches/1.2/modules/core/src/test/java/org/apache/synapse/n2n/SynapseCommodityServiceTest.java?rev=655150&r1=655149&r2=655150&view=diff
==============================================================================
--- synapse/branches/1.2/modules/core/src/test/java/org/apache/synapse/n2n/SynapseCommodityServiceTest.java (original)
+++ synapse/branches/1.2/modules/core/src/test/java/org/apache/synapse/n2n/SynapseCommodityServiceTest.java Sat May 10 13:19:04 2008
@@ -37,6 +37,7 @@
 import org.apache.axis2.engine.MessageReceiver;
 import org.apache.axis2.transport.TransportListener;
 import org.apache.synapse.SynapseConstants;
+import org.apache.synapse.ServerManager;
 import org.apache.synapse.util.xpath.SynapseXPath;
 import org.apache.synapse.utils.Services;
 
@@ -49,9 +50,9 @@
 
     protected void setUp() throws java.lang.Exception {
         // Initializing Synapse repository
-        System.setProperty(SynapseConstants.SYNAPSE_XML,
+        ServerManager.getInstance().setSynapseXMLPath(
                            "./../../repository/conf/sample/resources/misc/synapse.xml");
-        System.setProperty(org.apache.axis2.Constants.AXIS2_CONF,
+        ServerManager.getInstance().setAxis2Xml(
                            "./../../repository/conf/axis2.xml");
 
         findAndReplace(

Modified: synapse/branches/1.2/modules/handler/src/main/java/org/apache/synapse/handler/SynapseModule.java
URL: http://svn.apache.org/viewvc/synapse/branches/1.2/modules/handler/src/main/java/org/apache/synapse/handler/SynapseModule.java?rev=655150&r1=655149&r2=655150&view=diff
==============================================================================
--- synapse/branches/1.2/modules/handler/src/main/java/org/apache/synapse/handler/SynapseModule.java (original)
+++ synapse/branches/1.2/modules/handler/src/main/java/org/apache/synapse/handler/SynapseModule.java Sat May 10 13:19:04 2008
@@ -29,6 +29,7 @@
 import org.apache.neethi.Policy;
 import org.apache.synapse.SynapseConstants;
 import org.apache.synapse.SynapseException;
+import org.apache.synapse.ServerManager;
 import org.apache.synapse.config.SynapseConfiguration;
 import org.apache.synapse.core.axis2.SynapseInitializationModule;
 import org.apache.synapse.core.SynapseEnvironment;
@@ -67,10 +68,10 @@
     public void init(ConfigurationContext configurationContext,
                      AxisModule axisModule) throws AxisFault {
         if (System.getProperty(SynapseConstants.SYNAPSE_XML) == null) {
-            System.setProperty(SynapseConstants.SYNAPSE_XML, configurationContext.
+            ServerManager.getInstance().setSynapseXMLPath(configurationContext.
                     getAxisConfiguration().getRepository().getPath() + "/conf/synapse.xml");
         }
-        if (new File(System.getProperty(SynapseConstants.SYNAPSE_XML)).exists()) {
+        if (new File(ServerManager.getInstance().getSynapseXMLPath()).exists()) {
             initializationModule = new org.apache.synapse.core.axis2.SynapseInitializationModule();
             initializationModule.init(configurationContext, axisModule);
 
@@ -96,7 +97,7 @@
         } else {
             handleException("Unable to initialize the Synapse initializationModule. Couldn't " +
                     "find the configuration file in the location "
-                    + System.getProperty(SynapseConstants.SYNAPSE_XML));
+                    + ServerManager.getInstance().getSynapseXMLPath());
         }
     }
 

Modified: synapse/branches/1.2/repository/conf/sample/resources/misc/server/axis2.xml
URL: http://svn.apache.org/viewvc/synapse/branches/1.2/repository/conf/sample/resources/misc/server/axis2.xml?rev=655150&r1=655149&r2=655150&view=diff
==============================================================================
--- synapse/branches/1.2/repository/conf/sample/resources/misc/server/axis2.xml (original)
+++ synapse/branches/1.2/repository/conf/sample/resources/misc/server/axis2.xml Sat May 10 13:19:04 2008
@@ -218,7 +218,7 @@
         </parameter>
         <parameter name="truststore" locked="false">
             <TrustStore>
-                <Location>../../lib/strust.jks</Location>
+                <Location>../../lib/trust.jks</Location>
                 <Type>JKS</Type>
                 <Password>password</Password>
             </TrustStore>

Modified: synapse/branches/1.2/repository/conf/web.xml
URL: http://svn.apache.org/viewvc/synapse/branches/1.2/repository/conf/web.xml?rev=655150&r1=655149&r2=655150&view=diff
==============================================================================
--- synapse/branches/1.2/repository/conf/web.xml (original)
+++ synapse/branches/1.2/repository/conf/web.xml Sat May 10 13:19:04 2008
@@ -30,12 +30,30 @@
     <servlet>
         <servlet-name>StartUpServlet</servlet-name>
         <servlet-class>org.apache.synapse.core.axis2.SynapseStartUpServlet</servlet-class>
-        <!-- synapse.home parameter is optinal. if set this,then it take as the synapse.home
-         This value must contains the absolute path to the syapase home  -->
-        <!--<init-param>-->
-            <!--<param-name>synapse.home</param-name>-->
-            <!--<param-value>@synapse.home@</param-value>-->
-        <!--</init-param>-->
+
+        <!-- The following init parameters are *required* to start the ESB -->
+        <!-- They must be configured correctly here, or made available as Java System Properties -->
+        <init-param>
+            <param-name>synapse.home</param-name>
+            <param-value>.</param-value>
+        </init-param>
+        <init-param>
+            <param-name>synapse.xml</param-name>
+            <param-value>webapp/WEB-INF/classes/conf/synapse.xml</param-value>
+        </init-param>
+        <init-param>
+            <param-name>axis2.repo</param-name>
+            <param-value>repository</param-value>
+        </init-param>
+        <init-param>
+            <param-name>axis2.xml</param-name>
+            <param-value>webapp/WEB-INF/classes/conf/axis2.xml</param-value>
+        </init-param>
+        <init-param>
+            <param-name>resolve.root</param-name>
+            <param-value>repository</param-value>
+        </init-param>
+
         <load-on-startup>1</load-on-startup>
     </servlet>
 

Modified: synapse/branches/1.2/repository/conf/wrapper.conf
URL: http://svn.apache.org/viewvc/synapse/branches/1.2/repository/conf/wrapper.conf?rev=655150&r1=655149&r2=655150&view=diff
==============================================================================
--- synapse/branches/1.2/repository/conf/wrapper.conf (original)
+++ synapse/branches/1.2/repository/conf/wrapper.conf Sat May 10 13:19:04 2008
@@ -26,18 +26,10 @@
 # Java Library Path (location of Wrapper.DLL or libwrapper.so)
 wrapper.java.library.path.1=lib
 
-
 # Java Additional Parameters
-wrapper.java.additional.1=-Dsynapse.xml=repository/conf/synapse.xml
-wrapper.java.additional.2=-Daxis2.xml=repository/conf/axis2.xml
-wrapper.java.additional.3=-Daxis2.repo=repository
-wrapper.java.additional.4=-Djava.endorsed.dirs=lib/endorsed
-wrapper.java.additional.5=-Dsynapse.home=.
-wrapper.java.additional.6=-Dorg.apache.xerces.xni.parser.XMLParserConfiguration=org.apache.xerces.parsers.XMLGrammarCachingConfiguration
-wrapper.java.additional.7=-Dlog4j.configuration=file:lib/log4j.properties
-wrapper.java.additional.8=-Djava.io.tmpdir=work/temp/synapse
-wrapper.java.additional.9=-Dresolve.root=repository
-wrapper.java.additional.10=
+wrapper.java.additional.1=-Dorg.apache.xerces.xni.parser.XMLParserConfiguration=org.apache.xerces.parsers.XMLGrammarCachingConfiguration
+wrapper.java.additional.2=-Djava.endorsed.dirs=lib/endorsed
+wrapper.java.additional.3=-Djava.io.tmpdir=work/temp/synapse
 
 # Initial Java Heap Size (in MB)
 wrapper.java.initmemory=128
@@ -48,6 +40,11 @@
 # Application parameters.  Add parameters as needed starting from 1
 wrapper.app.parameter.1=org.apache.synapse.SynapseServer
 wrapper.app.parameter.2=repository
+wrapper.app.parameter.3=repository/conf/axis2.xml
+wrapper.app.parameter.4=.
+wrapper.app.parameter.5=repository/conf/synapse.xml
+wrapper.app.parameter.6=repository
+
 
 #********************************************************************
 # Wrapper Logging Properties

Modified: synapse/branches/1.2/src/main/bin/synapse.bat
URL: http://svn.apache.org/viewvc/synapse/branches/1.2/src/main/bin/synapse.bat?rev=655150&r1=655149&r2=655150&view=diff
==============================================================================
--- synapse/branches/1.2/src/main/bin/synapse.bat (original)
+++ synapse/branches/1.2/src/main/bin/synapse.bat Sat May 10 13:19:04 2008
@@ -20,7 +20,7 @@
 rem %~dp0 is expanded pathname of the current script under NT
 set SYNAPSE_HOME=%~dps0..
 
-set _SYNAPSE_XML=-Dsynapse.xml="%SYNAPSE_HOME%\repository\conf\synapse.xml"
+set _SYNAPSE_XML="%SYNAPSE_HOME%\repository\conf\synapse.xml"
 set _XDEBUG=
 
 rem Slurp the command line arguments. This loop allows for an unlimited number
@@ -36,14 +36,13 @@
 rem is there is a -xdebug in the options
 :xdebug
 
-
 set _XDEBUG="wrapper.java.additional.10=-Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=8000"
 shift
 goto setupArgs
 
 :SYNAPSESample
 shift
-set _SYNAPSE_XML=-Dsynapse.xml="%SYNAPSE_HOME%\repository\conf\sample\synapse_sample_%1.xml"
+set _SYNAPSE_XML="%SYNAPSE_HOME%\repository\conf\sample\synapse_sample_%1.xml"
 shift
 goto setupArgs
 
@@ -74,7 +73,6 @@
 echo "Starting WSO2 Enterprise Service Bus ..."
 echo Using SYNAPSE_HOME:        %SYNAPSE_HOME%
 echo Using JAVA_HOME:       %JAVA_HOME%
-echo Using SYNAPSE_XML:     %_SYNAPSE_XML%
 
 rem Decide on the wrapper binary.
 set _WRAPPER_BASE=wrapper
@@ -102,7 +100,7 @@
 rem Start the Wrapper
 rem
 :startup
-"%_WRAPPER_EXE%" -c %_WRAPPER_CONF% wrapper.java.additional.1=%_SYNAPSE_XML% %_XDEBUG%
+"%_WRAPPER_EXE%" -c %_WRAPPER_CONF% wrapper.app.parameter.5=%_SYNAPSE_XML% %_XDEBUG%
 
 if not errorlevel 1 goto :eof
 pause

Modified: synapse/branches/1.2/src/main/bin/synapse.sh
URL: http://svn.apache.org/viewvc/synapse/branches/1.2/src/main/bin/synapse.sh?rev=655150&r1=655149&r2=655150&view=diff
==============================================================================
--- synapse/branches/1.2/src/main/bin/synapse.sh (original)
+++ synapse/branches/1.2/src/main/bin/synapse.sh Sat May 10 13:19:04 2008
@@ -21,10 +21,9 @@
 #
 # Environment Variable Prequisites
 #
-#   SYNAPSE_HOME   Home of Synapse installation. If not set I will  try
-#                   to figure it out.
+#   SYNAPSE_HOME   Home of Synapse installation. If not set will use the parent directory
 #
-#   JAVA_HOME       Must point at your Java Development Kit installation.
+#   JAVA_HOME      Must point at your Java Development Kit installation.
 #
 # NOTE: Borrowed generously from Apache Tomcat startup scripts.
 
@@ -99,7 +98,6 @@
 
 # use proper bouncy castle version for the JDK
 jdk_15=`$JAVA_HOME/bin/java -version 2>&1 | grep 1.5`
-jdk_14=`$JAVA_HOME/bin/java -version 2>&1 | grep 1.4`
 
 if [ "$jdk_15" ]; then
     echo " Using Bouncy castle JAR for Java 1.5"
@@ -107,12 +105,9 @@
     do
       SYNAPSE_CLASSPATH=$f:$SYNAPSE_CLASSPATH
     done
-elif [ "$jdk_14" ]; then
-    echo " Using Bouncy castle JAR for Java 1.4"
-    for f in $SYNAPSE_HOME/lib/bcprov-jdk13*.jar
-    do
-      SYNAPSE_CLASSPATH=$f:$SYNAPSE_CLASSPATH
-    done
+else
+    echo " Synapse requires JDK 1.5.x"
+    exit 1
 fi
 
 # For Cygwin, switch paths to Windows format before running java
@@ -127,9 +122,7 @@
 SYNAPSE_ENDORSED=$SYNAPSE_HOME/lib/endorsed
 
 # synapse.xml
-SYNAPSE_XML=-Dsynapse.xml=$SYNAPSE_HOME/repository/conf/synapse.xml
-
-PORT="-Dport=8080"
+SYNAPSE_XML=$SYNAPSE_HOME/repository/conf/synapse.xml
 
 while [ $# -ge 1 ]; do
 
@@ -138,19 +131,14 @@
     shift
 
   elif [ "$1" = "-sample" ]; then
-    SYNAPSE_XML=-Dsynapse.xml=$SYNAPSE_HOME/repository/conf/sample/synapse_sample_$2.xml
+    SYNAPSE_XML=$SYNAPSE_HOME/repository/conf/sample/synapse_sample_$2.xml
     shift 2 # -sample and sample number
 
-  elif [ "$1" = "-port" ]; then
-    PORT="-Dport=$2"
-    shift 2 # -port and port number
-
 elif [ "$1" = "-h" ]; then
     echo "Usage: synapse.sh ( commands ... )"
     echo "commands:"
     echo "  -xdebug           Start Synapse under JPDA debugger"
     echo "  -sample (number)  Start with sample Synapse configuration of given number"
-    echo "  -port (number)    Listen in HTTP port with given number (default:8080)"
     shift
     exit 0
 
@@ -171,4 +159,15 @@
 echo "Using JAVA_HOME:       $JAVA_HOME"
 echo "Using SYNAPSE_XML:     $SYNAPSE_XML"
 
-$JAVA_HOME/bin/java -server -Xms128M -Xmx128M $XDEBUG $PORT $SYNAPSE_XML -Dresolve.root=$SYNAPSE_HOME/repository -Dorg.apache.xerces.xni.parser.XMLParserConfiguration=org.apache.xerces.parsers.XMLGrammarCachingConfiguration -Dsynapse.home=$SYNAPSE_HOME -Daxis2.xml=$SYNAPSE_HOME/repository/conf/axis2.xml -Djava.endorsed.dirs=$SYNAPSE_ENDORSED -Djava.io.tmpdir=$SYNAPSE_HOME/work/temp/synapse -classpath $SYNAPSE_CLASSPATH org.apache.synapse.SynapseServer $SYNAPSE_HOME/repository
+$JAVA_HOME/bin/java -server -Xms128M -Xmx128M \
+    $XDEBUG \
+    -Dorg.apache.xerces.xni.parser.XMLParserConfiguration=org.apache.xerces.parsers.XMLGrammarCachingConfiguration \
+    -Djava.endorsed.dirs=$SYNAPSE_ENDORSED \
+    -Djava.io.tmpdir=$SYNAPSE_HOME/work/temp/synapse \
+    -classpath $SYNAPSE_CLASSPATH \
+    org.apache.synapse.SynapseServer \
+        $SYNAPSE_HOME/repository \
+        $SYNAPSE_HOME/repository/conf/axis2.xml \
+        $SYNAPSE_HOME \
+        $SYNAPSE_HOME/repository/conf/synapse.xml \
+        $SYNAPSE_HOME/repository