You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@avalon.apache.org by "Niclas Hedhman (JIRA)" <de...@avalon.apache.org> on 2004/11/13 03:16:41 UTC
[jira] Resolved: (RUNTIME-32) Transient objects already released are disposed again in Merlin shutdown
[ http://nagoya.apache.org/jira/browse/RUNTIME-32?page=history ]
Niclas Hedhman resolved RUNTIME-32:
-----------------------------------
Resolution: Won't Fix
Avalon is shutting down.
Come to the Metro project for further support. http://www.dpml.net
> Transient objects already released are disposed again in Merlin shutdown
> ------------------------------------------------------------------------
>
> Key: RUNTIME-32
> URL: http://nagoya.apache.org/jira/browse/RUNTIME-32
> Project: Merlin Runtime
> Type: Bug
> Versions: 3.3.0
> Environment: Probably all (tested with WinXP SP1, j2sdk 1.4.2_04 and Cygwin 1.5.10-3)
> Reporter: syvalta
> Assignee: Stephen McConnell
>
> If multiple transient objects are got by singleton component and released, they are disposed again in server shutdown.
> void processSomething() {
> Foo foo = (Foo) m_manager.lookup(Foo.class.getName());
> foo.doSomething();
> m_manager.release(foo);
> }
> And if in FooImpl's dispose() we throw exception in case it is disposed more than once, it results in following:
> [WARN ] (test.foo.lifecycle): Ignoring component source disposal error.
> ---- runtime exception report --------------------------------------------------
> Exception: java.lang.IllegalStateException
> Message: Already disposed
> ---- stack trace ---------------------------------------------------------------
> java.lang.IllegalStateException: Already disposed
> test.FooImpl.dispose(FooImpl.java:35)
> org.apache.avalon.framework.container.ContainerUtil.dispose(ContainerUtil.java:306)
> org.apache.avalon.activation.impl.DefaultComponentFactory.etherialize(DefaultComponentFactory.java:216)
> org.apache.avalon.activation.impl.AbstractLifestyleManager.finalize(AbstractLifestyleManager.java:160)
> org.apache.avalon.activation.impl.TransientLifestyleManager.decommission(TransientLifestyleManager.java:83)
> org.apache.avalon.activation.impl.DefaultAppliance.decommission(DefaultAppliance.java:114)
> org.apache.avalon.activation.impl.DefaultRuntime.decommission(DefaultRuntime.java:97)
> org.apache.avalon.composition.model.impl.DefaultSystemContext.decommission(DefaultSystemContext.java:373)
> org.apache.avalon.composition.model.impl.DefaultDeploymentModel.decommission(DefaultDeploymentModel.java:131)
> org.apache.avalon.composition.model.impl.DefaultContainmentModel.decommission(DefaultContainmentModel.java:275)
> org.apache.avalon.composition.model.impl.DefaultContainmentModel.decommission(DefaultContainmentModel.java:275)
> org.apache.avalon.merlin.impl.DefaultKernel.shutdown(DefaultKernel.java:233)
> org.apache.avalon.merlin.impl.DefaultFactory$1.run(DefaultFactory.java:847)
> --------------------------------------------------------------------------------
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
http://nagoya.apache.org/jira/secure/Administrators.jspa
-
If you want more information on JIRA, or have a bug to report see:
http://www.atlassian.com/software/jira
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@avalon.apache.org
For additional commands, e-mail: dev-help@avalon.apache.org