[
https://issues.apache.org/jira/browse/OPENJPA-2705?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Will Dazey updated OPENJPA-2705:
--------------------------------
Attachment: (was: OPENJPA-2705-2.1.x.patch)
> ArrayOutOfBoundsException occurs with an @EmbeddedId
> ----------------------------------------------------
>
> Key: OPENJPA-2705
> URL: https://issues.apache.org/jira/browse/OPENJPA-2705
> Project: OpenJPA
> Issue Type: Bug
> Components: jpa
> Affects Versions: 2.1.1
> Reporter: Will Dazey
> Attachments: OPENJPA-2705-2.1.x.patch
>
>
> Introduced with
> [OPENJPA-2631|https://issues.apache.org/jira/browse/OPENJPA-2631].
> Exception:
> Caused by: java.lang.ArrayIndexOutOfBoundsException
> at
> org.apache.openjpa.jdbc.meta.ClassMapping.toDataStoreValue(ClassMapping.java:272)
> at
> org.apache.openjpa.jdbc.kernel.exps.CollectionParam.calculateValue(CollectionParam.java:174)
> Reproduce:
> {code:java}
> @Entity
> public class IdentificationBO {
> @EmbeddedId private BoIdVersion boId;
> }
> {code}
> {code:java}
> @Embeddable
> public class BoIdVersion {
> private Long id;
> private Long version;
> }
> {code}
> {code:java}
> @Test
> public void queryTest() {
> EntityManager em = emf.createEntityManager();
> EntityTransaction et = em.getTransaction();
> et.begin();
> Query q = em.createQuery("SELECT DISTINCT Ident FROM IdentificationBO
> Ident WHERE Ident.boId in :identificationList");
> q.setParameter("identificationList", Arrays.asList(new BoIdVersion(new
> Long(1)), new BoIdVersion(new Long(2)), new BoIdVersion(new Long(3))));
> //Exception on execution of this line
> q.getResultList();
> if ((et != null) && (et.isActive())) {
> et.rollback();
> }
> em.close();
> }
> {code}
--
This message was sent by Atlassian JIRA
(v6.4.14#64029)