Matt RaibleMatt Raible is a Java Champion and Developer Advocate at Okta.

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.

[ANN] Equinox 1.1 Released

In preparation for my talk on comparing web frameworks, I've made a bunch of enhancements to Equinox. I changed the default web framework to be Spring and added a very simple "CRUD users" feature. While it's basic, it shows how to do validation, success messages, and a sortable list with the following frameworks: Spring, JSF, Struts, WebWork and Tapestry. I even added a "birthday" field to demonstrate date-handling. I dig the built-in popup calendars that ship with JSF and Tapestry.

Oh yeah, I also added a hack (from James Violette) to make the Display Tag work with JSF. Code says it best. I plan on writing a detailed how-to as part of the Display Tag's documentation. Suggestions for a cleaner hack are welcome.

In other display tag news, here's another way to do static headers.

Posted in Java at Nov 03 2004, 12:26:54 AM MST 14 Comments

Hii Matt, The page with "Code says it best" doesn't work in IE 6.0. When are you going to put the presentation comparing the framework, online? Regards, fargo

Posted by Fargo on November 03, 2004 at 02:25 AM MST #

That's because IE sucks. ;-) Get Firefox or right-click and "Save Target As...".

Posted by Matt Raible on November 03, 2004 at 10:14 AM MST #

There are some crazy dates in the birthday column, plus they do not export well to xls, pdf, etc. A while back you compared 3 or 4 sorting tags including display Tag. Do you find it the best or just the most familiar to you?

Posted by Ted on November 03, 2004 at 02:18 PM MST #

I've used the displaytag for several years, so it's definitely the most familiar to me. The reason for the issues with the birthday column is b/c I have a comment in there that has the date in yyyyMMdd format so the date is sorted correctly. To fix this, you could add media="html" to the column and then create a second column that has media="csv xml excel pdf".

Posted by Matt Raible on November 03, 2004 at 02:23 PM MST # a cool dhtml popup calendar

Posted by Joe on November 03, 2004 at 03:14 PM MST #

Joe - I think this is the one that's used in both JSF and Tapestry. If not, their implementations look awful close to it. I spent quite a bit of time tweaking the CSS and hacking the JavaScript on these calendars in JSF/Tapestry - it probably would've been easier to just add the calendar to the Spring/Struts/WebWork versions. I'll probably add it in the next release (patches are welcome ;-).

Posted by Matt Raible on November 03, 2004 at 03:21 PM MST #

Matt, I'm having a couple of issues installing Equinox 1.1 on Mac OS X, where would be the best place to post these issues?


Posted by Peter Morelli on November 03, 2004 at 11:31 PM MST #

Peter, your best bet is the mailing list, forum or issue tracker.

Posted by Matt Raible on November 03, 2004 at 11:56 PM MST #

hi Matt, nice little Equinox demo, but it seems you store an empty record when you enter an invalid date (see #128 and #129) cheers -- Wouter

Posted by Wouter Zoons on November 09, 2004 at 05:07 AM MST #

Wouter - can you enter a bug and note which web framework it's failing for? Thanks.

Posted by Matt Raible on November 09, 2004 at 10:21 AM MST #

hi matt, are the default Spring MVC and 'CRUD users' staff in AppFuse too?

Posted by tony he on November 11, 2004 at 04:05 PM MST #

I don't understand the question. Are you asking if CRUD user's functionality exists in AppFuse? If so, the answer is "yes". Unlike Equinox though, the CRUD user's feature actually means something and is used to control who has access to login and what they see within the application.

Posted by Matt Raible on November 11, 2004 at 04:21 PM MST #

Hi, maybe I'm getting blind and need stronger glasses, but... how do you switch the framework in your demo (the demo link in the announcement)? Thanks in advance.

Posted by Victor Ott on December 07, 2004 at 12:47 PM MST #

Victor - the different demos are listed at the bottom of the Frameworks Comparison page. I'll update the main site with these links.

Posted by Matt Raible on December 07, 2004 at 12:51 PM MST #

Post a Comment:
  • HTML Syntax: Allowed