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.

Eclipse Plugins and Hibernate

I found a new site with a list of Eclipse plugins tonight. I was hoping that the Ant View plugin could solve my Ant problems in Eclipse, but I can't seem to figure out what it does. I gave it the ol' 30 seconds of investigation - maybe I should read the documentation. The problem I'm having now is (after swapping Ant 1.4 jars for 1.5.1) is:

Unable to find a javac compiler;
com.sun.tools.javac.Main is not on the classpath.

Hmmm, works fine from Cygwin, and Eclipse (2.0.2) has tools.jar and rt.jar in the classpath. Must be time to download a nightly build.

There was a lot of talk today in the java.blogs community about Hibernate. I'm happy to see this as it feels like I just bought a new car and everyone is saying it's the best car on the road. I decided to use Hibernate based on Dave's implementation in Ag. It looked easy enough, so I figured - why not?! It turns out, at the same time, that the XDoclet folks were in the midst of creating a new hibernate module in CVS. In fact, I got the hibernate module from Joel Rosi-Schwartz (I'm assuming a hibernate developer) before it was even in the XDoclet source tree.

I got to be a guinea pig in making hibernate tags work with XDoclet. I have to say that with Dave's working example, I was able to markup a POJO with hibernate/xdoclet tags and generate my persistence layer in a matter of minutes. It just worked. Kinda like Tomcat IMHO. That's how software should be. Check out my security-example if you're interested in using Hibernate with XDoclet. The readme in the source will explain how to run initial generation and tests. Currently, it generates a Struts Validator Form and VO from an Entity bean (located at src/ejb/org/apache/template/User.java). Why? Because Struts Forms can only be generated from Entity Beans. This needs to change IMO. But at the same time, the EJB architecture is already in place, I just need to execute the ejb-related tasks, and I'm in business.

In other news, a couple of Struts related goodies:

  • ONJava.com has an introduction to the Validator Framework by Chuck Cavanass, an Introduction to Eclipse and Creating Reports with FOP. I used FOP on a project last year around this time and it's super slick. It's basically using XSL to generate PDF and RTF from an XML file. I highly recommend using something like RTF2FO to generate an XSL Template from a Word document.
  • Struts Kick Start is now shipping from Amazon. I'd buy all the Struts books just to say you have them. I've got three ;) Haven't read any. Damn, I wish I had the time! Reading Erik Hatcher's Java Development with Ant was one of the smartest things I did this year. Actually, the smartest thing I did was get my wife pregnant yeah baby
  • I downloaded TogetherSoft's Control Center to do some UML Modeling for the Struts Chapter, and found that they use Struts on their site. Nice...

Posted in Java at Dec 12 2002, 05:37:04 PM MST 22 Comments

Struts Books are Hot!

I found on the Struts website that the top 2 Java books sold at Amazon.com this month are Ted's Struts in Action and Chuck's Programming Jakarta Struts. You can look at the Bestselling Java Books for proof. Don't you find it strange that #3 is a Perl book though?!

Posted in Java at Dec 12 2002, 11:49:51 AM MST 2 Comments

XDoclet and EJBs

I saw the following on the xdoclet-user mailing list today:

Chapters from Manning's "EJB Cookbook", by Ben Sullins and Mark Whipple will be made available on TheServerSide for public review. A chapter on "Code generation" is now available for download. "Code generation" presents the most common uses of XDoclet, an open source tool, tightly integrated with Ant, that lets you generate source code or other files.

Also, I just received the following e-mail from a fellow Denverite, Mike Clark:

Subject: Nice Blog

Hi Matt!

I've been enjoying reading your blog for a while and meaning to introduce myself since we both live in Denver. I'm speaking at the DJUG in April, so perhaps we can meet each other there.

By the way, my weblog is at: http://www.clarkware.com/cgi/blosxom.

Nice - gotta like e-mails like that!! Apparently, Mike is the Author of BitterEJB and also has some chapters for review at TSS:

If you're into JMS and message-driven beans, my "Bitter Messages" chapter is up for review on TheServerSide. As always, any feedback you might have is greatly appreciated!

Posted in Java at Dec 12 2002, 08:45:19 AM MST Add a Comment

How Hot are your Topics?

I noticed the "hot" links over at java.blogs this afternoon. They show who has the most read topics for a particular day - at least on that website. I had 2 of the top 3 yesterday! If that's not motivation for better writing, I don't know what is. But is this really a popularity contest? Are we trying to boost our Google/Java.Blog rankings? Probably not, but it sure won't hurt when you're out looking for a new job!

That being said, I interviewed for a J2EE developer position this morning. The project sounds pretty cool - using Struts, Servlets, JSPs and such to create a web front end to an Oracle database. The guy who interviewed me seemed very smart and would be great to work for - he's chosen J2EE as an architecture and wants to run the production system on Tomcat. Nice! All the stuff I've been working with for the past year and a half. He's probably reading this right now (I sent him the url to my blog), so hopefully this post helps me out. ;-)

Another reason for writing this post is to let you know that there is another open position on this project. Required Skills: HTML, XHTML programming. Any Java/J2EE, LDAP or Apache/Tomcat skills would be a bonus to complement the team. If you're interested and you live in Denver, let me know, and I'll send you the recruiter's e-mail. I believe the contract is for 3-6 months.

Posted in Java at Dec 12 2002, 07:58:24 AM MST Add a Comment

Code Readability

There's a debate taking place at FreeRoller about code readability. Isn't this a non-issue with sweet code formatting tools such as jalopy? I don't think I've cared how my code as looked in months, I just use the formatter. For the record, I prefer one space, not all my variables lined up on one side. Why? If you add a new variable with a long name, you have to adjust the spacing for all your variables - what a pain in the ass. However, Jalopy does offer this type of formatting and will plugin to all your favorite IDEs.

Along these same lines, XDoclet uses a beautify ant task that fixes the code everytime you re-compile. While it's nice, it can be annoying that you have to reload your .java file everytime you compile.

Posted in General at Dec 12 2002, 01:07:25 AM MST 1 Comment

Tomcat 4.1.17 Alpha

Apache Tomcat 4.1.17 Alpha has just been released. Significant changes over 4.1.16 Beta include fixing socket binding in Coyote JK 2 (where only the loopback interface would be bound), administration webapp fixes for resource link handling, minor performance tweaks in the TCP endpoint, as well as other minor fixes. View the release notes or download.

Posted in General at Dec 12 2002, 12:23:20 AM MST Add a Comment