package org.eclipse.persistence.testing.tests.wdf.jpa2.embeddable; import static org.junit.Assert.assertEquals; import javax.persistence.EntityManager; import org.eclipse.persistence.testing.framework.wdf.JPAEnvironment; import org.eclipse.persistence.testing.framework.wdf.Skip; import org.eclipse.persistence.testing.models.wdf.jpa2.flight.Carrier; import org.eclipse.persistence.testing.models.wdf.jpa2.flight.Connection; import org.eclipse.persistence.testing.models.wdf.jpa2.flight.ConnectionId; import org.eclipse.persistence.testing.models.wdf.jpa2.flight.Flight; import org.eclipse.persistence.testing.models.wdf.jpa2.flight.FlightId; import org.eclipse.persistence.testing.tests.wdf.jpa2.JPA2Base; import org.junit.Test; public class TestNestedEmbeddedIds extends JPA2Base { @Test @Skip(server=true) public void testInsert() { JPAEnvironment env = getEnvironment(); EntityManager em = env.getEntityManager(); try { env.beginTransaction(em); Carrier lh = new Carrier(); lh.setId("LH"); lh.setDescription("Lufthansa"); em.persist(lh); Connection lh454 = new Connection(); ConnectionId connectionId = new ConnectionId(); connectionId.setCarrier("LH"); connectionId.setFlightNumber(454); lh454.setId(connectionId); lh454.setFrom("FRA"); lh454.setTo("SFO"); em.persist(lh454); Flight flight090323 = new Flight(); FlightId flightId = new FlightId(); flightId.setConnectionId(connectionId); flightId.setDate(java.sql.Date.valueOf("2009-03-23")); flight090323.setFlightId(flightId); flight090323.setPassengers(223); em.persist(flight090323); env.commitTransactionAndClear(em); Flight flight2 = em.find(Flight.class, flightId); assertEquals(flight2.getFlightId().getConnectionId().getCarrier(), "LH"); } finally { closeEntityManager(em); } } }