But what was even more useful, was that the failures in instantiating the EntityManager clearly identified several issues with my Entity classes. Now that I've finally got the EntityManager working, I can move on to actually building test cases. Stay tuned.
In my implementation, I did two things differently from Mr. Gross. First, I don't have a web tier, so the reference to
/WEB-INF/classes/
in the build file isn't relevant. Also, I didn't create an orm.xml
file. Here is the code as I implemented it:
In the Test class:
@BeforeClass public static void setUpClass() { /* Code adapted from * Author: Joerg Gross * Title: DevBlog "JPA Unit test setup with NetBeans" * URL: http://eercp.blogspot.com/2011/12/ide-setup-with-netbeans.html */ Properties props = new Properties(); props.put("javax.persistence.transactionType", "RESOURCE_LOCAL"); props.put("javax.persistence.jtaDataSource", ""); props.put("javax.persistence.nonJtaDataSource", ""); props.put("eclipselink.jdbc.driver", "org.apache.derby.jdbc.EmbeddedDriver"); props.put("eclipselink.jdbc.url", "jdbc:derby:testDB;create=true"); props.put("eclipselink.jdbc.user", ""); props.put("eclipselink.jdbc.password", ""); props.put("eclipselink.ddl-generation", "drop-and-create-tables"); props.put("eclipselink.logging.level", "INFO"); try{ em = Persistence.createEntityManagerFactory("BirdDogDataPU",props).createEntityManager(); } catch(PersistenceUnitLoadingException e){ System.out.println(e.getMessage()); throw e; } }
In the build-impl.xml file:
On a slightly different note:
Does anyone else ever enter their password into the username field? About 20% of the time, my login pages will open without the username auto-populated and I automatically start typing my password, oblivious to the fact my cursor is in the wrong place. Have you ever done this? No, just me. Yeah, I figured as much.
No comments:
Post a Comment