Raible's Wiki
Raible Designs AppFuseHomepage- Korean - Chinese - Italian - Japanese QuickStart Guide User Guide Tutorials Other ApplicationsStruts ResumeSecurity Example Struts Menu
Set your name in
UserPreferences
Referenced by
JSPWiki v2.2.33
Hide Menu |
This is version 3.
It is not the current version, and thus it cannot be edited. Che cos'è AppFuse?AppFuse è un'applicazione per fare "kickstarting" dello sviluppo di una webapp. Scarica, decomprimi ed esegui ant new per essere subito pronto con un'applicazione Tomcat/MySQL. Usa Ant, XDoclet, Spring, Hibernate (o iBATIS), JUnit, StrutsTestCase, WebTest di Canoo, Struts Menu, Display Tag Library, OSCache, JSTL e Struts (o Spring MVC). Il framework Spring ha ampiamente migliorato AppFuse da Febbraio 2004. Viene usato ovunque per il suppporto ad Hibernate/iBATIS, le transazioni dichiarative, il binding delle dipendenze ed il disaccoppiamento dei layer. Questo framework semplice e pulito ha ampiamente ridotto la complessità di AppFuse ed ha anche consentito la rimozione di numerose righe di codice. In breve, per J2EE - è la cosa migliore che sia mai apparsa dai tempi del pane tostato. Per saperne di più su cosa sia AppFuse vedi questa pagina sul wiki. Le feature includono l'Autenticazione (con l'uso di Acegi Security), il Remember Me, l'Auto Registrazione, il Suggerimento Password e la Compressione GZip. La fucina per costruire le tue applicazioni.
Se vuoi partire subito con AppFuse, vai alla QuickStart Guide. Se vuoi saperne di più sull'architettura di AppFuse vedi il mio PowerPoint "About AppFuse" o vai a vederti una demo live. Ho anche scritto una presentazione recente per la conferenza No Fluff Just Stuff di Denver.
Per HowTo sullo sviluppo con AppFuse, vedi i Tutorial AppFuse.
Per domande comuni ed howto, vedi le FAQ, l'archivio della mailing list o visita il canale IRC AppFuse. La pagina iniziale del progetto AppFuse è su http://appfuse.dev.java.net. Per vedere cosa ti attende con AppFuse, vedi la Roadmap. 23 Ottobre 2006 - AppFuse 1.9.4La nuove caratteristiche maggiori di questo rilascio sono l'aggiornamento a Spring 2.0, Hibernate 3.2 e l'integrazione di Facelets + Ajax4JSF per l'opzione JSF. In aggiunta, molte librerie sono state corrette ed alcuni bacherozzi sono stati spiaccicati.11 Luglio 2006 - AppFuse 1.9.3Questo rilascio è innanzitutto un rilascio di bug fix, ma contiene anche aggiornamenti per diverse dipendenze come librerie, inclusa Acegi Security 1.0.1.6 Giugno 2006 - AppFuse 1.9.2Questo rilascio include l'integrazione del Framework CSS, il supporto alla copertura del codice tramite EMMAe il supporto ai sub-package in AppGen. Un grazie ai Vincitori del Concorso di Design del Framework CSS , Doug Hays e Mika Göckel, per il loro aiuto per questo rilascio.7 Aprile 2006 - AppFuse 1.9.1Questo rilascio include miglioramenti ed aggiornamenti a Tapestry 4.0.1, WebWork 2.2.2, nonché il supporto per l'uso di AppGen nel reverse engineering delle tabelle di un database (con Middlegen). iBATIS è ora supportato da AppGen ed è stato approntato un tutorial Create DAO per iBATIS. Il supporto ad iBATIS e Middlegen sono stati forniti da Bobby Diaz - grazie Bobby! Inoltre, un bel grazie va a Mika Göckel per aver scritto un Tutorial su XFire e l'installer. Per installare e configurare AppFuse per lo sviluppo, vedi la Guida QuickStart. Grazie a tutti gli sponsor che hanno contribuito fornendo prodotti ed hosting gratuito al progetto AppFuse.14 Gennaio 2006 - AppFuse 1.9Questo rilascio include la completa integrazione di Acegi Security, il supporto per Ajax con DWR e Scriptaculous e molti bug fix/aggiornamenti. In aggiunta, si può fare il deploy di AppFuse senza configurare il tuo application server. Ovviamente, se preferisci usare una DataSource JNDI, si può fare lo stesso facilmente. Per installare e configurare AppFuse per lo sviluppo, vedi la AppFuseQuickStart. Grazie a tutti gli sponsor che hanno contribuito fornendo prodotti ed hosting gratuito al progetto AppFuse.27 Agosto 2005 - AppFuse 1.8.2Questo rilascio è principalmente un rilascio di bug fix privo di nuove feature. Include anche aggiornamenti per Acegi Security e Spring Framework. Grazie a tutti gli sponsor che hanno contribuito fornendo prodotti ed hosting gratuito per questo progetto.15 Giugno 2005 - AppFuse 1.8.1Questo rilascio è principalmente un rilascio di bug fix senza nuove feature. Include anche diversi aggiornamenti alle librerie di base (Hibernate, Spring, iBATIS, MyFaces). Grazie a tutti gli sponsor che hanno contribuito fornendo prodotti ed hosting gratuito al progetto AppFuse.15 Giugno 2005 - Tutorial di ThogauThomas Gaudin ha messo insieme un paio di tutorial dettagliati e semplici da seguire sul suo sito.6 Maggio 2005 - Installato JIRACreati i Video di AppFuse ed impostato un nuovo Issue Tracker JIRA. Grazie ad Atlassian per la licenza gratuita di JIRA e a Contegix che ce lo sta ospitando. Grazie anche a KGB Internet Solutions per aver sposnsorizzato l'hosting delle Demo di AppFuse.29 Aprile 2005 - AppFuse 1.8Questo rilascio sostituisce la Container Managed Authentication (CMA) con Acegi Security. Fra le altre feature principali numerosi bug fix ad AppGen ed un refactoring del build.xml per sfruttare le feature di Ant 1.6. Sono stati migliorati anche i file di progetto per Eclipse ed IDEA in modo che tu possa eseguire facilmente i test dall'interno del tuo IDE. È stato aggiunto anche un installer all-in-one fatto con MyJavaPack in modo che tu possa scaricare in un colpo solo tutto ciò che server per AppFuse. Eclipse e relativi plugin non sono stati inclusi in questo primo rilascio, ma potrebbero esserlo in un rilascio futuro.8 Dicembre 2004 - AppFuse 1.7Questo rilascio aggiunge il supporto per JSF/MyFaces e Tapestry come opzioni di framework web. AppGen è stato aggiornato in modo da funzionare con entrambi ed ho aggiunti anche dei nuovi tutorial. Puoi leggere un resoconto della mia esperienza in Integrating JSF and Tapestry into AppFuse.9 Novembre 2004 - AppFuse 1.6.1Questo rilascio è principalmente un bug fix, ma contiene anche un utile strumento "AppGen" per la generazione di logica CRUD completa (con dati di esempio e test) a partire da un POJO. AppGen essenzialmente automatizza tutto ciò che fai nei tutorial. Io incoraggio comunque gli utenti a leggere fino in fondo e svolgere i tutorial in modo da capire il codice che viene generato. Per saperne di più su AppGen.9 Ottobre 2004 - Rilasciato AppFuse 1.6This release's main features are swapping out Tiles for SiteMesh and adding WebWork as a web framework option. I also refactored the Struts Action tests to use MockStrutsTestCase and eliminated the need to use Cactus for running web tests. This reduced test execution time by over 50%. The relationship between users and roles was re-worked to take advantage of Hibernate's features as well.27 Maggio 2004 - Rilasciato AppFuse 1.5This release has lots of modifications that I've been meaning to make for quite some time. Specifically (1) removing the dependency on j2ee.jar and (2) removing Struts from the services layer. I also made improvements to Spring and its context file loading so you should be able to run unit tests from your IDE.Other notables include full i18n support (with translations in Dutch, Portuguese and Chinese), improved setup-tomcat target (no additional JARs needed now), and an option to use Spring's MVC framework instead of Struts - with full tutorials! If you'd like, you can read more about my conversion from Struts to Spring. Enjoy!
01.03.2004 - Rilasciato AppFuse 1.4This release involves many changes: re-arranging packages/directories, Spring integration, Remember Me refactorings and I also added iBATIS as a persistence option. I also spent a lot of time going through the tutorials to make sure they are up to date. I've been using AppFuse 1.4 for a few weeks on my current project, and I really do like the way Spring makes it easy to configure Hibernate, Transactions and Interface->Implementation relationships. If you're interested in upgrading your AppFuse 1.x app to use Spring, you can checkout this howto. I also made the leap and moved the AppFuse project from SourceForge to java.net. This is mainly so I have more control over mailing lists and adding other developers. As of today, CVS files in SourceForge and Java.net are the same - but I'll only be updating Java.net from here on out. I also have released files in both projects, but will only use java.net in the future. Here's a specific rundown of all the changes from the changelog.
16.01.2004 - Rilasciato AppFuse 1.3This release fixes a few compatibility issues with Resin and other databases - specifically PostgreSQL and DB2. The major new functionality in this release is Easy Database Switching. Basically, you can very easily switch from using MySQL to PostgreSQL by only changing a few properties in your build.properties. I implemented this on my current project last week because I do most of my development (at the client) on a PowerBook. The client wants to deploy onto a DB2 database - and there is not DB2 install for the Mac. Since Hibernate allows you to easily switch between databases, I figured I could develop using MySQL on the Mac, but have the default (CVS version) use DB2. One of the things I didn't want to do was to have a build.properties.sample, because I love projects that "just work" when you type "ant". So I changed the the build process so that database.properties is generated from default settings (MySQL) or the settings in build.properties (if specified). As part of the build process, Ant looks for the following build.properties files:
What this allows you to do is to take your customized database settings and put them in ~/.build.properties and they'll be applied to any AppFuse-derived project. This makes it easy to keep the CVS version of your project tied to one database and a developer's local version tied to a different database. While it's true that you'll most likely only talk to one database during the duration of your project, this exercise proves that it's easy to migrate from MySQL to another database. It also proves that AppFuse can easily integrate with other database (at least as of this release). Slick stuff IMO. Here's a specific rundown of all the changes from the changelog.
BTW, I hid all the older releases of AppFuse to avoid download confusion - if you need to download an older version, please let me know. 08.01.2004 - AppFuse ed ant 1.6.0Upgrading from ant 1.5.4 to 1.6.0 necessitates the following change in build.xml (just FYI): =================================================================== RCS file: /cvsroot/struts/appfuse/build.xml,v retrieving revision 1.37 diff -r1.37 build.xml 5,6c5,6 < <!ENTITY properties SYSTEM "file:properties.xml"> < <!ENTITY app-settings SYSTEM "file:app-settings.xml"> --- > <!ENTITY properties SYSTEM "file:./properties.xml"> > <!ENTITY app-settings SYSTEM "file:./app-settings.xml">otherwise ant complains about file:properties.xml could not be found.
20.12.2003 - Rilasciato AppFuse 1.2This is primarily a bug fix release. Here are the details from the release notes:
12.12.2003 - Rilasciato AppFuse 1.1This biggest feature in this release is Documentation. I finally found the time to write up some Tutorials on developing with AppFuse. They're on this wiki and also in the "docs" folder of the binary and source downloads. In writing this documentation, I went through almost all aspects of the code with a fine-tooth comb made sure it's doing what I want it to do. I was finally able to get things working with J2EE 1.4, which basically involved removing j2ee.jar from my MailUtil's classpath and just including activation.jar and mail.jar. If you're not there yet, simply change the paths for activation.jar and mail.jar in properties.xml (look for common.compile.classpath). You can use j2ee.jar instead of mail.jar and activation.jar with J2EE 1.3 and 1.4 B2. I was also able to get all unit tests to pass on Tomcat 5, and the "setup-tomcat" target now supports Tomcat 5. I wasn't able to get "Remember Me" to work - see the tomcat-user mailing list for more details. Included in this release are upgrades to Hibernate 2.1 Final and Display Tag 1.0 B2. For a complete changelog, view the README.txt in CVS.
30.11.2003 - Rilasciato AppFuse 1.0I feel this release deserves the big 1.0 designation because it is an up-to-date representation of my learnings and my perceived best practices in building web applications. Of course, as I learn more, I will continue to push out new releases. In this release, I did a lot of refactoring and enhancements to existing features. The DAO and Manager interfaces are no longer tied to Struts or Hibernate. Hibernate's Session object is now passed as an argument into Manager and DAO constructors, rather than method signatures. The DAOFactory was refactored by Bear Giles to use reflection to instantiate Hibernate DAO's. Now, if you add a new DAO, you don't have to edit DAOFactory and DAOFactoryHibernate. To insantiate a new DAO, the code is now: LookupDAO dao = (LookupDAO) DAOFactory.getInstance(conn, LookupDAO.class); ...where conn is a connection object retrieved from ServiceLocator or ActionFilter. When you add new POJOs, you still have to add them to ServiceLocator (for JUnit tests) and hibernate.cfg.xml, which is kindof a pain. I'd like to figure out a way to tell Hibernate to just look in appfuse-ejb.jar. The Remember Me feature has been refactored so the username and password cookies are only available under the /appfuse/security url-pattern. I also changed the posting to "j_security_check" in LoginServlet from response.sendRedirect to an HTTP POST, using Jakarta Common's HttpClient. The reason I have a LoginServlet vs. just using action="j_security_check" in my <form> is to encrypt passwords. I've developed 3 different applications using AppFuse (struts-resume is one of them), and I have found that it's a pain to upgrade to new versions of AppFuse. Because of this, I don't recommend upgrading unless you really need to. I will be upgrading struts-resume to AppFuse 1.0, but I doubt I'll upgrade it to any future AppFuse releases - it's just too much work for not much reward.
I rilasci precedenti si possono trovare su http://raibledesigns.com/downloads. Se vuoi incoraggiarmi a migliorare AppFuse, puoi effettuare una donazione.
|