Author: mriou Date: Thu May 24 09:12:14 2007 New Revision: 541346 URL: http://svn.apache.org/viewvc?view=rev&rev=541346 Log: Correcting a service undeployment "fix".
Modified: incubator/ode/trunk/axis2/src/main/java/org/apache/ode/axis2/BindingContextImpl.java incubator/ode/trunk/axis2/src/main/java/org/apache/ode/axis2/ODEServer.java Modified: incubator/ode/trunk/axis2/src/main/java/org/apache/ode/axis2/BindingContextImpl.java URL: http://svn.apache.org/viewvc/incubator/ode/trunk/axis2/src/main/java/org/apache/ode/axis2/BindingContextImpl.java?view=diff&rev=541346&r1=541345&r2=541346 ============================================================================== --- incubator/ode/trunk/axis2/src/main/java/org/apache/ode/axis2/BindingContextImpl.java (original) +++ incubator/ode/trunk/axis2/src/main/java/org/apache/ode/axis2/BindingContextImpl.java Thu May 24 09:12:14 2007 @@ -20,10 +20,6 @@ package org.apache.ode.axis2; -import javax.wsdl.Definition; -import javax.wsdl.PortType; -import javax.xml.namespace.QName; - import org.apache.axis2.AxisFault; import org.apache.ode.bpel.iapi.BindingContext; import org.apache.ode.bpel.iapi.ContextException; @@ -33,6 +29,10 @@ import org.apache.ode.bpel.iapi.ProcessConf; import org.apache.ode.bpel.iapi.ProcessStore; +import javax.wsdl.Definition; +import javax.wsdl.PortType; +import javax.xml.namespace.QName; + /** * AXIS2 implementation of the [EMAIL PROTECTED] org.apache.ode.bpel.iapi.BindingContext} * interface. Deals with the activation of endpoints. @@ -65,7 +65,7 @@ } public void deactivateMyRoleEndpoint(Endpoint myRoleEndpoint) { - _server.destroyService(myRoleEndpoint.serviceName); + _server.destroyService(myRoleEndpoint.serviceName, myRoleEndpoint.portName); } public PartnerRoleChannel createPartnerRoleChannel(QName processId, PortType portType, 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=541346&r1=541345&r2=541346 ============================================================================== --- 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 Thu May 24 09:12:14 2007 @@ -19,19 +19,6 @@ package org.apache.ode.axis2; -import java.io.File; -import java.io.FileNotFoundException; -import java.util.StringTokenizer; -import java.util.concurrent.ExecutorService; -import java.util.concurrent.Executors; - -import javax.servlet.ServletConfig; -import javax.servlet.ServletException; -import javax.sql.DataSource; -import javax.transaction.TransactionManager; -import javax.wsdl.Definition; -import javax.xml.namespace.QName; - import org.apache.axis2.AxisFault; import org.apache.axis2.description.AxisOperation; import org.apache.axis2.description.AxisService; @@ -60,6 +47,18 @@ import org.apache.ode.store.ProcessStoreImpl; import org.apache.ode.utils.fs.TempFileManager; +import javax.servlet.ServletConfig; +import javax.servlet.ServletException; +import javax.sql.DataSource; +import javax.transaction.TransactionManager; +import javax.wsdl.Definition; +import javax.xml.namespace.QName; +import java.io.File; +import java.io.FileNotFoundException; +import java.util.StringTokenizer; +import java.util.concurrent.ExecutorService; +import java.util.concurrent.Executors; + /** * Server class called by our Axis hooks to handle all ODE lifecycle management. * @@ -293,7 +292,7 @@ } public ODEService createService(ProcessConf pconf, QName serviceName, String portName) throws AxisFault { - destroyService(serviceName); + destroyService(serviceName, portName); AxisService axisService = ODEAxisService.createService(_axisConfig, pconf, serviceName, portName); ODEService odeService = new ODEService(axisService, pconf.getDefinitionForService(serviceName), serviceName, portName, _server, _txMgr); if (_odeConfig.isReplicateEmptyNS()) { @@ -336,15 +335,17 @@ return extService; } - public void destroyService(QName serviceName) { - __log.debug("Destroying service " + serviceName); - ODEService service = (ODEService) _services.remove(serviceName); + public void destroyService(QName serviceName, String portName) { + __log.debug("Destroying service " + serviceName + " port " + portName); + ODEService service = (ODEService) _services.remove(serviceName, portName); if (service != null) { - try { + try { _axisConfig.removeService(service.getAxisService().getName()); - } catch (AxisFault axisFault) { - __log.error("Couldn't destroy service " + serviceName); - } + } catch (AxisFault axisFault) { + __log.error("Couldn't destroy service " + serviceName); + } + } else { + __log.debug("Couldn't find service " + serviceName + " port " + portName + " to destroy."); } }