Release Notes -- Apache Geronimo -- Version 2.0 - Milestone 3 Geronimo URLs ------------- Home Page: http://geronimo.apache.org/ Downloads: http://geronimo.apache.org/downloads.html Documentation: http://geronimo.apache.org/documentation.html Mailing Lists: http://geronimo.apache.org/mailing.html Source Code: http://geronimo.apache.org/svn.html Bug Tracking: http://issues.apache.org/jira/browse/GERONIMO Wiki: http://cwiki.apache.org/geronimo IMPORTANT --------- This is a Milestone release, that means that is not the final version of Apache Geronimo v2.0 Take a look at "Known Issues and Limitations" section for further details. Updated Information ------------------- Please see http://cwiki.apache.org/GMOxDOC20/release-notes-20-m3txt.html for the latest information on this release. System Requirements ------------------- You need a platform that supports the Sun JDK 5.0+ (J2SE 1.5.0+). Most testing has been done on Linux, Mac OS X, and Windows. Significant Changes in the 2.0-M3 Release ----------------------------------------- Overall this new milestone release is a more stable and includes additional and enhanced support to the features integrated in the previous releases. Some of the new features added in this release include: - Java Server Faces 1.2 (via MyFaces v1.2) - Common Annotations for the Java Platform (partial support) - Enterprise JavaBeans 3.0 (via OpenEJB 3.0, partial support) - Web Services Implementation (partial support) *See "Functional Characteristics" section below for more details on the new functions. Functional Characteristics for 2.0-M3 ------------------------------------- - Web Services (Axis2) - JAX-WS 2.0 limited support (POJO only) - Web Services Metadata 2.0 limited support - Web Services (CXF) - JAX-WS 2.0 support for POJO and EJB - Web Services Metadata 2.0 limited support Features and functions supported in the 2.0-M2 Release ------------------------------------------------------ - EJB 3.0 (via OpenEJB project) Supported: - JPA (Custom Provider, App-managed, Container-managed) (Also supported in 2.0-M1) - POJO as a Business Interface (both local and remote) - POJO Session EJBs - geronimo-openejb.xml file not required unless you have geronimo specific information to configure - Deployment of annotated beans (@Stateful and @Stateless) - Injection via deployment descriptor - @Resource injection for env-entries, resource-refs, message-destinations, service-refs, most resource-env-refs - @EJB injection of ejb-refs and ejb-local-refs (Tomcat) - @PersistenceContext injection - @PersistenceUnit injection - JNDI references to the ejb - JNDI references from the ejb - Transaction support - Legacy component (i.e. home) interfaces on a Pojo session bean - Xml-based *and* annotation-based injection for ejbs, except for message-destinations, or SessionContext when the field or setter is not named setSessionContext - References to business interfaces, local or remote, from a servlet or an ejb - References to home interfaces, local or remote, from a servlet or an ejb - Extended JNDI and DI types - Deploy and Undeploy Simple EJB 3.0 example application available at: http://cwiki.apache.org/GMOxDOC20/using-some-of-ejb-30-functionalities.html Limitations: - No support for MDBs. - @EJB injection of ejb-refs and ejb-local-refs (Jetty) - Web Services (CXF) Supported: - Deployng a JAX-WS based POJO service that leverages annotations to simplify the creation of the Web service. - Deploying a traditional JAX-RPC based POJO service - @Resource Annotations are fully supported provided they are also defined in the web.xml deployment descriptor - The @Resource WebServiceContext annotation is fully supported. Simple Web Services example available at: http://cwiki.apache.org/GMOxDOC20/simple-web-service-with-jax-ws.html Limitations: - No EJB support for Web Services in 2.0-M2 - elements in the deployment descriptor or @WebServiceRef annotations are not processed. - Dynamically generated WSDL returned via ?wsdl request might be missing some information. - Dynamic clients (obtained using the javax.xml.ws.Service API) might not always work. - JSTL 1.2 Applications that use JSTL must add a dependency in their deployment plan to the jstl jar. Specifically: jstl jstl Alternatively, the jstl jar can be included in the application's WEB-INF/lib directory. - JSF 1.2 - Not yet supported -JSF applications will deploy and start but will not execute yet. An updated MyFaces package will remedy this in the near future. Features and functions supported in the 2.0-M1 Release ------------------------------------------------------ - Full Sun JDK 5.0+ (J2SE 1.5.0+) - Servlet 2.5 (Tomcat) - JSP 2.1 (Tomcat) - JSP Debug 1.0 (Tomcat) - Servlet 2.5 (Jetty) - JSP 2.1 (Jetty - via Jasper) - JSP Debug 1.0 (Jetty) - JSF 1.2 (JSF applications won't execute) - JSTL 1.2 - Common Annotations 1.0 - JAF 1.1 - JavaMail 1.4 - EJB 3.0 (JPA only) - JTA 1.1 - JMS 1.1 - JACC 1.1 Installing & Starting Geronimo ------------------------------ To install, simply unpack the .zip (Windows) or tar.gz (Unix) file containing Geronimo. If you wish to modify the default ports that Geronimo will use, edit the file /var/config/config.xml Geronimo comes with batch and script files to control server start and stop functions. To see usage examples simply type geronimo.bat or geronimo.sh command as appropriate for your platform. It is necessary to set JAVA_HOME to the copy of your Sun 5 JDK/JRE prior to executing the command. Here is an example to set JAVA_HOME: export JAVA_HOME= To see the available command options type: /bin/geronimo.sh or \bin\geronimo.bat The command will display help text instructing you as to how to start and stop the Geronimo server. If you prefer to start the server without a script file you can simply type: java -jar /bin/server.jar Once the server has started, you can access the Geronimo Administration Console at http://localhost:8080/console/ . The default user name is "system" and the default password is "manager". Administration Console Security Configuration --------------------------------------------- The default administration user/password for the Geronimo Administration Console and command line deployment tool is system/manager. You can change these defaults directly from the Geronimo Administration Console by accessing Security -> Console Realm and change the user name and password from the Console Realm Users portlet. As an alternative, you can make the same changes by editing the /var/security/users.properties and /var/security/groups.properties files. Deploying Applications ---------------------- Geronimo comes with deploy scripts and batch files to deploy J2EE modules or applications. You can use the scripts or simply invoke the executable jar by running the following command (note that you need to start Geronimo first): /bin/java -jar deployer.jar deploy my-web-app.war [deploy plan] You will need to use the username "system" and password "manager" unless you customized those as described above. The deployment plan argument is optional -- you can pack a deployment plan into the application module, provide it on the command line, or in some cases omit it entirely. You can also use the "Login" command to avoid entering a user name and password every time you use the deploy tool For more information on the commands and options supported by the deploy tool, run from within the Geronimo directory /bin: java -jar deployer.jar help [command] You can also graphically deploy applications and resources via the Geronimo Administration Console available at http://localhost:8080/console/ Other Deployment Options ------------------------ As an alternative to the command-line deployer, you can copy application modules into the /deploy/ directory and the hot deployer service will deploy them automatically. The command-line deployer has some advantages, as it will output any deployment errors to its own console rather than just the server log. Additionally, Geronimo provides a Maven plugin that can deploy applications to Geronimo as part of a Maven build. Configuration ------------- Most configuration attributes can be updated in the /var/config/config.xml file. The attributes most likely to be changed are already included in the supplied config.xml file, while others may need to be added manually. Certification Status -------------------- Apache Geronimo v2.0-M3, being a MILESTONE release is not yet certified. Known Issues and Limitations ---------------------------- ** Bug * [GERONIMO-2643] - Stack trace (due to amq) while shutting down Geronimo * [GERONIMO-2650] - JSP 2.1 error in Jetty/Tomcat * [GERONIMO-2664] - Servlet Filter Error * [GERONIMO-2728] - Exception while removing directory module from the console * [GERONIMO-2771] - GlassFish specs are being included in 2.0-M2 builds * [GERONIMO-2780] - Tomcat fails to accept certificate alias * [GERONIMO-2785] - Sun changed the (final?) javaee 5 schemas and we need to generate new xmlbeans classes for them * [GERONIMO-2788] - Temporarily remove yoko jars from the lib/endorsed directory until we have corba support * [GERONIMO-2792] - Assembly plans still contain references to non-existant corba-sun configs * [GERONIMO-2793] - Build failure in geronimo-openejb-builder * [GERONIMO-2795] - TransactionSynchronizationRegistry needs to register lots of interposed syncs per tx. * [GERONIMO-2800] - Connector Lazy Activation leaks managed connections * [GERONIMO-2803] - JAXWS build failure due to missing axis2-jaxws-api-SNAPSHOT.jar * [GERONIMO-2819] - openejb client ejb ref lookup don't use the right classloader. * [GERONIMO-2823] - System class loader should not be searched for resource META-INF/geronimo-dependency.xml by AbstractRepository.getDependencies * [GERONIMO-2829] - car plugin needs to start a new kernel for each invocation * [GERONIMO-2832] - Need to work harder to register our corba UtilDelegateImpl * [GERONIMO-2834] - ejb method intf names have wrong case for jacc EjbMethodPermission constructor * [GERONIMO-2855] - Missing persistence-context-ref while deploying DayTrader on 2.0-trunk * [GERONIMO-2867] - javax.mail.Service.connect() not using port from transport URLName() * [GERONIMO-2873] - OOME's and file-locking problems on Windows * [GERONIMO-2881] - Client-Transaction explicit-versions.properties does not include all dependencies. ** Improvement * [GERONIMO-1716] - Add usage of SimpleEncryption to PropertiesFileLoginModule and Admin Console * [GERONIMO-2454] - Upgrade xerces to version 2.8.1 * [GERONIMO-2758] - Upgrade to Howl 1.0.2 * [GERONIMO-2862] - Detect Yoko classes are not endorsed * [GERONIMO-2865] - EJB WS update: pass env. in standard way ** New Feature * [GERONIMO-2651] - Servlet annotations are not supported ** RTC * [GERONIMO-2638] - Improve ModuleBuilder and ConfigurationBuilder interfaces to replace use of JarFile ** Task * [GERONIMO-2804] - implement jsf 1.2 support * [GERONIMO-2805] - add tribes clustering support for tomcat ** Wish * [GERONIMO-2178] - JSP Taglibs accessed via a global context