[ 
https://issues.apache.org/jira/browse/OPENJPA-1283?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Donald Woods updated OPENJPA-1283:
----------------------------------

    Affects Version/s:     (was: 2.0.0)
                       2.0.0-M2
        Fix Version/s:     (was: 2.0.0)
                       2.0.0-M3

> Incorrect SQL for JPQL query selecting Map value from an elementCollection of 
> a Map and the map the value is an embeddable
> --------------------------------------------------------------------------------------------------------------------------
>
>                 Key: OPENJPA-1283
>                 URL: https://issues.apache.org/jira/browse/OPENJPA-1283
>             Project: OpenJPA
>          Issue Type: Bug
>    Affects Versions: 2.0.0-M2
>            Reporter: Catalina Wei
>            Assignee: Catalina Wei
>             Fix For: 2.0.0-M3
>
>
> SELECT VALUE(f) FROM Policy p, IN (p.funds) f WHERE f.fundName = :fName and 
> p.annuityHolderId = :holderId 
>       Where Policy has an ElementCollection as a Map: 
>     @ElementCollection(targetClass = Fund.class, fetch=FetchType.EAGER)
>     
> @CollectionTable(name="POLICY_FUNDS",joincolumn...@joincolumn(name="FK_POLICY_ID")})
>     @MapKeyColumn(name = "FUND_ID")
>     public Map<Integer, IFund> getFunds() {
>         return Funds;
>     }
> The generated SQL was incorrect:
> SELECT t2.id FROM INSPOLICY t0 
>     INNER JOIN POLICY_FUNDS t1 ON t0.id = t1.FK_POLICY_ID, 
>     INSPOLICY t2 
> WHERE (t1.fundName = ? AND t0.FK_ANNUITY_HOLDER_ID = ?)
> The correct SQL should projecting out t1.*.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to