|
FAQ has been edited by Jacek Laskowski (Jul 22, 2007). Change summary: Add "How is Swizzle-Stream used?" topic General
What spec version does OpenEJB support?OpenEJB supports the Enterprise JavaBeans 3.0 specification. What is the difference between OpenEJB and an application server like Geronimo?//TODO I thought OpenEJB is supposed to be related to EJB's only, what does tomcat integration have to do with OpenEJB?//TODO Can I run OpenEJB with a JVM for any vendor?//TODO Which version of Java is required to run OpenEJB?//TODO Do I need maven to work with OpenEJB?//TODO Can I start and stop OpenEJB from an IDE? If yes, which IDE is supported by OpenEJB?//TODO Does OpenEJB support Local interfaces?Local Interfaces are supported as of 1.0 beta1. Prior to 1.0, the local interface capabilities were in place. You can instruct the container system to treat all calls made between beans as EJB 2.0 Local calls by using the flag --local-copy=false when you start the server. Here is an example: ./openejb.sh start --local-copy=false Details on other startup flags are here How is Swizzle-Stream used?Swizzle - http://docs.codehaus.org/display/SWIZZLE/Home Swizzle-Stream appears to be used in only two classes in openejb: 1. org.apache.openejb.assembler.classic.JndiBuilder It is used in: public static class TemplatedStrategy, but this class does not appear to be used. Definitely used and supports this feature: http://openejb.apache.org/jndi-names.html The property "openejb.jndiname.strategy.class" allows these to be switched out (JndiBuilder line 53) and if you look in the Geronimo geronimo-openejb module's OpenEjbSystemGBean you can see that You have reminded me of a rather big mental todo which was we should be using that strategy as our default too! Would have switched it over but we have all our itest using the LegacyAddedSuffixStrategy as well as our examples. 2. org.apache.openejb.config.InitEjbDeployments This class is only used in /openejb-core/container/openejb-core/src/test, which appears to be unit tests, but not part of any shipped server. Sure it is. See o.a.openejb.config.ConfigurationFactory line 125 where it's added to the deployment chain. Geronimo also has this one customized ("openejb.deploymentId.format") in its OpenEjbSystemGBean. Not quite as documented yet, but basically the same MO as the "openejb.jndiname.format"; you can set the format of the deployment id for when it isn't explicitly set. Container-Managed PersistenceWhat engine does OpenEJB use for CMP?In versions 1.0 and before, OpenEJB uses Castor JDO for CMP persistence. The CMP config files are all Castor controlled files (http://www.castor.org What is the format for the CMP mapping files?The Castor JDO mapping file What is the syntax of OQL?The syntax OQL itself is parsed by our persistence engine Castor, see this document for more details on writing OQL statements for use with OpenEJB and Castor. More information on that here Common ErrorsCannot find container "FOO" for bean "BAR"When a bean gets deployed in OpenEJB, it gets associated with a particular container. Subsequently, that container may not be configured in that instance of the server. When the server loads the Jar with the deployed beans, it places beans in the containers that the beans were configured with. Here, the bean BAR wants to go into the container FOO, which is not currently configured. This message is displayed when the server is starting up. Cannot find bean "FOO" referenced by bean "BAR".When a bean gets deployed in OpenEJB, it may contain references to other beans. Subsequently, those beans may not be configured in that instance of the server. When the server loads the Jar with the deployed beans, it stores those references to those beans. Here, the bean BAR references FOO, which is not currently configured in the JNDI namespace. This message is displayed when the server is starting up. This message is usally the result of a deployment descriptor that has been created by hand |
Unsubscribe or edit your notifications preferences
