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.

Maven and Automation of Build/Test/Deploy process

I've convinced the folks at my new project to use Maven for organizing, building and testing our projects. It's my recommendation because they have many (5+) webapps that all have the same dependencies. Maven was the obvious choice to eliminate duplication and standardize directory structures, etc. So my question is - how do I automate our build/test/deploy process? I currently use Anthill with Ant, and wish I could use it with Maven. Last time I checked, I couldn't. I've heard I could use CruiseControl. If that's true (and recommended over Anthill) - anyone got a HowTo?

Posted in Java at Aug 21 2003, 02:33:18 PM MDT 5 Comments

Tomcat 5.0.9 Alpha is now available for testing.

Download and Changelog. I won't be downloading or trying any more Tomcat Alpha's - I just don't have the time. Nor will I announce any more releases until a beta comes out. I can hear the Thank You's already... ;-)

Posted in Java at Aug 21 2003, 11:11:05 AM MDT Add a Comment

MySQL Problem: No operations allowed after connection closed

I asked the following question on the Hibernate Forums, but thought I'd put it here to see if anyone can help.

I'm using the open-session-in-view pattern and getting the following error at random:

2003-08-21 07:00:08,873 WARN [Thread-27] JDBCExceptionReporter.logExceptions(38)
    | SQL Error: 0, SQLState: 08003
2003-08-21 07:00:08,874 ERROR [Thread-27] JDBCExceptionReporter.logExceptions(46
    ) | No operations allowed after connection closed
2003-08-21 07:00:08,875 ERROR [Thread-27] JDBCException.(37) | Could not execute
    query java.sql.SQLException: No operations allowed after connection closed
at com.mysql.jdbc.Connection.checkClosed(Connection.java:2497)
at com.mysql.jdbc.Connection.prepareStatement(Connection.java:1287)
at com.mysql.jdbc.Connection.prepareStatement(Connection.java:1267)
at org.apache.commons.dbcp.DelegatingConnection.prepareStatement
    (DelegatingConnection.java:187)
at net.sf.hibernate.impl.SessionFactoryImpl.getPreparedStatement
    (SessionFactoryImpl.java:537)
at net.sf.hibernate.impl.BatcherImpl.prepareQueryStatement(BatcherImpl.java:56)
at net.sf.hibernate.loader.Loader.prepareQueryStatement(Loader.java:482)
at net.sf.hibernate.loader.Loader.doFind(Loader.java:136)
at net.sf.hibernate.loader.Loader.find(Loader.java:620)

I've used my same ServiceLocator.java class for the past 6 months on a couple of different projects (MySQL and Oracle), with no issues. But now I've developed a new app for a new client, and this error is popping up a LOT. Any ideas? I'm only closing the connection after my doFilter() method in a Filter.

It doesn't happen at all on my Windows XP machine (I've never seen the error). Only on Linux.

uname -a gives me:

Linux kgb08 2.4.20-8bigmem #1 SMP Thu Mar 13 17:32:29 EST 2003 i686 i686 i386 GNU/Linux

Tomcat 4.1.27, MySQL 4.0.13-Max-log, JDBC Driver mysql-connector-java-3.0.8-stable-bin.jar.

I've also seen it happen on MySQL 3.23.56, but now I can't seem to reproduce it.

Any ideas?

Posted in Java at Aug 21 2003, 07:50:12 AM MDT 11 Comments

RE: Mozilla Firebird Extensions

Kenneth Hunt (via Erik) hooks us up with a link to Mozilla Firebird Extensions. I tried to install one of my favorite Mozilla extensions - Autoform. No dice - Not a valid installer package. Damn.

Posted in The Web at Aug 21 2003, 06:24:24 AM MDT 2 Comments

AT&T Wireless will have Unlimited Data soon!

I called AT&T this morning to increase my data amount on my wireless plan. I bumped it up to the max (8 MB) so we could do choose our hotels as we go (using GRPS and our PowerBook). The lady put me on hold for a minute to two, and then came back with "actually, there is the Unlimited Data plan you were looking for - it's $24.99." I said - "hook me up!" But when she tried to select it, it said "not active." So it's in AT&T's system, just not activated. Cool!

Another tip she gave me when road-tripping was when you receive "No Network" - turn the phone off and back on so it can re-initialize with the nearest tower. BTW - how is AT&T's GSM coverage in California?

Posted in General at Aug 20 2003, 10:13:43 PM MDT 1 Comment

Tired of copying paths?

Are you tired of copying paths for environment variables and such. If so, checkout Ninotech's (free) Path Copy. I've used it for years - a very cool tool IMO.

Click me to download

Posted in General at Aug 20 2003, 12:24:38 PM MDT 3 Comments

Planning Raible Road Trip #7

Crater Lake Last year in September, my parents and I embarked on Raible Road Trip #6 when returning from Web Design World 2002 in Vegas. Julie didn't join us since she was 7 months pregnant. However, Raible Road Trip #7 will be Julie, Abbie and I - and it begins this weekend. I'm starting to get really excited about it. We bought our plane tickets last night, and tonight we started planning the trip. Here it is so far - thanks to all for your suggestions.

  • Fly into San Diego on Saturday morning. Stay with Julie's sister until Sunday afternoon or Monday morning.
  • Drive like a bat out of hell to Big Sur, which is about 8 hours according to MapQuest. Stay a night or two - those cabins that Andy mentioned sound nice.
  • From Big Sur, head to Bodega Bay. I'm a backwoods Montanan, so I don't know about San Fran - we might just skip it. It sure sounds cool, but I also know it's pretty crowded. I happened to remember one of my best friends (that I haven't talked to in years) actually lives in Bodega Bay - so I called him up tonight. He's fighting fires in Montana, so he might not be there - but his wife, Katie, and son will be there - so we'll probably stay with them for a night or two. This brings us to Thursday or Friday.
  • Our end destination is meeting my parents at the Oregon Caves on Friday or Saturday, so we'll probably head from Bodega up there (7 hours). Hopefully, we'll catch some redwoods along the way.
  • My dad has a couple rooms booked at Crater Lake on Sunday and Monday night. My sister, Kalin, is meeting us on Saturday.

Boy this is gonna be a fun trip. I haven't been on a road trip on California since I was a little kid. It was in the early 80s and my dad had a rigged up canvas topper on VW Rabbit pickup. We camped every night and drove like maniacs during the day. Abbie will be too young to remember, but that's what the ol' camera is for!

Posted in General at Aug 19 2003, 11:07:29 PM MDT 6 Comments

Cool FTP Tool

If you have a secure server setup like I do, I think you'll find that WinSCP (Windows) will make your life much easier.

Posted in The Web at Aug 19 2003, 06:42:35 PM MDT 5 Comments

Building high-content web applications

I've recently been tasked with rebuilding a JSP-based site using a Struts architecture. One of the issues (that I see) in the current architecture is that there are a number of JSPs with the text for the pages hard-coded in them. After re-writing this app, we plan on deploying it to 25+ customers - and we certainly don't want to have 25 different JSPs (with text) for each customer. I've proposed a database, but that might be a little resource intensive - so I'm wondering how folks have done this in the past (I'm sure it's been done before)?

Options I see are:

  • A Database table with the following columns (page_id, title, content, section_id).
  • Text files that are imported using <c:import url=""/>

What options have you used (feel free to add more) - if you've used the database approach - how do you define the page table? Maybe we should use the Roller way and use Velocity and OSCache.

Posted in Java at Aug 19 2003, 06:30:28 PM MDT 18 Comments

I got blasted today

I formatted the Red Hat hard drive on the machine they gave me at work today - installed XP and went to a meeting. We got interrupted in the meeting for lunch, and resumed the meeting after lunch. After our meeting finished, I was pleasantly surprised to see XP had finished installing (I stopped by every-so-often to kick it into gear again). Later this afternoon - about 10 minutes ago - the Network Admin came by to yell at me for getting blasted. I didn't even do anything but install XP and this damn little virus got me. And I was so proud for not getting it at home. Lesson learned? Every time you install XP, unplug it from the network and install a firewall before going further.

Posted in General at Aug 19 2003, 03:49:05 PM MDT 3 Comments