[jbossseam-issues] [JBoss JIRA] Created: (JBSEAM-3643) "Group by" paging failed
by Kenneth Zhang (JIRA)
"Group by" paging failed
------------------------
Key: JBSEAM-3643
URL: https://jira.jboss.org/jira/browse/JBSEAM-3643
Project: Seam
Issue Type: Bug
Components: Framework
Affects Versions: 2.1.0.GA
Environment: JBoss 4.2.3GA, Seam 2.1.0GA,JDK 1.5.0_16
Reporter: Kenneth Zhang
GroupBy is a new function at seam 2.1.0GA, but it cannot work with paging.
This is the test code:
@Name("bookStat")
public class BookStat extends EntityQuery<Book> {
private static final String EJBQL = "select name, count(*) from Book book";
(snip)
public BookStat() {
setEjbql(EJBQL);
setRestrictionExpressionStrings(Arrays.asList(RESTRICTIONS));
setMaxResults(3);
setGroupBy("name");
}
(snip)
}
There is the error log:
13:05:09,578 INFO [STDOUT] Hibernate:
select
count(*) as col_0_0_
from
test_seam.dbo.BOOK book0_
group by
book0_.name
Caused by: javax.persistence.NonUniqueResultException: result returns 21 elements
at org.hibernate.ejb.QueryImpl.getSingleResult(QueryImpl.java:85)
at org.jboss.seam.framework.EntityQuery.initResultCount(EntityQuery.java:129)
at org.jboss.seam.framework.EntityQuery.getResultCount(EntityQuery.java:120)
at org.jboss.seam.framework.Query.getPageCount(Query.java:202)
at org.jboss.seam.framework.Query.getLastFirstResult(Query.java:163)
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: https://jira.jboss.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
14 years, 8 months
[jbossseam-issues] [JBoss JIRA] Created: (JBSEAM-3612) examples should demonstrate obtaining entity manager factory from JNDI via persistence unit reference
by Dan Allen (JIRA)
examples should demonstrate obtaining entity manager factory from JNDI via persistence unit reference
-----------------------------------------------------------------------------------------------------
Key: JBSEAM-3612
URL: https://jira.jboss.org/jira/browse/JBSEAM-3612
Project: Seam
Issue Type: Feature Request
Components: Examples
Affects Versions: 2.1.0.GA
Reporter: Dan Allen
Priority: Minor
Fix For: 2.1.1.CR1
For any example that is deploying to a standard Java EE 5 environment (for instance the jpa example deploying to GlassFish or JBoss AS 5), the entity manager factory should be obtained through JNDI through a persistence unit reference.
5.3.1 of JPA spec:
"Within a Java EE environment, an entity manager factory may be injected using the Persistence-Unit annotation or obtained through JNDI lookup."
It would first need to be declared in web.xml:
<persistence-unit-ref>
<persistence-unit-ref-name>bookingDatabase/emf</persistence-unit-ref-name>
<persistence-unit-name>bookingDatabase</persistence-unit-name>
</persistence-unit-ref>
Then the components.xml would look like this:
<persistence:managed-persistence-context name="entityManager"
auto-create="true"
persistence-unit-jndi-name="java:comp/env/bookingDatabase/emf" />
The reason we should do this is to advocate the Java EE standard approach.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: https://jira.jboss.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
14 years, 8 months