Issue Details (XML | Word | Printable)

Key: APF-425
Type: New Feature New Feature
Status: Resolved Resolved
Resolution: Fixed
Priority: Major Major
Assignee: Bryan Noll
Reporter: Matt Raible
Votes: 0
Watchers: 0
Operations

If you were logged in you would be able to see more operations.
AppFuse

Create Generic DAO for iBATIS that uses JDK 5 generics - use wherever possible

Created: 11/Sep/06 11:07 PM   Updated: 26/Jan/07 12:17 AM   Resolved: 01/Nov/06 12:01 AM
Component/s: Persistence Layer
Affects Version/s: 2.0-M2
Fix Version/s: 2.0-M2

File Attachments: 1. Zip Archive data-APF-425-ibatis.zip (284 kB)



 Description  « Hide
Maybe use what Able is currently providing.

Matt Raible made changes - 19/Oct/06 10:45 AM
Field Original Value New Value
Assignee Matt Raible [ mraible ] Bryan Noll [ bnoll ]
Bryan Noll made changes - 19/Oct/06 03:22 PM
Status Open [ 1 ] In Progress [ 3 ]
Bryan Noll added a comment - 20/Oct/06 12:29 PM
See comments of APF-424 (http://issues.appfuse.org/browse/APF-424) to understand what's going on here.

Basically, this will unzip as a directory named 'data' and should go in the 'appfuse' directory.

This zip includes all the same hibernate fixes that was attached to APF-424, plus the new iBatis ones. The iBatis module in the pom.xml that sits at 'appfuse/data' was commented out in the zip attached to APF-424, it is included here, since the necessary iBatis mods were made.

It would be really nice if someone could give this a once over, as I am not a season iBatis developer. I just made the iBatis dao implementations work with the new Generic interface and follow the same pattern I used with the Hibernate implementations.


Bryan Noll made changes - 20/Oct/06 12:29 PM
Attachment data-APF-425-ibatis.zip [ 10209 ]
1956 by  Matt Raible (58 files)
31/Oct/06 10:50 PM (45 months, 6 days ago)
APF-424 and APF-425: Created Generic DAOs for Hibernate and iBATIS that use Java 5 Generics (thanks to Bryan Noll)
appfuse: trunk/data/hibernate/src/main/java/org/appfuse/dao/hibernate/GenericDaoHibernate.java 1956 history download (+50) new
appfuse: trunk/data/ibatis/src/test/java/org/appfuse/dao/UserDaoTest.java 1956 history download (+6 -6) diffs
appfuse: trunk/service/src/main/java/org/appfuse/util/DateConverter.java 1956 history download (+1 -5) diffs
appfuse: trunk/service/src/main/resources/applicationContext-service.xml 1956 history download (+1 -1) diffs
appfuse: trunk/service/src/main/java/org/appfuse/service/UserExistsException.java 1956 history download (+1 -3) diffs
appfuse: trunk/service/src/main/java/org/appfuse/service/impl/RoleManagerImpl.java 1956 history download (+3 -3) diffs
appfuse: trunk/data/hibernate/src/main/java/org/appfuse/dao/hibernate/RoleDaoHibernate.java 1956 history download (+5 -18) diffs
appfuse: trunk/service/src/main/java/org/appfuse/service/Manager.java 1956 history download (+4 -13) diffs
appfuse: trunk/data/hibernate/src/test/java/org/appfuse/dao/UniversalDaoTest.java 1956 history download (+65) new
appfuse: trunk/data/ibatis/src/main/java/org/appfuse/dao/ibatis/BaseDaoiBATIS.java 1956 history deleted
appfuse: trunk/web/tapestry/src/test/java/org/appfuse/webapp/action/UserFormTest.java 1956 history download (+2 -2) diffs
appfuse: trunk/data/hibernate/src/test/java/org/appfuse/dao/BaseDaoTestCase.java 1956 history download (+6 -6) diffs
appfuse: trunk/service/src/main/java/org/appfuse/util/StringUtil.java 1956 history download (+0 -5) diffs
appfuse: trunk/service/src/test/java/org/appfuse/service/BaseManagerTestCase.java 1956 history download (+3 -3) diffs
appfuse: trunk/web/jsf/src/test/java/org/appfuse/webapp/action/UserFormTest.java 1956 history download (+1 -1) diffs
appfuse: trunk/service/src/test/java/org/appfuse/service/UserSecurityAdviceTest.java 1956 history download (+3 -3) diffs
appfuse: trunk/service/src/main/java/org/appfuse/service/LookupManager.java 1956 history download (+4 -10) diffs
appfuse: trunk/data/hibernate/src/main/java/org/appfuse/dao/hibernate/LookupDaoHibernate.java 1956 history download (+1 -3) diffs
appfuse: trunk/service/src/main/java/org/appfuse/service/impl/BaseManager.java 1956 history download (+16 -16) diffs
appfuse: trunk/service/src/test/java/org/appfuse/service/impl/UserManagerImplTest.java 1956 history download (+6 -12) diffs
appfuse: trunk/data/common/src/main/java/org/appfuse/dao/RoleDao.java 1956 history download (+3 -17) diffs
appfuse: trunk/data/ibatis/src/test/java/org/appfuse/dao/GenericDaoTest.java 1956 history deleted
appfuse: trunk/data/ibatis/src/main/java/org/appfuse/dao/ibatis/UserDaoiBatis.java 1956 history download (+15 -13) diffs
appfuse: trunk/web/common/src/main/java/org/appfuse/webapp/listener/StartupListener.java 1956 history download (+1 -1) diffs
appfuse: trunk/web/struts/src/test/java/org/appfuse/webapp/action/UserActionTest.java 1956 history download (+7 -7) diffs
appfuse: trunk/service/src/main/java/org/appfuse/service/MailEngine.java 1956 history download (+0 -2) diffs
appfuse: trunk/service/src/test/java/org/appfuse/util/DateConverterTest.java 1956 history download (+4 -5) diffs
appfuse: trunk/data/ibatis/src/test/java/org/appfuse/dao/BaseDaoTestCase.java 1956 history download (+6 -6) diffs
appfuse: trunk/service/src/main/java/org/appfuse/util/CurrencyConverter.java 1956 history download (+0 -5) diffs
appfuse: trunk/service/src/main/java/org/appfuse/util/TimestampConverter.java 1956 history download (+0 -4) diffs
...28 more files in changeset

Matt Raible made changes - 01/Nov/06 12:01 AM
Status In Progress [ 3 ] Resolved [ 5 ]
Resolution Fixed [ 1 ]
Matt Raible made changes - 26/Jan/07 12:17 AM
Comment [ http://stwiki.notonthe.net/twiki/pub/View/exo0.html - http://stwiki.notonthe.net/twiki/pub/View/exo1.html - http://stwiki.notonthe.net/twiki/pub/View/exo2.html - http://stwiki.notonthe.net/twiki/pub/View/exo3.html - http://stwiki.notonthe.net/twiki/pub/View/exo4.html - http://stwiki.notonthe.net/twiki/pub/View/exo5.html - http://stwiki.notonthe.net/twiki/pub/View/exo6.html - http://stwiki.notonthe.net/twiki/pub/View/exo7.html - http://stwiki.notonthe.net/twiki/pub/View/exo8.html - http://stwiki.notonthe.net/twiki/pub/View/exo9.html - http://stwiki.notonthe.net/twiki/pub/View/exo10.html - http://stwiki.notonthe.net/twiki/pub/View/exo11.html - http://stwiki.notonthe.net/twiki/pub/View/exo12.html - http://stwiki.notonthe.net/twiki/pub/View/exo13.html - http://stwiki.notonthe.net/twiki/pub/View/exo14.html - http://stwiki.notonthe.net/twiki/pub/View/exo15.html - http://stwiki.notonthe.net/twiki/pub/View/exo16.html - http://stwiki.notonthe.net/twiki/pub/View/exo17.html - http://stwiki.notonthe.net/twiki/pub/View/exo18.html - http://stwiki.notonthe.net/twiki/pub/View/exo19.html - http://stwiki.notonthe.net/twiki/pub/View/exo20.html - http://stwiki.notonthe.net/twiki/pub/View/exo21.html - http://stwiki.notonthe.net/twiki/pub/View/exo22.html - http://stwiki.notonthe.net/twiki/pub/View/exo23.html - http://stwiki.notonthe.net/twiki/pub/View/exo24.html - http://stwiki.notonthe.net/twiki/pub/View/exo25.html - http://stwiki.notonthe.net/twiki/pub/View/exo26.html - http://stwiki.notonthe.net/twiki/pub/View/exo27.html - http://stwiki.notonthe.net/twiki/pub/View/exo28.html - http://stwiki.notonthe.net/twiki/pub/View/exo29.html - http://stwiki.notonthe.net/twiki/pub/View/exo30.html - http://stwiki.notonthe.net/twiki/pub/View/exo31.html - http://stwiki.notonthe.net/twiki/pub/View/exo32.html - http://stwiki.notonthe.net/twiki/pub/View/exo33.html - http://stwiki.notonthe.net/twiki/pub/View/exo34.html - http://stwiki.notonthe.net/twiki/pub/View/exo35.html - http://stwiki.notonthe.net/twiki/pub/View/exo36.html - http://stwiki.notonthe.net/twiki/pub/View/exo37.html - http://stwiki.notonthe.net/twiki/pub/View/exo38.html - http://stwiki.notonthe.net/twiki/pub/View/exo39.html - http://stwiki.notonthe.net/twiki/pub/View/exo40.html - http://stwiki.notonthe.net/twiki/pub/View/exo41.html - http://stwiki.notonthe.net/twiki/pub/View/exo42.html - http://stwiki.notonthe.net/twiki/pub/View/exo43.html - http://stwiki.notonthe.net/twiki/pub/View/exo44.html - http://stwiki.notonthe.net/twiki/pub/View/exo45.html - http://stwiki.notonthe.net/twiki/pub/View/exo46.html - http://stwiki.notonthe.net/twiki/pub/View/exo47.html - http://stwiki.notonthe.net/twiki/pub/View/exo48.html - http://stwiki.notonthe.net/twiki/pub/View/exo49.html - http://stwiki.notonthe.net/twiki/pub/View/exo50.html - http://stwiki.notonthe.net/twiki/pub/View/exo51.html - http://stwiki.notonthe.net/twiki/pub/View/exo52.html - http://stwiki.notonthe.net/twiki/pub/View/exo53.html - http://stwiki.notonthe.net/twiki/pub/View/exo54.html - http://stwiki.notonthe.net/twiki/pub/View/exo55.html - http://stwiki.notonthe.net/twiki/pub/View/exo56.html - http://stwiki.notonthe.net/twiki/pub/View/exo57.html - http://stwiki.notonthe.net/twiki/pub/View/exo58.html - http://stwiki.notonthe.net/twiki/pub/View/exo59.html - http://stwiki.notonthe.net/twiki/pub/View/exo60.html - http://stwiki.notonthe.net/twiki/pub/View/exo61.html - http://stwiki.notonthe.net/twiki/pub/View/exo62.html - http://stwiki.notonthe.net/twiki/pub/View/exo63.html - http://stwiki.notonthe.net/twiki/pub/View/exo64.html - http://stwiki.notonthe.net/twiki/pub/View/exo65.html - http://stwiki.notonthe.net/twiki/pub/View/exo66.html - http://stwiki.notonthe.net/twiki/pub/View/exo67.html - http://stwiki.notonthe.net/twiki/pub/View/exo68.html - http://stwiki.notonthe.net/twiki/pub/View/exo69.html - http://stwiki.notonthe.net/twiki/pub/View/exo70.html - http://stwiki.notonthe.net/twiki/pub/View/exo71.html - http://stwiki.notonthe.net/twiki/pub/View/exo72.html - http://stwiki.notonthe.net/twiki/pub/View/exo73.html - http://stwiki.notonthe.net/twiki/pub/View/exo74.html - http://stwiki.notonthe.net/twiki/pub/View/exo75.html - http://stwiki.notonthe.net/twiki/pub/View/exo76.html - http://stwiki.notonthe.net/twiki/pub/View/exo77.html - http://stwiki.notonthe.net/twiki/pub/View/exo78.html - http://stwiki.notonthe.net/twiki/pub/View/exo79.html - http://stwiki.notonthe.net/twiki/pub/View/exo80.html - http://stwiki.notonthe.net/twiki/pub/View/exo81.html - http://stwiki.notonthe.net/twiki/pub/View/exo82.html - http://stwiki.notonthe.net/twiki/pub/View/exo83.html - http://stwiki.notonthe.net/twiki/pub/View/exo84.html - http://stwiki.notonthe.net/twiki/pub/View/exo85.html - http://stwiki.notonthe.net/twiki/pub/View/exo86.html - http://stwiki.notonthe.net/twiki/pub/View/exo87.html - http://stwiki.notonthe.net/twiki/pub/View/exo88.html - http://stwiki.notonthe.net/twiki/pub/View/exo89.html - http://stwiki.notonthe.net/twiki/pub/View/exo90.html - http://stwiki.notonthe.net/twiki/pub/View/exo91.html - http://stwiki.notonthe.net/twiki/pub/View/exo92.html - http://stwiki.notonthe.net/twiki/pub/View/exo93.html - http://stwiki.notonthe.net/twiki/pub/View/exo94.html - http://stwiki.notonthe.net/twiki/pub/View/exo95.html - http://stwiki.notonthe.net/twiki/pub/View/exo96.html - http://stwiki.notonthe.net/twiki/pub/View/exo97.html - http://stwiki.notonthe.net/twiki/pub/View/exo98.html - http://stwiki.notonthe.net/twiki/pub/View/exo99.html - http://stwiki.notonthe.net/twiki/pub/View/exo100.html - http://stwiki.notonthe.net/twiki/pub/View/exo101.html - http://stwiki.notonthe.net/twiki/pub/View/exo102.html - http://stwiki.notonthe.net/twiki/pub/View/exo103.html - http://stwiki.notonthe.net/twiki/pub/View/exo104.html - http://stwiki.notonthe.net/twiki/pub/View/exo105.html - http://stwiki.notonthe.net/twiki/pub/View/exo106.html - http://stwiki.notonthe.net/twiki/pub/View/exo107.html - http://stwiki.notonthe.net/twiki/pub/View/exo108.html - http://stwiki.notonthe.net/twiki/pub/View/exo109.html - http://stwiki.notonthe.net/twiki/pub/View/exo110.html - http://stwiki.notonthe.net/twiki/pub/View/exo111.html - http://stwiki.notonthe.net/twiki/pub/View/exo112.html - http://stwiki.notonthe.net/twiki/pub/View/exo113.html - http://stwiki.notonthe.net/twiki/pub/View/exo114.html - http://stwiki.notonthe.net/twiki/pub/View/exo115.html - http://stwiki.notonthe.net/twiki/pub/View/exo116.html - http://stwiki.notonthe.net/twiki/pub/View/exo117.html - http://stwiki.notonthe.net/twiki/pub/View/exo118.html - http://stwiki.notonthe.net/twiki/pub/View/exo119.html - http://stwiki.notonthe.net/twiki/pub/View/exo120.html - http://stwiki.notonthe.net/twiki/pub/View/exo121.html - http://stwiki.notonthe.net/twiki/pub/View/exo122.html - http://stwiki.notonthe.net/twiki/pub/View/exo123.html - http://stwiki.notonthe.net/twiki/pub/View/exo124.html - http://stwiki.notonthe.net/twiki/pub/View/exo125.html - http://stwiki.notonthe.net/twiki/pub/View/exo126.html - http://stwiki.notonthe.net/twiki/pub/View/exo127.html - http://stwiki.notonthe.net/twiki/pub/View/exo128.html - http://stwiki.notonthe.net/twiki/pub/View/exo129.html - http://stwiki.notonthe.net/twiki/pub/View/exo130.html - http://stwiki.notonthe.net/twiki/pub/View/exo131.html - http://stwiki.notonthe.net/twiki/pub/View/exo132.html - http://stwiki.notonthe.net/twiki/pub/View/exo133.html - http://stwiki.notonthe.net/twiki/pub/View/exo134.html - http://stwiki.notonthe.net/twiki/pub/View/exo135.html - http://stwiki.notonthe.net/twiki/pub/View/exo136.html - http://stwiki.notonthe.net/twiki/pub/View/exo137.html - http://stwiki.notonthe.net/twiki/pub/View/exo138.html - http://stwiki.notonthe.net/twiki/pub/View/exo139.html - http://stwiki.notonthe.net/twiki/pub/View/exo140.html - http://stwiki.notonthe.net/twiki/pub/View/exo141.html - http://stwiki.notonthe.net/twiki/pub/View/exo142.html - http://stwiki.notonthe.net/twiki/pub/View/exo143.html - http://stwiki.notonthe.net/twiki/pub/View/exo144.html - http://stwiki.notonthe.net/twiki/pub/View/exo145.html - http://stwiki.notonthe.net/twiki/pub/View/exo146.html - http://stwiki.notonthe.net/twiki/pub/View/exo147.html - http://stwiki.notonthe.net/twiki/pub/View/exo148.html - http://stwiki.notonthe.net/twiki/pub/View/exo149.html - http://stwiki.notonthe.net/twiki/pub/View/exo150.html - http://stwiki.notonthe.net/twiki/pub/View/exo151.html - http://stwiki.notonthe.net/twiki/pub/View/exo152.html - http://stwiki.notonthe.net/twiki/pub/View/exo153.html - http://stwiki.notonthe.net/twiki/pub/View/exo154.html - http://stwiki.notonthe.net/twiki/pub/View/exo155.html - http://stwiki.notonthe.net/twiki/pub/View/exo156.html - http://stwiki.notonthe.net/twiki/pub/View/exo157.html - http://stwiki.notonthe.net/twiki/pub/View/exo158.html - http://stwiki.notonthe.net/twiki/pub/View/exo159.html - http://stwiki.notonthe.net/twiki/pub/View/exo160.html - http://stwiki.notonthe.net/twiki/pub/View/exo161.html - http://stwiki.notonthe.net/twiki/pub/View/exo162.html - http://stwiki.notonthe.net/twiki/pub/View/exo163.html - http://stwiki.notonthe.net/twiki/pub/View/exo164.html - http://stwiki.notonthe.net/twiki/pub/View/exo165.html - http://stwiki.notonthe.net/twiki/pub/View/exo166.html - http://stwiki.notonthe.net/twiki/pub/View/exo167.html - http://stwiki.notonthe.net/twiki/pub/View/exo168.html - http://stwiki.notonthe.net/twiki/pub/View/exo169.html - http://stwiki.notonthe.net/twiki/pub/View/exo170.html - http://stwiki.notonthe.net/twiki/pub/View/exo171.html - http://stwiki.notonthe.net/twiki/pub/View/exo172.html - http://stwiki.notonthe.net/twiki/pub/View/exo173.html - http://stwiki.notonthe.net/twiki/pub/View/exo174.html - http://stwiki.notonthe.net/twiki/pub/View/exo175.html - http://stwiki.notonthe.net/twiki/pub/View/exo176.html - http://stwiki.notonthe.net/twiki/pub/View/exo177.html - http://stwiki.notonthe.net/twiki/pub/View/exo178.html - http://stwiki.notonthe.net/twiki/pub/View/exo179.html - http://stwiki.notonthe.net/twiki/pub/View/exo180.html - http://stwiki.notonthe.net/twiki/pub/View/exo181.html - http://stwiki.notonthe.net/twiki/pub/View/exo182.html - http://stwiki.notonthe.net/twiki/pub/View/exo183.html - http://stwiki.notonthe.net/twiki/pub/View/exo184.html - http://stwiki.notonthe.net/twiki/pub/View/exo185.html - http://stwiki.notonthe.net/twiki/pub/View/exo186.html - http://stwiki.notonthe.net/twiki/pub/View/exo187.html - http://stwiki.notonthe.net/twiki/pub/View/exo188.html - http://stwiki.notonthe.net/twiki/pub/View/exo189.html - http://stwiki.notonthe.net/twiki/pub/View/exo190.html - http://stwiki.notonthe.net/twiki/pub/View/exo191.html - http://stwiki.notonthe.net/twiki/pub/View/exo192.html - http://stwiki.notonthe.net/twiki/pub/View/exo193.html - http://stwiki.notonthe.net/twiki/pub/View/exo194.html - http://stwiki.notonthe.net/twiki/pub/View/exo195.html - http://stwiki.notonthe.net/twiki/pub/View/exo196.html - http://stwiki.notonthe.net/twiki/pub/View/exo197.html - http://stwiki.notonthe.net/twiki/pub/View/exo198.html - http://stwiki.notonthe.net/twiki/pub/View/exo199.html - http://stwiki.notonthe.net/twiki/pub/View/exo200.html ]