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.

java.blogs - nice crippling update

I like how java.blogs updated their site the night before last. The changes seem to be cosmetic for the most part, with a cleaner look n' feel and some language features as well. Seeing these updates is good, and based on the update last week (where they forgot to find.replace ${community.name} with "java.blogs"), it looks like Atlassian might be releasing the software behind java.blogs.

However, there's one thing they screwed up in their most recent update: the software ceases to function.

Ever since they updated, no new feed entries have shown up on the first page. You can tell because the last entries added are experiencing record hit numbers. WTF Atlassian? Did you update the software and forget to test that it works? ;-)

java.blogs' lack of updates

In reality, I can't be too upset. This lack of updates is boosting my productivity.

Posted in Java at Jan 24 2007, 11:56:02 AM MST 6 Comments

Simplified UI Tags in Struts 2

Struts 2.0.3 contains a much needed simplification of its UI tag libraries. Before 2.0.3, you had to define a property three times (in the value, label and name attributes):

<s:textfield label="%{getText('user.firstName')}" name="user.firstName" 
    value="%{user.firstName}" cssClass="text medium"/>

In 2.0.3+, you can use the "key" attribute to replace all these attributes. For example:

<s:textfield key="user.firstName" cssClass="text medium"/>

One of the things I really like about WebWork/Struts 2 is the previous examples have the ability to write out the entire form row, rather than just an input field. Even better, the markup rendered is customizable via FreeMarker templates.

The bad news is Struts 2.0.3 never got released because the struts-annotations project hasn't had a release yet (good ol' Mavenism). The good news is Struts 2.0.4 is rumored to be out by the end of the month. In the meantime, if you're using Maven 2, you can use AppFuse's repository to get the goods. Here's the repo settings you're need:

<repositories>
    <repository>
        <id>appfuse</id>
        <name>AppFuse Repository</name>
        <url>http://static.appfuse.org/repository</url>
    </repository>
    <repository>
        <id>struts-203-staging</id>
        <name>Apache Struts 2.0.3 Staging Repository</name>
        <url>http://people.apache.org/builds/struts/2.0.3/m2-staging-repository</url>
    </repository>
</repositories>

Yeah, I could just advise you to use AppFuse 2.0 - but we're having a hard enough time supporting our existing users. ;-)

Posted in Java at Jan 23 2007, 06:02:22 PM MST 6 Comments

The Adventure is Over

After 1 year and 7 months, the big adventure is over. It was a great ride with lots of really cool people. As of Tuesday, operations at Virtuas have ceased to exist and everyone was let go. It's not a big surprise - most of us knew it was coming. I won't go into the details of why it was shutdown because I don't think it's that important. Suffice to say, it was a great job and I really enjoyed working with the folks I did.

So what does this mean for me? What's next?

I hope to go back to doing independent consulting like I was before Virtuas. When I was doing my own thing, I never had to travel, earned good rates and enjoyed 40-hour work weeks. That sounds pretty nice after the once-a-month traveling I was doing.

What does this mean for AppFuse 2.0? I hope the release schedule won't change, but it might. I was hoping to get a fair bit done this week, but it's been nuts with the shutting down festivities and the "moving out" drama. With any luck, I'll get a gig soon and I can concentrate on AppFuse development (and relaxing) until my start date.

If you're looking to hire an enthusiastic Web + Java Developer, please take a look at my resume or send me an e-mail.

Posted in Java at Jan 18 2007, 09:14:15 PM MST 20 Comments

AppFuse 2.0 Status

Better than Tots We're working hard on AppFuse 2.0. The good news is things are coming along really nicely. There's quite a few developers working on the project now and they've been a tremendous help. If I knew the move to Maven 2 would've inspired so much help, I would've done it a long time ago! We've got most of the archetypes created and we just need to work on documentation for the 2.0 release M1 release. As far as the roadmap is concerned, we've finished most of the code for an M2 release, but we still need to do documentation. I'm hoping to release 2.0 M1 on Thursday of next week.

If you want to try it, you can checkout the Hello World with AppFuse 2.0 video. After that, feel free to take it for a test drive using the QuickStart Guide.

New features in AppFuse 2.0:

  • Maven 2 Integration
  • Upgraded WebWork to Struts 2
  • JDK 5, Annotations, JSP 2.0, Servlet 2.4
  • JPA Support
  • Generic CRUD backend
  • Full Eclipse, IDEA and NetBeans support
  • Fast startup and no deploy with Maven Jetty Plugin
  • Testable on multiple appservers with Cargo and profiles

Speaking of goodies, I uploaded a bunch of AppFuse desktop backgrounds to Flickr. Thanks to Max Hays of Timberline Group for creating these.

Only 26 days left until the AppFuse 2.0 Release Party! Location TBD. :-D

Posted in Java at Jan 06 2007, 01:18:38 AM MST 3 Comments