Matt RaibleMatt Raible is a Web Developer and Java Champion. Connect with him on LinkedIn.

The Angular Mini-Book The Angular Mini-Book is a guide to getting started with Angular. You'll learn how to develop a bare-bones application, test it, and deploy it. Then you'll move on to adding Bootstrap, Angular Material, continuous integration, and authentication.

Spring Boot is a popular framework for building REST APIs. You'll learn how to integrate Angular with Spring Boot and use security best practices like HTTPS and a content security policy.

For book updates, follow @angular_book on Twitter.

The JHipster Mini-Book The JHipster Mini-Book is a guide to getting started with hip technologies today: Angular, Bootstrap, and Spring Boot. All of these frameworks are wrapped up in an easy-to-use project called JHipster.

This book shows you how to build an app with JHipster, and guides you through the plethora of tools, techniques and options you can use. Furthermore, it explains the UI and API building blocks so you understand the underpinnings of your great application.

For book updates, follow @jhipster-book on Twitter.


Over 10 years ago, I wrote my first blog post. Since then, I've authored books, had kids, traveled the world, found Trish and blogged about it all.

New site built using AppFuse

From Jeff C (a Sr Developer for, a new unit of in Lightweight Java Development with Webwork, Spring, and iBatis:

Our new site,, launched 2 weeks ago, and its built on WebWork, Spring, and iBatis. Using those 3 frameworks as the backbone of the site was a great experience. I think that combination of frameworks can be considered lightweight, especially from a development standpoint.
Even the development/testing process is quick. Thanks to Matt Raible's AppFuse (which was used to get this app started), we have a sweet build.xml file that allows us (on our dev machines) to reload our app by having the build script talk to tomcat. So, even when a properties file or java class or static field changes, its just a matter of running the reload task in the build.xml file and tomcat reloads the app with all changes in under 5 seconds. Yeah, rails is probably quicker, but i can spare 5 seconds of my time to let my changes get reloaded by tomcat.

Reloading your application in Tomcat to see your changes sucks. However, AppFuse 2.0 will allow you to use the Maven 2 Jetty Plugin, which aims to eliminate the whole deploy cycle. This plugin is powered by Jetty 6, which has been rewritten for Continuations, NIO, Servlet 2.5. Hopefully we'll start to see more appserver plugins written for Maven 2.

I love hearing success stories like Jeff's. That's why I (and many others) work on AppFuse - to simplify Java web development. We know that it's more painful to develop web applications in Java than in scripting languages, but we continue to do it because tools like AppFuse make it enjoyable. Even though tools and languages are important for simplification, I believe that most project's success is determined by people. If you have good people, effective processes and a lack of politics - a project should have no problem being successful, regardless of the tools.

Did you know the new SourceBeat site is also powered by AppFuse? We chose the WebWork+Spring+Hibernate combination and were quite pleased at how easy it was to develop everything. We had 90% of the site done in the first two weeks of development.

In other AppFuse-related news, the demos have been running solid for 70 days straight. I'll admit that's not a very log time, but it does prove there's no memory or connection leaks in the software. ;-) The number of currently active sessions is as follows:

The default session timeout is set to 10 minutes in AppFuse.

Posted in Java at Sep 28 2006, 11:40:55 AM MDT 6 Comments

Hey Matt...since i forgot to say it on the blog..thanks for Appfuse. It was a HUGE timesaver having something like Appfuse to get the project started. I think folks take for granted how hard it can be to initially set up a project and get the various frameworks working together. I wish i had written a bit more about the benefits of appfuse..its a great piece of software.

Posted by Jeff C on September 28, 2006 at 06:51 PM MDT #

It would be good to know how long it took to build the entire site and the number of development resources on this project.

Posted by Sanjiv Jivan on September 28, 2006 at 08:43 PM MDT #

Was forgetting any styling on the tapestry demo just a "small mistake" ? ;) (I see the style includes, but looks like your web.xml mapping might be trying to handle ALL requests through one servlet instead of letting misc img/css/etc requests like the stylesheets referenced be handled by your context container. ....maybe)

Posted by Jesse Kuhnert on September 29, 2006 at 03:47 AM MDT #

It is very good news to ear of such nice success story, congratz for your good work matt. Appfuse helps me alot on my own work for industry standard thin client intranet applications (i did go for Tomcat / PostGres / Hibernate / Spring / Acegi / Spring-MVC)

Posted by Sylv20 on September 29, 2006 at 09:21 AM MDT #

It looks like webwork is getting some mindshare these days. That's good. it's always been my favorite. iBatis is also my savior when Hibernate gets too annoying. And another "thank you for appfuse" from me. I've tricked it out with Java 5 annotations, generics, etc.

Posted by Hugh Lang on September 29, 2006 at 10:03 AM MDT #

Jesse - the Tapestry demo didn't have any styling because someone logged in and changed the theme to "" by appending theme= to the URL (rather than theme=themename). I've fixed it. Available themes are simplicity, puzzlewithstyle and andreas01.

Posted by Matt Raible on September 29, 2006 at 02:33 PM MDT #

Post a Comment:
  • HTML Syntax: Allowed