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.
You searched this site for "appfuse". 771 entries found.

You can also try this same search on Google.

JTidy Filter

For those folks looking for pretty HTML when doing a "view-source", they might want to check out the JTidy Filter. I tried to integrate this into AppFuse, but no dice. It never prettied up the HTML - maybe it's a SiteMesh conflict or something, who knows. I doubt I'll add this to AppFuse. Mostly because no customer/project has ever asked for this and because I couldn't get it to work (failed the 10 minute test, but I actually spent an hour on it).

Posted in Java at Feb 09 2005, 09:11:59 AM MST 9 Comments

AppFuse not for Rookies

Adrian Sutton hits the nail on the head:

...for seasoned veterans who understand (its) technologies well, AppFuse should be a big time saver. I can see a lot of beginners getting into very deep water with it though.

AppFuse can help you get started quickly, but it won't help you really learn how to use the different technologies. Its tutorials are designed to show you how to CRUD a simple object, but that's about it. For learning the different frameworks, that's what books are for. Technical authors put a lot of time and energy into writing. A good way to show your appreciation is to buy their books. :-D

My Recommendations:

Posted in Java at Feb 08 2005, 04:04:59 PM MST 7 Comments

Life Update

Technology blogs are boring for the most part. Sure it's cool to read about someone configuring or trying something out for the first time. However, if you run a technology blog and you read through your archives, chances are there's not much in there that peaks your interest anymore. Part of the reason I started this blog is so I could look back over the years and see what was going on in my life. This is one of those posts. One of those posts that I'll look back on and appreciate.

2005 has been a pretty good year so far. This is largely in part to the fact that I don't work from home anymore, and therefore get some interaction other Java junkies. Another thing that's made it really nice is riding to work. I've ridden my bike to work every day since I started doing it. My goal is to ride everyday but those when it's raining in the morning, or when I have one of those "Oh shit!" mornings and I'm late for a meeting. I think I can ride all but 5 days this year. The past couple of weeks, it's been pretty cold (20-30°F), but it's actually been quite nice. It's a lot like skiing - you just have to dress for it.

Another reason I've been enjoying myself a lot is b/c I haven't been working on the weekends or late nights. I've been sleeping in, going to bed before midnight, and having a good time with Jack and Abbie. Last weekend, Abbie I went to Ocean Journey and the Colorado Crush game. Apparently she had a good time b/c when I asked her if she was excited about the DU Hockey Game this weekend, she said "Football!". Looks like we might be going again.

Jack is growing up fast and is already in 9-month outfits and he's only 5 months old. Since Holly moved in, he's been "Happy Jack", which is nice considering he cried 12 hours/day for the first couple of months. He's smiling a lot, squirming like a madman and even rolled over a couple of days ago. Before we know it, he'll probably be crawling and chasing after his big sister.

Last, but not least, I'm learning that I need to take advantage of my contracter status more. Today I took the day off to work on Spring Live. I hope to start doing it more often, as well as taking days off to work on AppFuse. My strategy for that is: go in early and work 4 10-hour days per week. If I'm in the office by 6, I can be home by 6 and hardly anyone notices.

Speaking of AppFuse, it continues to be popular and has the most mail traffic on java.net. While that's great, it's tough to keep up with the mailing list. I've started to not reply b/c I need to get other things done. The last two weeks of this month, I plan on pumping out new AppFuse and Equinox releases, so I'll likely get back into it then. Developing open-source projects is a lot of work, but it's a nice way to show clients your knowledge.

That's pretty much it. Julie continues to be the woman of my dreams and it's awesome living in a new/big house in the heart of Denver. I don't know how much I'll update this blog in the next few weeks - sometimes it's just better to quit e-mailing and blogging and get some work done. ;-)

Posted in General at Feb 08 2005, 12:56:12 PM MST 2 Comments

iBATIS Article on ONJava.com

If you've heard of iBATIS, but never had the time to look into it, there's a good intro article on ONJava.com: Object-Relational Mapping with SQLMaps. iBATIS continues to be my persistence framework-of-choice when Hibernate doesn't mesh with the database schema. Now if we could just get someone to write a Middlegen Plugin to generate POJOs and SQL Maps from database schemas. ;-)

Posted in Java at Feb 03 2005, 06:35:03 AM MST 6 Comments

Generate your iBATIS mapping files with sql2iBatis

From the iBATIS mailing list:

Hi everyone, 

I just wanted to remind everyone of Alex Egorov's sql2iBatis tool. 
I've recently had the chance to try it.  If you have a database that's
already created, this will save you a lot of time.  It will kickstart
your project.

Given DDL, it generates the SQL Mapping files and the JavaBeans.  It's
super simple and extremely fast.  You may want to tweak the Perl to
generate bean field naming conventions to your liking, or just
refactor it afterwards.   You might also want to run the source
through Jalopy or your favorite IDE formatter to achieve the
formatting you want.

However you cut it, this tool will save you tons of time (even if you
don't use everything it generates...deleting is faster than writing).

http://alxeg.narod.ru/ibatis/index.html

Cheers,
Clinton

Too bad it's a perl script. It would be nice to add something like this to AppFuse so you could get the same generate-mapping-files thing like Hibernate has with XDoclet.

Posted in Java at Feb 02 2005, 07:10:11 AM MST 5 Comments

Made it home!

We made it home today and boy is it great to be back in Denver ... and healthy. We had a great time with my parents and sister at my parent's place in Salem, Oregon. It was so cool being back in another place I call home. For the past few years, I've always looked at Montana as my true home, but I came to realize that I need to visit Oregon a lot more. It took me until this weekend to realize the power that your parents house can hold for you. I experienced one of several "perfect moments" in my life when I was holding baby Jack on Saturday night. It just felt great being around so much love. And their basement sauna rocks. I'll be installing one in my basement in the next year.

Friday was a nice and smooth flight out there. We left at 8:30 a.m. and Abbie slept for most of the flight. Not only that, but Frontier has individual TVs for every passenger. Julie loved it and watched HGTV for the 2-hour flight. The highlight of the trip is when both kids threw up (from coughing) w/in 5 seconds of each other. Like some kind of wonder-woman, Julie got both kids messes in the same hand.

My sister, Kalin, showed up a couple of hours after us - and we all enjoyed a nice evening together. Later that night, Kalin and I made a "Welcome Home Dad!" sign and drove to the Portland airport to pick up my dad. He flew in from Amsterdam (after visiting Germany and working in Tanzania for a week) and had been on a plane the past 20 hours.

We spent most of the weekend just hanging out and laughing with old friends. One of my best friends from high school (whose name is also Matt) has two boys (4 and 2) and Abbie had a great time trying to keep up with them. I was terrified of them at first b/c they were so crazy, but I ended up having a great time with them throughout the weekend. Julie dreads Jack growing up now more than ever.

Today was a nice easy flight, where Abbie slept half of it and watched Monsters Inc. the other half. We came home to melted snow, and missed the "2 feet" of snow that fell last night. After having the last week off being sick and then on vacation, I'm very motivated to do some AppFuse and Spring Live work this week - in addition to my regular job. It's good to be home.

Posted in General at Jan 31 2005, 06:27:01 PM MST 4 Comments

AppFuse at Dallas JUG

Apparently, the Dallas JUG will have the pleasure of listening to a presentation on AppFuse this Wednesday. I can't seem to find any information on their site, but someone forwarded me an e-mail that looks genuine. You know a project is getting popular when other people are giving presentations on it! ;-)

Posted in Java at Jan 25 2005, 08:35:38 PM MST 4 Comments

AppFuse Startup Video?

Dion wants to see an AppFuse Startup Video like Mike Clark's CruiseControl Action Movie. While this sounds like a good idea, I think I'd be shooting myself in the foot if I created it. Why? Because then more folks would start to use AppFuse, and hence, I'd have to answer a lot more e-mails on the mailing list. Being a top-ranked project on java.net doesn't help. You might think that there's a lot of issues with AppFuse, and that's why the mail traffic is so high, but that doesn't seem to be the case. Most questions seem to be along the lines of "Why did you do this?", "What do you think about adding X technology?" or "My Hibernate relationships don't work."

Few of the issues relate to AppFuse directly (i.e. build file and directory structure), but many of them relate to the technologies it depends on. Good HowTos should lead to a lot less Hibernate questions, and I hope to work on that before the next release. As far as the other questions, I need to add some links from the FAQ to the mail archives so I can quite repeating myself. I think a lot of the mail traffic is just an indication of a successful open-source project. In other words, when you get popular - you have little time to develop anymore. I probably spend 1-2 hours per day just answering AppFuse e-mails.

Another unfortunate side-effect of this is that there seems to be a lot of newbies. When AppFuse was first released in April 2003, it seemed that only experienced, smart developers used it. Maybe this was because there wasn't any documentation (besides Pro JSP and Java Development with Ant, which explains the entire build.xml file), so folks had to really understand the dependent technologies to use AppFuse. Now there's questions about the basics of different frameworks. In most cases, I'd like to respond to a link to the framework's documentation - but sometimes the documentation just isn't there. I guess that's why frameworks like Ruby on Rails succeed - all the dependencies are part of the framework. If I tried to do that in the Java Community, it'd be project suicide. I'd spend all day answering questions like, "Why aren't you using Hibernate?", "Why Not Spring/JSF/Struts, etc." Furthermore, I'm not as smart as the framework developers, so it'd simply never happen.

But I digress. What's in it for me if I create an AppFuse Startup Video? I can see what's in it for Mike - his video is about a project he doesn't support (AFAIK) and the video should lead to more book sales. I suppose I could try and hook users that AppFuse is explained in Spring Live, but that's not really the case. Maybe I should just do an Equinox Startup Video. ;-)

Posted in Java at Jan 24 2005, 10:29:12 AM MST 15 Comments

Comments are flakey?

I've gotten several e-mails from readers that they haven't been able to leave comments on this blog. I suspect it has something to do with twisty comments, but I just tried them in Firefox 1.0 on Windows XP and they seem to be working fine. In order to help me track down this problem, try posting a comment to this entry and see if it works. Make sure and copy it before you post it, just in case it doesn't work. Clicking on the "Permalink" or title for this post will take you to a backup comment form that seems to work regardless. Thanks for the help!

Update: From the various comments, there doesn't seem to be a common thread. It seems that half the folks that used Firefox + XP it worked for and the other half it didn't. I doubt it's a caching issue, but I have been seeing a lot of the following in my logs:

ERROR 2005-01-22 19:51:01,944 | RequestProcessor:processMapping | Invalid path /comment was requested

Roller recently changed from using /comment to /comments - so I don't know if it's spammers hitting the old URL or what. My guess is yes since it seems to happening in blocks. I'll try to add a preview button tonight so users will get taken to the permalink form for previewing. Either that or I could just change to always using the permalink form. It's up to you guys - let me know what you prefer.

Posted in General at Jan 21 2005, 10:31:52 PM MST 30 Comments

RE: Hype: Ruby on Rails

Patrick thinks that Ruby on Rails is all hype.

Now maybe I'm just a bit biased since my framework isn't getting all the slashdotters oohing and awwing over it, but I think Ruby on Rails is way over hyped. The tutorial here is great and gave me a very good overview of what it does. At the end of the day, RoR is simply a RESTful CRUD framework.

I'd like to agree with Patrick, because that is my natural tendency when I see a project that everyone praises. But I know better. I think it's better not to speculate on the productivity or usefulness of a framework until you've used it to develop an app.

That's what I did with Spring, WebWork, Tapestry and JSF last year. Now I feel like I know "the truth" and whether one framework is better than the other. The truth is they all have strengths and they all have weaknesses. While one might work well for one project, it might not for the next. I think the best thing is that you don't setup yourself for framework lock-in. If you only know one web framework for Java, you should probably pick up a book and develop an app with another framework - just to see how things are done differently. Now that I've used all of the Big 5 in Java, I don't think it would be that hard to migrate an app from one framework to next.

So what am I trying to say? Don't bash on a framework until you've tried it. And I don't mean toying around with it on a Tuesday night, I mean using it for a real-world project. I'll probably diving in and doing a little Rails development later this year. Why? So I can see if all the hype is accurate. ;-)

Posted in Java at Jan 21 2005, 01:40:37 PM MST 8 Comments