Mantis - Resin
|
|||||
Viewing Issue Advanced Details | |||||
|
|||||
ID: | Category: | Severity: | Reproducibility: | Date Submitted: | Last Update: |
2746 | minor | always | 06-23-08 09:09 | 06-23-08 15:37 | |
|
|||||
Reporter: | ferg | Platform: | |||
Assigned To: | ferg | OS: | |||
Priority: | normal | OS Version: | |||
Status: | closed | Product Version: | 3.1.6 | ||
Product Build: | Resolution: | fixed | |||
Projection: | none | ||||
ETA: | none | Fixed in Version: | 3.2.0 | ||
|
|||||
Summary: | 0002746: Amber setMaxResults | ||||
Description: |
(rep by Riccardo Cohen) I use javax.persistence.Query to retreive entity beans throught the EntityManager. I have to use setFirstResult() and setMaxResults() to implement next page / previous page functions. I found 2 strange things about it : 1) setMaxResults does not fix the "maximum number of results to retrieve" as the docs says, but indeed the last row number to retreive. Example : hqr.setFirstResult(50); hqr.setMaxResults(60); gives : 51 : 51 51 52 : 52 52 53 : 53 53 54 : 54 54 55 : 55 55 56 : 56 56 57 : 57 57 58 : 58 58 59 : 59 59 60 : 60 60 2) the LIMIT sql function seems partially implemented. The previous request calls this :(sql spy=true) select h.adlid, h.adlfirstname, h.adlname from adluser h order by h.adlid LIMIT 60 While it should call LIMIT 50,10 (and actually it should call LIMIT 50,60 if you beleive the javax.persistence.Query doc). It seems that it is the java code that eliminate the 50 first rows. Imagine I want the rows 10000 to 10005, It seems that the database will return 10005 rows and the java code will throw the 10000 first I found nothing about this in recent archives. Thanks for any information about these 2 topics. I use Resin 3.1.5 and also 3.2.0 snapshot 18th mai on MacOsX, the database is mysql 5.0.37 with latest mysql java driver mysql-connector-java-5.1.6-bin.jar |
||||
Steps To Reproduce: | |||||
Additional Information: | |||||
Relationships | |||||
Attached Files: |
Notes | |||||
|
|||||
|
|