Hi Matthias, Not sure if this helps...for your resource in muse.xml, do you have the following attribute set to true?
<resource-type use-router-persistence="true"> -----Original Message----- From: Beil, Matthias [mailto:[EMAIL PROTECTED] Sent: Monday, June 04, 2007 5:34 AM To: [email protected] Subject: Delete when shutdown Hi, I have now the producer and consumer running and have started to deploy the producer on our Sun Java System Application Server Enterprise Edition 8.1_02 (build b27-p13) server on a UNIX machine 'SunOS localhost 5.10 Generic_118833-23 sun4v sparc SUNW,Sun-Fire-T200'. Everything works perfect, except when I want to redeploy the producer. At the moment when the producer is undeployed, the subscription xml file is deleted!!! I already extended the 'NotificationProducerFilePersistence' file to have a 'getPersistenceDirectory()' which returns a directory which is outside of the deployment path of the war file. I thought that the subscriptions where deleted when the war application was undeployed. But now that the xml files are stored in a different directory, I could reproduce that it is Muse who calls the delete method. The stack trace is as follow: System Thread [RMI TCP Connection(14616)-localhost] (Suspended (breakpoint at line 177 in AbstractFilePersistence)) WsnOssjNotificationProducerFilePersistence(AbstractFilePersistence).dest royResourceFile(EndpointReference) line: 177 WsnOssjNotificationProducerFilePersistence(NotificationProducerFilePersi stence).resourceRemoved(EndpointReference) line: 135 SimpleNotificationProducer.resourceRemoved(EndpointReference) line: 533 SimpleResourceManager.removeResource(EndpointReference) line: 425 SimpleWsResource(SimpleResource).shutdown() line: 513 SimpleResourceManager.shutdown() line: 466 SimpleResourceRouter.shutdown() line: 345 AxisIsolationLayer(AbstractIsolationLayer).shutdown() line: 225 WsnOssjProducerServiceLifeCycle.shutDown(ConfigurationContext, AxisService) line: 172 ListenerManager.shutDownServices(ConfigurationContext) line: 214 ListenerManager.stop() line: 178 AxisServlet.destroy() line: 114 StandardWrapper.unload() line: 1326 StandardWrapper.stop() line: 1680 WebModule(ContainerBase).removeChild(Container) line: 956 WebModule(StandardContext).removeChild(Container) line: 3331 WebModuleContextConfig(ContextConfig).stop() line: 720 WebModuleContextConfig.lifecycleEvent(LifecycleEvent) line: 112 LifecycleSupport.fireLifecycleEvent(String, Object) line: 124 WebModule(StandardContext).stop() line: 4688 HttpServiceVirtualServer(ContainerBase).removeChild(Container) line: 956 HttpServiceWebContainer(WebContainer).unloadWebModule(String, String, String, WebBundleDescriptor) line: 2113 WebModuleDeployEventListener.moduleUndeployed(ConfigContext, String) line: 198 WebModuleDeployEventListener.moduleUndeployed(ModuleDeployEvent) line: 278 AdminEventMulticaster.invokeModuleDeployEventListener(ModuleDeployEventL istener, ModuleDeployEvent) line: 920 AdminEventMulticaster.handleModuleDeployEvent(AdminEvent) line: 905 AdminEventMulticaster.processEvent(AdminEvent) line: 427 AdminEventMulticaster.multicastEvent(AdminEvent) line: 139 ServerRuntimeMBean.forwardEvent(AdminEvent) line: 64 NativeMethodAccessorImpl.invoke0(Method, Object, Object[]) line: not available [native method] NativeMethodAccessorImpl.invoke(Object, Object[]) line: 39 DelegatingMethodAccessorImpl.invoke(Object, Object[]) line: 25 Method.invoke(Object, Object...) line: 585 MBeanHelper.invokeOperationInBean(MBeanOperationInfo, Object, Object[]) line: 302 ServerRuntimeMBean(BaseRuntimeMBean).invoke(String, Object[], String[]) line: 383 MetaDataImpl$PrivateDynamicMeta(DynamicMetaDataImpl).invoke(Object, String, Object[], String[]) line: 213 MetaDataImpl.invoke(Object, String, Object[], String[]) line: 220 DefaultMBeanServerInterceptor.invoke(ObjectName, String, Object[], String[]) line: 815 JmxMBeanServer.invoke(ObjectName, String, Object[], String[]) line: 784 RMIConnectionImpl.doOperation(int, Object[]) line: 1408 RMIConnectionImpl.access$100(RMIConnectionImpl, int, Object[]) line: 81 RMIConnectionImpl$PrivilegedOperation.run() line: 1245 RMIConnectionImpl.doPrivilegedOperation(int, Object[], Subject) line: 1341 RMIConnectionImpl.invoke(ObjectName, String, MarshalledObject, String[], Subject) line: 782 GeneratedMethodAccessor80.invoke(Object, Object[]) line: not available DelegatingMethodAccessorImpl.invoke(Object, Object[]) line: 25 Method.invoke(Object, Object...) line: 585 UnicastServerRef2(UnicastServerRef).dispatch(Remote, RemoteCall) line: 294 Transport$1.run() line: 153 AccessController.doPrivileged(PrivilegedExceptionAction<T>, AccessControlContext) line: not available [native method] TCPTransport(Transport).serviceCall(RemoteCall) line: 149 TCPTransport.handleMessages(Connection, boolean) line: 466 TCPTransport$ConnectionHandler.run() line: 707 Thread.run() line: 595 I followed the stack trace but could not find a place where there is a decision that the file must be destroyed due to the shutdown. Any help appreciated. I also noted that the consumer gets the following xml: <?xml version="1.0" encoding="UTF-8"?> <wsrf-rl:TerminationNotification xmlns:wsrf-rl="http://docs.oasis-open.org/wsrf/rl-2"> <wsrf-rl:TerminationTime>2007-06-04T09:35:40+02:00</wsrf-rl:TerminationT ime> </wsrf-rl:TerminationNotification> I had a look at the 'NotificationProducerFilePersistence' but I don't see how to rewrite it to have a distinction between destroying the resource when it has to be deleted due to an external destroy call and a shutdown event. Mit freundlichen Gruessen / With kind regards Matthias Beil --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
