Hi, I'm not sure what will happen if the IvmContext is in read-only mode (i.e. openejb.forceReadOnlyAppNamingContext=true). You may-need to make the context writable before unbinding.
Svetlin 2017-07-13 13:46 GMT+03:00 Jonathan Gallimore <[email protected]> : > Hey folks > > I noticed an issue when creating a resource inside an application: > > package org.superbiz; > > > import javax.annotation.PostConstruct; > import javax.annotation.PreDestroy; > import java.util.logging.Logger; > > public class Startup { > > private final Logger log = Logger.getLogger(Startup.class.getName()); > > @PostConstruct > public void start() { > log.info("*** " + getClass().getName() + " started ***"); > } > > @PreDestroy > public void stop() { > log.info("*** " + getClass().getName() + " stopped ***"); > } > > } > > and using WEB-INF/resources.xml to create the resource: > > <resources> > <Resource id="Startup" class-name="org.superbiz.Startup"> > # any properties you need can go here > </Resource> > </resources> > > It looks like my @PostConstruct is called ok, but my @PreDestroy is not. I > believe this works ok with resources defined in tomee.xml, but I'm happy to > check. > > I dug a bit deeper, and wrote a test. This appears to be an issue on both > master and 1.7.x. I have created two PRs, and would appreciate any > thoughts. > > https://github.com/apache/tomee/pull/91 > https://github.com/apache/tomee/pull/92 > > Many thanks > > Jon >
