EclipseLink/Examples/JPA/GlassFishV3 Web Tutorial
EclipseLink JPA Deployed on GlassFish 3 using Eclipse 3.5
If you want to get a small web application running quickly on the GlassFish V3 application server using the Eclipse IDE, follow the instructions in this tutorial.
This basic example details how to use Eclipse to run/debug a minimum J2EE 5/6 web application servlet using EclipseLink JPA as the persistence provider. The goal of this example is to detail the minimum steps needed to run EclipseLink inside GlassFish V3 using the Eclipse IDE - at this point no presentation/controller layer such as JSF, Spring or Struts will be used beyond a basic HttpServlet so we can concentrate on the the integration layer JPA setup.
The DALI project was used to generate Entities from a schema with sequences already populated.
And the DDL generation J2SE JPA application used to populate the database schema.
This example will also run fine with any Database that EclipseLink supports.
Install Eclipse EE
- I installed a clean version of Eclipse 3.5 Galileo (June 2009)
Install a Database
- In this example I am the included JavaDB that is part of GlassFish V3, the table schemas have already been created manually and all entity java classes have been generated using the Eclipse DALI tool.
- Do not use V3 TP2 - use the V3 Prelude release instead.
- The following issues were quickly solved within a 24h timeframe when posted to the GlassFish Forum
- http://forums.java.net/jive/thread.jspa?threadID=46886&tstart=0 GF3tp2 domain1 fails to start out of the box - JDK 1.7 collision and no proxy set
- http://forums.java.net/jive/thread.jspa?threadID=46886&tstart=0 GlassFish V3 SNAPSHOT Server Plugin for Eclipse 3.4 jar problems with TP2 - use the Prelude Plugin
Install Eclipse GlassFish Server Plugin
- Currently the "Download additional server adapters" link on the "New Server" dialog will not work with Eclipse 3.5 - Use the "Help | Install New Software" menu instead via the https://ajax.dev.java.net/eclipse/site.xml update site to get version 32+ of the plugin that is compatible with Galileo.
- You may refer to the details of Eclipse Bug # 280365.
EclipseLink Library Location
- The EclipseLink modules ship as 5 separate jars in the standard modules directory (Note EclipseLink SDO and JAXB are precluded by the libraries shipped with GlassFish - the milestone version is from the JPA 2.0 trunk branch.
- org.eclipse.persistence.oracle.jar (optional)
JPA Specification Library Location
- javax.persistence.jar ships with GlassFish in the standard modules directory.
- 20090911: I may be missing something getting an EAR running on B63.
- deployment of even a web2.5/ejb3.0 ear fails both for all of the following scenarios
- ant deploy script to b63
- eclipse deploy to b63
- autodeploy eclipse exported ear to b63
- autodeploy ant exported ear to b63
- autodeploy of NetBeans 6.8 ear to b63
Sep 11, 2009 7:44:41 AM org.glassfish.api.ActionReport failure SEVERE: Error during deployment : no container associated with application of type : ear java.lang.RuntimeException: no container associated with application of type : ear
- However, NetBeans 6.8.1M1 20090822 with an embedded GlassFish b58 is working fine.
- I am testing on NetBeans from now on and will investigate ant/eclipse deployment later
- All of deployment, JNDI setup, persistence.xml configuration, jpql query example - in progress ......