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.

10+ YEARS


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.

[Colorado Software Summit] Spring and Comparing Web Frameworks

I'm pleased to announce that I'll be speaking at the Colorado Software Summit in October. I'll be doing a presentation on Spring and one on Comparing Web Frameworks. The abstracts are on my very own speaker page. I've never been to this conference, so I'm definitely looking forward to it - especially since it's only an hour away from my house. The only downside to the conference (for speakers) is you have to deliver each presentation 3 times. Of course, this is great if you're an attendee. Now I just need to figure out a way to get SourceBeat to sponsor my condo for the week. ;-)

I originally did my Web Frameworks Comparison (PDF) last year at ApacheCon. I'm looking to revamp it this year - so please let me know if have any suggestions for improvements.

Colorado Software Summit

Posted in Java at May 08 2005, 01:12:17 PM MDT 13 Comments
Comments:

In your web frameworks comparison, are your "Opinions" still the same or have they changed? Left to your own devices, what would your recommendation be for web framework/toolsets today? As a Struts/JSP developer, I bought your book (hardback - thanks, its been very interesting) and am curious to hear your current tool preferences.

Posted by Keith Weinberg on May 08, 2005 at 07:04 PM MDT #

Yeah would like to know more about your current opinions regarding the frameworks Struts , Spring, WebWork ...

Posted by KK on May 08, 2005 at 08:00 PM MDT #

Some comments on your Web Framework document:

* On the Struts Pros/Cons "ActionForm they're a pain" - since Struts 1.2.4 the "form bean" doesn't have to be an ActionForm - if you specify a POJO or DynaBean in your struts-config.xml then Struts will automatically "wrap" it in a BeanValidatorForm.

* On the Struts Pros/Cons "Can't unit test" - Struts 1.3 will allow moving from Action's to Commons Chain Commands which should enable easier unit testing.

* on the "Success Messages" page - Struts 1.2.7 now provides similar functionality for "errors" as it does for "messages" - i.e. saving them to the Session with automatic removal after access. Also new in 1.2.7 - "ActionRedirect" object is an ActionForward with the facility to add parameters.

* on the "Internationalization" page - don't understand the comment about Struts encouraging one resource bundle per locale. Struts supports multiple resources bundles (using the "bundle" attribute on tags) - version 1.2.7 also now extends this support to Commons Validator.

Posted by Niall on May 08, 2005 at 08:24 PM MDT #

IMHO you could include some real numbers(comparative terms) there:
1. Not just pros and cons, but a comparative matrix as well (even if the users at the conference need to print it because it wouldn't fit on a screen). You could make this as a comunity project thru' your WIKI, so that till the conference you could have a rafined(/improved) version of it, with lot of user participation.
2. Load testing numbers for all the frameworks on the same reference machine.
3. Client response time for all the frameworks on the same reference machine.
4. Complexity of bug search (e.g. in tapestry is easy because of that line precise ... )

Obs:
1. would be very useful to have a better decision process
2,3. can't be found at the moment for none of the frameworks in Internet, and would give a very unique aspect to you paper.
4. would be very important to be able to estimate the maint. costs of the project.

IMHO, having these detailed numbers, would allow users a better decision about what framework for what project to choose, and even more - to convince the management(where it's required) that the choosen framework was the best alternative.

Posted by Ahmed Mohombe on May 09, 2005 at 04:14 AM MDT #

me parece una excelente página

Posted by sergio on May 09, 2005 at 06:56 AM MDT #

Hmm, the speaker page says "Matt Raible, Raible Designs". I think that answers who will be paying for the condo that week! ;-)

Posted by Matt on May 09, 2005 at 08:53 AM MDT #

It's a fabulous conference - you'll have a great time. I'm not speaking this year but I will be attending.

Posted by Mike Bowler on May 09, 2005 at 11:42 AM MDT #

It would be nice if you could include Cocoon in your comparison. Although Cocoon has been around a long while and has some legacy features that do not lend themselves to a modern architecture, if you make sure you don't use those you will find it also has a number of cutting edge features that make for a great J2EE web environment. The combination of Continuations in Web Flows, XPath binding of form elements to Javabean attributes, Widget reuse in CForms, internationalization support, and the old Cocoon pipeline for multiple output formats makes for a really powerful combination. Comparing it to RIFE would be useful, too.

Posted by Bruce Atherton on May 09, 2005 at 04:18 PM MDT #

Keith - yes, my opinions have changed, but I don't know if my recommendations have. There's a lot of politics in organizations, especially when choosing to use open source. I've yet to find a client that will <em>let</em> me use anything but Struts. Of course, they'll let me do Ajax stuff all over the place - which seems kinda wierd.

Niall - #1 sounds very interesting. I'd love to get rid of the ActionForm XDoclet generation in AppFuse and just declare my POJOs as forms in my struts-config.xml file. Hopefully this works as you say it does. #2 sounds cool - but when is 1.3 coming out? #3 - regarding errors, I know - I filed the bug. ;-) ActionRedirect sounds very cool too. #4 Internationalization - WebWork and Tapestry by default expect you to have a resource bundle per Action/Page. I prefer the Struts way, and have never really found a need for the "bundle" attribute.

Ahmed - sounds like a good exercise, but I don't know if I'll have the time to do it. If anyone else wants to do it, I have the machine and the frameworks setup to do it on.

Bruce - I've had other requests to add Cocoon to my comparison. Unfortunately, I'm not that interested in learning Cocoon. All the other frameworks I wanted to learn . If nothing else, I've seen a lot more demand for them than Cocoon. As far as RIFE, I've seen no demand for it at all.

Posted by Matt Raible on May 10, 2005 at 02:13 PM MDT #

#2 Who can say when a Struts release will happen. #3 Sorry missed the fact you filed that one - thanks :-)

Posted by Niall on May 10, 2005 at 08:59 PM MDT #

Matt, do you think about speaking (or attending) at the next JavaPolis?

Posted by Lars Fischer on May 16, 2005 at 03:50 PM MDT #

Any plans for including Wicket? It'll be at JavaOne, including the web framework smackdown...

Posted by Eelco on May 17, 2005 at 11:19 AM MDT #

Lars - I hadn't really thought about JavaPolis, but it does sound like fun. The timing is kinda bad though - too bad it's not in November or January. December is pretty hectic around here.

Eelco - personally, I don't have a lot of interest in learning Wicket, Cocoon or RIFE. That's why none of them is in my comparison. If there comes a time where their features or ease-of-use sounds better than my current tools, I'll be sure to learn them and add them to this presentation. Of course, I can be bribed too. ;-)

Posted by Matt Raible on May 17, 2005 at 11:17 PM MDT #

Post a Comment:
  • HTML Syntax: Allowed