djencks 2005/03/20 16:36:25
Modified: modules/core/src/java/org/openejb/server/axis
WSContainer.java
Log:
It's necessary to unregister these when the ejb container stops, or you get
dead proxy exceptions when you redeploy at the same location
Revision Changes Path
1.5 +21 -3
openejb/modules/core/src/java/org/openejb/server/axis/WSContainer.java
Index: WSContainer.java
===================================================================
RCS file:
/home/projects/openejb/scm/openejb/modules/core/src/java/org/openejb/server/axis/WSContainer.java,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -r1.4 -r1.5
--- WSContainer.java 18 Mar 2005 07:42:17 -0000 1.4
+++ WSContainer.java 20 Mar 2005 21:36:25 -0000 1.5
@@ -52,16 +52,23 @@
import org.apache.axis.providers.java.RPCProvider;
import org.apache.geronimo.axis.server.AxisWebServiceContainer;
import org.apache.geronimo.webservices.SoapHandler;
+import org.apache.geronimo.gbean.GBeanLifecycle;
import org.openejb.EJBContainer;
-public class WSContainer {
+public class WSContainer implements GBeanLifecycle {
+
+ private final SoapHandler soapHandler;
+ private final URI location;
protected WSContainer() {
+ soapHandler = null;
+ location = null;
}
public WSContainer(EJBContainer ejbContainer, URI location, URI wsdlURI,
SoapHandler soapHandler, JavaServiceDesc serviceDesc) throws Exception {
try {
-
+ this.soapHandler = soapHandler;
+ this.location = location;
RPCProvider provider = new EJBContainerProvider(ejbContainer);
SOAPService service = new SOAPService(null, provider, null);
service.setServiceDescription(serviceDesc);
@@ -133,4 +140,15 @@
// }
+ public void doStart() throws Exception {
+
+ }
+
+ public void doStop() throws Exception {
+ soapHandler.removeWebService(location.getPath());
+ }
+
+ public void doFail() {
+
+ }
}