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.

Commons Validator 1.0.1 Released

This release contains only bug fixes - there are no new features in this release. You can download the binary or source distributions, or simply checkout the Validator web site. I expect that will be included with tonight's nightly build of Struts.

Posted in Java at Dec 15 2002, 05:14:43 PM MST Add a Comment

RE: Struts? WebWork? Tapestry? Cocoon?

Aslak tipped me off about Anthony's Wafer research project. There I found the feature matrix of all the web application frameworks they've looked at. I don't know when this matrix was last updated, but I question a few of the entries for Struts. In particular:

  • Template Languages - it supports Velocity and XML
  • Security - it supports adding a role attribute to your action-mappings to secure servlets, as well as roles in Tiles, Struts-Menu and the logic:present tag library to limit access when using container-managed security. I'm guessing that they mean a different type of security here.
  • Documentation - Apache doesn't host an online demo, but I've seen many, for instance my strutscx demo [strutscx home]. There's also the stxx project. I'm guessing the development team has to host one to fit the satisfy the requirement here. It does have a number of tutorials though, including my favorite Strut By Strut. Example code is all over the place, O'Reilly has been pumping out a lot of it lately.
  • IDE Integration - Easy Struts and the Struts Console.
  • WAP/WML - The Struts WML Tag Library.

I hope this helps to boost Struts' credibility on this matrix. I'm off to Barnes and Nobles to write some more on Tiles and Exception Handling with Struts. It's open 9-11 everyday and all the local libraries closed at 5 today. I'm about halfway through the chapter (page 15). Tomorrow will be fun-filled with a full day at the library and hopefully I will finish. Then an all-nighter (maybe? I hope not) on Monday night to proofread, and then send on Tuesday. I doubt I can get my struts-resume app done by Tuesday night, so I'll probably turn that in later in the week. Although, using XDoclet, Hibernate and Erik's StrutsGen tool, I might just be able to pump the whole app out in a couple of hours!

Posted in Java at Dec 15 2002, 02:33:37 PM MST Add a Comment

Tomcat Deployment App

On of my clients has asked me to setup a deployment app. Basically, we have seven instances of tomcat setup through one Apache webserver. Apache proxies to each instance based on different domain name. They want the ability to upgrade each instance with the click of a button. Here's my idea:

  • Create a Struts-based app that allows file upload, where they can upload a war file.
  • Part of the file-upload process is selecting which servers they'd like to upgrade.
  • Based on the server names, the war file is copied and expanded in the tomcat/webapps/appname directory for each server.

Will this work, and can I do this through a webapp? It'd be cool to do steps 1 and 2 with a webapp and have step 3 run by Ant. Is it possible for a webapp to call Ant? The second piece that they're probably going to want is the ability to setup these virtual slices on the fly, from a web page as well. That might be a little tougher, as it would involve: editing http.conf/workers.properties, creating a new user for the slice, copying/expanding a base Tomcat install, editing the server.xml for new ports, creating a new MySQL instance for the slice, and finally, creating startup scripts. Yeah, I might have to pass on creating that app - probably not logical to do it from a webapp. Especially when it only takes about 10 minutes to setup right now.

Posted in Java at Dec 15 2002, 07:17:58 AM MST 4 Comments