Author: asankha Date: Sun Jul 13 21:03:41 2008 New Revision: 19208 URL: http://wso2.org/svn/browse/wso2?view=rev&revision=19208
Log: make restarts via JMX set the correct (new) configuration context to the ESBServlet Modified: trunk/esb/java/modules/core/src/main/java/org/wso2/esb/ServiceBusManager.java trunk/esb/java/modules/core/src/main/java/org/wso2/esb/transport/tomcat/ESBServlet.java Modified: trunk/esb/java/modules/core/src/main/java/org/wso2/esb/ServiceBusManager.java URL: http://wso2.org/svn/browse/wso2/trunk/esb/java/modules/core/src/main/java/org/wso2/esb/ServiceBusManager.java?rev=19208&r1=19207&r2=19208&view=diff ============================================================================== --- trunk/esb/java/modules/core/src/main/java/org/wso2/esb/ServiceBusManager.java (original) +++ trunk/esb/java/modules/core/src/main/java/org/wso2/esb/ServiceBusManager.java Sun Jul 13 21:03:41 2008 @@ -49,6 +49,7 @@ import org.wso2.esb.registry.ESBRegistry; import org.wso2.esb.statistics.StatisticsReporterThread; import org.wso2.esb.util.HibernateConfigCache; +import org.wso2.esb.transport.tomcat.ESBServlet; import org.quartz.impl.DirectSchedulerFactory; import org.quartz.SchedulerException; import org.quartz.Scheduler; @@ -105,6 +106,8 @@ private boolean serviceBusManagerStarted = false; /** Is the ESB running ? */ private boolean esbRunning = false; + /** A reference to the ESBServlet */ + private ESBServlet esbServlet = null; private ServiceBusManager() {} @@ -197,6 +200,10 @@ configurationContext = ServerManager.getInstance().getConfigurationContext(); // set ESB defaults to the Synapse config (e.g. Registry) setESBDefaults(configurationContext); + // update ESBServlet + if (esbServlet != null) { + esbServlet.updateConfigurationContext(configurationContext); + } // start the statistics reporter startStatisticsReporter(); @@ -833,4 +840,8 @@ public ClassLoader getClassLoader() { return classLoader; } + + public void setEsbServlet(ESBServlet esbServlet) { + this.esbServlet = esbServlet; + } } Modified: trunk/esb/java/modules/core/src/main/java/org/wso2/esb/transport/tomcat/ESBServlet.java URL: http://wso2.org/svn/browse/wso2/trunk/esb/java/modules/core/src/main/java/org/wso2/esb/transport/tomcat/ESBServlet.java?rev=19208&r1=19207&r2=19208&view=diff ============================================================================== --- trunk/esb/java/modules/core/src/main/java/org/wso2/esb/transport/tomcat/ESBServlet.java (original) +++ trunk/esb/java/modules/core/src/main/java/org/wso2/esb/transport/tomcat/ESBServlet.java Sun Jul 13 21:03:41 2008 @@ -22,6 +22,7 @@ import org.apache.axiom.om.OMElement; import org.apache.axiom.om.xpath.AXIOMXPath; import org.apache.axis2.context.MessageContext; +import org.apache.axis2.context.ConfigurationContext; import org.apache.axis2.description.TransportInDescription; import org.apache.axis2.transport.http.AxisServlet; import org.apache.axis2.transport.http.ListingAgent; @@ -60,6 +61,7 @@ ServletContext servletContext = servletConfig.getServletContext(); configContext = ServiceBusManager.getInstance().getConfigurationContext(); axisConfiguration = configContext.getAxisConfiguration(); + ServiceBusManager.getInstance().setEsbServlet(this); servletContext.setAttribute(this.getClass().getName(), this); agent = new ListingAgent(configContext); populateGetRequestProcessors(); @@ -74,6 +76,10 @@ return getServletConfig().getServletContext(); } + public void updateConfigurationContext(ConfigurationContext cfgCtx) { + configContext = cfgCtx; + axisConfiguration = configContext.getAxisConfiguration(); + } public ServletConfig getServletConfig() { return this.servletConfig; _______________________________________________ Esb-java-dev mailing list [email protected] http://wso2.org/cgi-bin/mailman/listinfo/esb-java-dev
