At line 1 changed 1 line. |
This page is designed to document the things [I|MattRaible] want to do with AppFuse in 2004. Feel free to add suggestions as you see fit. |
This page is designed to document what's on the roadmap for future versions of AppFuse. Feel free to add suggestions as you see fit. For a more detailed report of where we are on the roadmap, see the [roadmap in JIRA|http://issues.appfuse.org/browse/APF?report=com.atlassian.jira.plugin.system.project:roadmap-panel]. |
At line 3 changed 11 lines. |
!!July/August 2004 |
* <span style="text-decoration: line-through">Add [WebWork|http://www.opensymphony.com/webwork/] as a web framework choice.</span> __Status:__ Done. |
* <span style="text-decoration: line-through">Replace Tiles with Sitemesh as part of this process.</span> __Status:__ Done. |
* Enhance IDE integration, particularly with Eclipse and hot deploying. Attempt to get AppFuse working with [MyEclipse|http://www.myeclipseide.com]. Figure out a way so that unit tests do not depend on running Ant first. |
* <span style="text-decoration: line-through">Remove seldom used components (i.e. Clickstream, PMD, Checkstyle) and add documentation on how to add them back in.</span> __Status:__ More trouble than it's worth. |
* <span style="text-decoration: line-through">Modify Cactus to create a <runcontainer> task for all supported containers. The idea here is to make AppFuse so it can be easily run with Resin or Tomcat, by only changing a few Ant properties.</span> __Status:__ Done with [Cargo|http://cargo.codehaus.org]. |
* Add support/documentation for Sun Appserver 8. |
* <span style="text-decoration: line-through">Fix XDoclet form generation one-to-one mappings. Figure out and document how to generate validation rules for nested forms.</span> __Status:__ Done. |
* <span style="text-decoration: line-through">Replace Mail classes with Spring's Mail support.</span> __Status:__ Done. |
* <span style="text-decoration: line-through">Fix all [these damn bugs|https://appfuse.dev.java.net/issues/buglist.cgi?Submit+query=Submit+query&component=appfuse&issue_status=NEW&issue_status=STARTED&issue_status=REOPENED&email1=&emailtype1=exact&emailassigned_to1=1&email2=&emailtype2=exact&emailreporter2=1&issueidtype=include&issue_id=&changedin=&votes=&chfieldfrom=&chfieldto=Now&chfieldvalue=&short_desc=&short_desc_type=substring&long_desc=&long_desc_type=substring&issue_file_loc=&issue_file_loc_type=substring&status_whiteboard=&status_whiteboard_type=substring&field0-0-0=noop&type0-0-0=noop&value0-0-0=&cmdtype=doit&order=Reuse+same+sort+as+last+time] ;-)</span> __Status:__ Got most of them. |
* <span style="text-decoration: line-through">Figure out how to use MockStrutsTestCase to run ActionTests out-of-container. In-container is too slow.</span> ''{Lance: Try mockrunner.sf.net - check out the BookmarksActionTest in Roller (baby steps). I never did get MockStrutsTestCase to work.}'' ''{Carlos: I've got it to work ;) You can check [http://oness.sourceforge.net] subproject oness-party-webapp}'' |
!!AppFuse 2.0 - late 2006 |
At line 15 changed 1 line. |
* [[Low Priority] Add Configuration object that talks to a database table for application configuration. Create a dynamic UI (JSP) to handle updating. |
!Milestone 1 |
* <span style="text-decoration: line-through">Maven 2 integration</span> |
* <span style="text-decoration: line-through">Migrate from CVS to Subversion</span> |
* <span style="text-decoration: line-through">Remove XDoclet, putting generated files into source tree</span> |
* <span style="text-decoration: line-through">Get all flavors (WARs) deployed and running on Tomcat and Jetty Maven Plugin</span> |
* <span style="text-decoration: line-through">Spring 2.0: Upgrade XML to XSDs, annotations where appropriate</span> |
* <span style="text-decoration: line-through">Upgrade WebWork to Struts 2</span> |
* Documentation - move to new Confluence or DocBook-based system for 2.0 documentation |
At line 17 changed 1 line. |
* __MILESTONE:__ Release 1.6 and take a break before the Tapestry/JSF push (1.7 and 2.0). |
!Milestone 2 |
* <span style="text-decoration: line-through">[JDK 5, Annotations and JSP 2.0|http://raibledesigns.com/page/rd?anchor=appfuse_2_0_jdk_5]</span> |
* Archetypes for creating new AppFuse projects |
* Documentation, including screencasts for tutorials |
At line 19 changed 4 lines. |
!!AppFuse 1.7 - hopefully before the end of 2004 |
* Add [Tapestry|http://jakarta.apache.org/tapestry/] as a web framework choice. |
* Add [JSF|http://java.sun.com/j2ee/javaserverfaces/] as a web framework choice. |
* Integrate [jMock|http://jmock.org] for testing Managers and Actions/Controllers. |
!Milestone 3 |
* Integrate XFire by default (for existing classes and generated classes) |
* Code Generation/AppGen - hopefully with the [AppFuse Maven Plugin|http://mojo.codehaus.org/appfuse-maven-plugin/] |
* Documentation |
At line 24 added 19 lines. |
!2.0 Nice to haves |
* TestNG replacing JUnit |
* Hibernate Validation Annotations (hard part is hooking it into the web frameworks) |
* Tomcat Plugin for Maven (that operates like Jetty's plugin) (Looks like there is a [Maven 2 Tomcat Plugin|http://mojo.codehaus.org/tomcat-maven-plugin/introduction.html] that supports [tomcat:run|http://jira.codehaus.org/browse/MOJO-384] and [tomcat:run-war|http://jira.codehaus.org/browse/MOJO-567] (pending)) |
* JPA Support |
* Support for JDK 1.4 using something like [Retroweaver|http://retroweaver.sourceforge.net/] |
* Support for using Ant to build/test/deploy AppFuse-based projects |
* Someone to do all the documentation ;-) |
|
!!AppFuse 2.1 - early 2007 |
* Search using [Compass|http://www.opensymphony.com/compass/], tutorials already existing for [Spring MVC|http://www.nabble.com/search---integrate-compass-%28lucene%29-and-appfuse-p5022176s2369.html] and [JSF|http://www.nabble.com/RE%3A-search---integrate-compass-%28lucene%29-and-appfuse-p5222253s2369.html] |
* Pageable lists that only fetch a specified number of records (i.e. 10 at a time) |
* Ajax Goodies (TBD) |
|
!!AppFuse 2.2 |
* Convention over configuration, no XML modifications needed when adding new files |
* Plugin API so all "features" can be added/removed via plugins |
* Add Wicket and Stripes as supported web frameworks |
|
At line 25 changed 3 lines. |
* (Possibly) Add a Swing client that can talk to at least one of the above frameworks (if not all). |
* (Possibly) Add a [Laszlo|http://laszlosystems.com] front-end. I've heard this might be possible with Tapestry or JSF. |
* (Really don't want to) Offer Maven as an alternative to building with Ant. This will likely make the IDE integration easier as it's not very good right now. |
* (Possibly) Add a Swing/RCP, Laszlo and/or J2ME front-end |
* Change from using Canoo WebTest to using [Selenium|http://openqa.org/selenium/] for UI testing ([Maven + Selenium HowTo|http://docs.codehaus.org/display/MAVENUSER/Maven+and+Selenium]) |
* [What others would like to see|http://raibledesigns.com/page/rd/Weblog/if_you_could_add_another] |
At line 29 changed 1 line. |
!!Various Ideas - don't know if I'll use them' |
!!Various Ideas - don't know if we'll use them |
At line 31 changed 5 lines. |
* Use JMeter or Microsoft's Web Application Testing tool to configure load testing scripts for inclusion in the distribution. Motivated by [this post|http://blog.rossmason.com/archives/000025.html]. |
* Create tutorial on how to integrate Quartz. |
* Create tutorial on how to integrate Lucene for searching users. |
* Use Spring for Quartz, <span style="text-decoration: line-through">JavaMail and Velocity</span> (completed in 1.6). |
* <span style="text-decoration: line-through">Integrate <a href="http://tuckey.org/urlrewrite/">UrlRewriteFilter</a> for prettier URLs</span> (completed in 1.6). |
* Use JMeter, Grinder or Microsoft's Web Application Testing tool to configure load testing scripts for inclusion in the distribution. Motivated by [this post|http://blog.rossmason.com/archives/2004/02/jmeter_measures_up.html]. |
* <span style="text-decoration: line-through">Create tutorial on how to integrate Quartz (using Spring).</span> See Luciano Fiandesio's <a href="http://www.lucianofiandesio.com/javatales/qtzfuse.html">AppFuse and Quartz: an integration tutorial</a>. |
* Add Configuration object that talks to a database table for application configuration. Create a dynamic UI (JSP) to handle updating. |