Matt RaibleMatt Raible is a writer with a passion for software. 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.

Integrating Hibernate Validator with Spring MVC

Remember when I wrote about Better client-side validation with Prototype back in May? Ted Bergeron responded to my post with the following comment:

Now that I am using Hibernate Annotations Validator, I stopped using commons validator. You can use the hibernate validator without using hibernate for persistence. I wrote some jsp 2.0 tag files to handle binding my form fields with spring mvc, and I use reflection to check for the validation annotations. This makes it no work to have a js calendar for all Date fields, or have class="required" added to all fields that have a @NotNull annotation. I'd be happy to send you the code for appfuse 2.0.

Ted followed up by sending me the code. I took a look at it, and reviewed a well-written PDF he'd written for his work. I told him he should publish it as an article, hooked him up with some folks at IBM developerWorks - and voila! Ted's article, titled Hibernate can meet your validation needs was published yesterday. Nice work Ted!

I'm looking forward to trying to leverage Hibernate Validation annotations for all the web frameworks in AppFuse. Should be interesting hacking into the cores of the frameworks to modify how their validation engines work.

Posted in Java at Sep 13 2006, 11:17:46 AM MDT 14 Comments

Apache Roller 3.0 RC1

From the roller-dev mailing list (with minor edits for HTML readability):

Finally, we have a release candidate for Apache Roller 3.0 (incubating). I've provided links to all of the release files, what's new information, updated docs and Roller Support project downloads.

Please test out the new release and provide feed back here on the list in our JIRA bug tracker. I expect that there will be a least a couple more release candidates.

The Roller webapp (the binary release)

The Roller source (the source release)

*** New features

This is a major new release of Roller with these new features:

* The front-page blog
  Front-page of a Roller site is now an easy-to-customize weblog

* Completely new URL structure for weblogs and feeds
  Old URLs are HTTP 301 redirected to appropriate new URL

* Completely new macro system
  With complete documentation. Old system is deprecated but still supported

* Non-core themes and plugins moved to Roller Support site
  For development, support and maintenance by wider Roller community

Find our more in What's new in Roller 3.0

*** Updated documentation

http://people.apache.org/~snoopdave/roller30-user-guide.pdf
http://people.apache.org/~snoopdave/roller30-template-guide.pdf
http://people.apache.org/~snoopdave/roller30-install-guide.pdf

*** Roller Support project sources

Roller Support project now responsible for development, support and maintenance of non-core Roller themes, plugins and other add-ons.

Roller Support project: home page, additional themes, additional plugins, required JARs.

Nice work Roller dev team! I didn't contribute much to this release, but I sure am looking forward to using it.

Posted in Roller at Sep 12 2006, 02:02:44 PM MDT 7 Comments

Headed to the Drunkest City in America

I'm sitting on a Frontier flight getting ready to take off for the Drunkest City in America. Should be an interesting trip for sure. Anyone know of any good pubs around the Hilton Milwaukee?

Posted in General at Sep 11 2006, 11:40:54 AM MDT 3 Comments

What's a good portable USB Drive?

After finding Mark's HOWTO Rip DVD Movies To Your iPod Using Free Software, I've started ripping some DVDs to my hard drive. On the list: Top Secret, Old School and Office Space. I imagine my hard drive will fill up pretty fast, so I'm in the market for a portable USB (or Firewire) Drive. Know of any good ones? I'll probably head down to the Apple Store tomorrow and pick one up.

Monday I'm heading out on a whirlwind trip to Milwaukee, followed by a weekend in Vegas. I'm teaching a class where we use Maven 2, so it might be a good idea to take the Maven repo with me. Especially since it's rumored the classroom won't have internet access. The good news is I have an Ubuntu VMWare image that already contains all the necessary JARs. Hopefully I can convince all the students to use it.

Update: In a perfect world, I could use my 60 GB iPod as a fat USB drive. However, it doesn't just "plugin and work" on a Windows box like thumb drives do. Rugged

Update 2: I ended up getting the LaCie Rugged All-Terrain Hard Drive. It was a little pricy, but it's tough to assign a value to a backup drive. With 120 GB, I should be able to use SuperDuper! to clone my hard drive and have plenty of room for movies.

rsync -v -t -l -r ftp.ibiblio.org::maven2 ~/.m2/repository

...is a wonderful thing. Looks like the Maven 2 repo is currently at 7.28 GB.

Posted in Mac OS X at Sep 09 2006, 05:16:48 PM MDT 11 Comments

Integrating Compass with AppFuse and the Display Tag

ChenRanHow has written up a detailed tutorial on how to integrate Compass with AppFuse and the Display Tag. From his mailing list post:

Thanks ChenRanHow!

Another great tutorial was recently written by Luciano Fiandesio. If you're looking to use Quartz, checkout Luciano's (well styled) AppFuse and Quartz tutorial.

In other AppFuse news, FanYang has started translating the documentation to Japanese, Mike McMahon has converted the appfuse-hibernate module to annotations, CruiseControl is continually testing, Mike Horwitz has solved most of the "Maven doesn't read a WARs dependencies" issue, and Scott Ryan is still hard at work on the code generation plugin. Even better - we've asked Scott to come aboard as a committer and he's accepted. Welcome aboard Scott - we appreciate all the work you're doing.

As far as progress on AppFuse 2.0, we're almost done with the Maven 2 conversion. The only thing left is figuring out how to get Mike's maven-warpath-plugin to hook into the Eclipse and IDEA plugins to they generate project files correctly. After that, it's time to start on documentation. I'm still torn on if we should use Confluence or DocBook. However, after looking at Spring's documentation for the past week, I think DocBook is probably the better choice. Then again, Stripes' Confluence Wiki looks nice and organized.

What do you think? What's the best way to write documentation for an open source project? Which system do you prefer to read? From experience, I prefer reading Spring's documentation over trying to find stuff in WebWork's wiki.

We've had great success with AppFuse users contributing to the documentation via a wiki, and I'd hate to create a documentation system that gets away from that. Maybe a DocBook/Confluence combination is the way to go? It looks like the CeltiXFire folks are having a similar debate.

Posted in Java at Sep 09 2006, 12:51:40 PM MDT 6 Comments

GlassFish Numbers Fudging

Remember when I thought Sun/java.net was trying to make GlassFish look more popular than it is? It looks like they took it up a notch in August. Not only do they have the top spot in "most accesses", but they have the top 2 spots!

java.net stats

Isn't it possible to automate these stats instead of using a spreadsheet? ;-)

Posted in Java at Sep 08 2006, 01:58:14 PM MDT 5 Comments

Continuum vs. CruiseControl for Maven 2

I spent some time this past weekend getting automated builds setup for AppFuse 2. Since the project now uses Maven 2, I figured I'd give Continuum a try. I pointed it at my pom.xml in SVN and expected everything to work out-of-the-box. No dice. It seems that Continuum reads the artifactIds instead of the module names for sub-project resolution. To workaround this issue, I'd basically have to rename all my sub-projects to have an "appfuse-" prefix. Doesn't that violate the whole DRY principle? Sure, there's projects that do this, but there's others that don't.

Since I didn't feel like renaming the modules/directories in SVN, I gave CruiseControl a try instead. It took a bit of elbow grease on my part, but I ended up with a config.xml file that works splendidly. It seems somewhat ironic to me that the CruiseControl works better with Maven 2 than Continuum does.

Posted in Java at Sep 05 2006, 03:29:04 PM MDT 28 Comments

Southeast Light Rail

On my way in via Light Rail this morning, I noticed a sign with http://www.southeastlightrail.com on it. This site tells you about the new light rail that's opening in Denver in a few months. The road part of the T-Rex Project was finished last week, and we couldn't be happier. We finally got direct access to the freeway after 3 years! Aaaahhh, the things you notice with an EVDO card on the train...

Posted in General at Sep 05 2006, 09:21:35 AM MDT 1 Comment

New Puppy

Abbie and Jack are two of the happiest kids in the world today. Grammy (Julie's mom) flew into town last night and brought a new puppy with her. Abbie has named her "Cookie" and she's a Cavalier King Charles Spaniel. She's 12 weeks old and already knows how to "go in the grass" and fetch things you throw for her. Thanks Grammy!

Cookie

BTW, I did notice (and ignore) the following note on Flickr's homepage:

Remember! Flickr Terms of Service specify that if you post a Flickr photo on an external website, the photo must link back to its photo page.

WTF? I guess they don't like the lightbox thing, eh? ;-)

Posted in General at Sep 02 2006, 12:53:45 PM MDT 7 Comments

Verizon V640 ExpressCard - works like a charm

Verizon V640 As mentioned previously, I've been waiting on a Verizon V640 ExpressCard for my MacBook Pro. It arrived this week, and I had a chance to try it out yesterday. I plugged it in, waiting a few minutes, entered the root password, and voila! - I was online. Pretty slick stuff. Bandwidth tests show the speed is around 512 KB/sec. With all the wireless issues I've had, this thing is a nice treat. Who knows if I'll even bother to use wireless anymore!

Speaking of MacBooks, it seems that the first ones produced were some of the best. I have 3 co-workers with machines, and while one works great, the others have some serious issues. One randomly reboots (without warning) and the other guy's has been in the shop for a week b/c it has kernel panics 2-3 times per day. Besides the wireless, the only other issue I have is mine doesn't work on some projectors. Since I'm doing a lot of training and conferences in the next few months - I should probably get that looked at.

Posted in Mac OS X at Aug 31 2006, 08:21:07 AM MDT 3 Comments