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.

Change Tomcat's Timezone

Did you know that you can change Tomcat's timezone? I didn't, but I learned how to today from Dave. Just create an environment variable, CATALINA_OPTS and add a value similar to the following:

CATALINA_OPTS=-Duser.timezone=America/Denver

BTW, the values in CATALINA_OPTS should be separated by spaces. Here is a list of possible timezones.

Posted in Roller at Dec 02 2002, 05:21:24 PM MST 3 Comments

My Neighborhood

Who lives on your blogstreet? Here's my neighbors.

Posted in Roller at Nov 29 2002, 05:38:01 PM MST Add a Comment

Session Timeout in Roller

Jeff Duska expresses his frustration with Roller - he wrote a nice long post and when he clicked on "Post to Weblog", he lost it all. This happens to me all the time, but since Roller used container-managed authentication my post still submits after I re-login. I hope Jeff didn't just give up after he saw the login screen. Even if this fails, the back button should get you back to your post. Unless you're using the Ekit Editor - which I strongly advise you don't use because of this. Once you leave the page, and click back - Ekit doesn't remember your post - and in that case, I agree - ughhhh!

Posted in Roller at Nov 22 2002, 11:12:03 AM MST Add a Comment

Flock RSS Aggregator

Dominic has setup an instance of flock. I gave up on it when it wouldn't install on my XP machine, but after looking at the demo - this is a very cool webapp. Hmmm, I wonder if we can integrate it into Roller somehow? Of course it's possible, but where/how do we begin is the question?

Posted in Roller at Nov 21 2002, 07:05:01 PM MST 1 Comment

Roller's Search Feature

I'd love to use Lucene to develop Roller's search feature, but there have been discussions of a much simpler search (i.e. simple SQL LIKE `%searchTerm%' statements). Since I'd like to dig in and learn Lucene, I think it would be valuable to integrate into Roller, but so as to not discourage any other ideas - maybe we could code for a pluggable search module. That way, roller administrators could choose which one they liked, and developers could plug in others.

I don't know how much time I'll have to contribute to this, but just wanted to throw it out there. BTW, does anyone know if Lucene can index existing database records (weblog entries)? I would imagine so. Would we want to index bookmarks and newsfeeds as well? The nice think about the Google search on this site is that it indexes everything. Anyone know of a java-based google-like search package?

Posted in Roller at Nov 21 2002, 09:55:01 AM MST 1 Comment

Why do you blog?

Lance asks why do you blog? Here is my list:

  • I seem to get better assistance for questions I have from bloggers than from Experts Exchange. So it's been great for getting help/ideas when coding.
  • Reading blogs keeps me more informed of the latest developments (both IT and otherwise). Writing a blog inspires me to seek out and find better ways of doing things.
  • I am the only developer on my current project, it gets lonely - blogging makes me feel like I have co-workers.
  • I needed to re-design my site and using Roller turned out to be an easy way to do it. I didn't realize that putting together a new theme would get me committer status!
  • I love Roller and I love using Roller.
  • I like writing HTML everyday.
  • Reading new blog posts is like getting good e-mail in your Inbox. Reading blogs and writing on this one has surpassed my e-mail checking addiction - which has subsided greatly.
  • Blogging makes for great advertising of your company if you run a small company like I do.
  • You get more visitors, check out my increase in visitors in the last 6 months. I setup Roller on this site in August.

Posted in Roller at Nov 19 2002, 03:33:34 PM MST 1 Comment

XDoclet 1.2 and Roller

I made some more progress yesterday on the XDoclet 1.2 upgrade. Aslak fixed the bug with classes extending DispatchAction, and all the action-mappings now generate correctly. However, now I'm getting a new, seemingly Castor-related issue. I probably need to update some XDoclet tags for Castor, but I haven't done any research there yet. Here's the error I'm getting:

java.lang.IllegalArgumentException: Type conversion error: 
  could not set value of weblogDayPageId(java.lang.String) with  
  value of type org.roller.model.PageData
    at org.exolab.castor.mapping.loader.FieldHandlerImpl.setValue(Unknown Source)
    at org.exolab.castor.xml.UnmarshalHandler.resolveReferences(Unknown Source)
    at org.exolab.castor.xml.UnmarshalHandler.processAttribute(Unknown Source)
    at org.exolab.castor.xml.UnmarshalHandler.processAttributes(Unknown Source)
    at org.exolab.castor.xml.UnmarshalHandler.startElement(Unknown Source)
    at org.apache.xerces.parsers.SAXParser.startElement(SAXParser.java:1340)

I tried upgrading Castor to version 0.9.4.1 and I get the same error regardless of version. Roller currently uses version 0.9.3.21.

Posted in Roller at Nov 19 2002, 04:04:23 AM MST 1 Comment

XDoclet 1.2, the migration continues...

This evening, I continued trying to migrate Roller to the lastest version (1.2 beta) of XDoclet. The last time, I made it pretty far, but discovered that the action-mappings weren't being generated in <struts-config>. This time, they showed up, but only a couple of them. I did a little digging and discovered that the two Actions extended org.apache.struts.action.Action, whereas most of the Action classes in Roller extend org.apache.struts.actions.DispatchAction. This used to work just fine with XDoclet 1.1.2, but appears to be broken in the lastest release. So I filed a bug in XDoclet's JIRA and now I sit and wait. I want to just dig into the XDoclet code and fix this, but since it was working in 1.1.2, I'm guessing it was either intentional (and I can fix my problem via Roller's build.xml or a simple oversight and someone can fix it quickly.

Posted in Roller at Nov 17 2002, 06:50:24 PM MST Add a Comment

Can your blog do this?

Lance has added spell checking to Roller! Sweet - nice job Lance. The Roller Editor just keeps getting better and better. Wanna check it out? This site is running the latest CVS build as of 2:10 p.m. MST. The Test Weblog has the spell checker in it. Feel free to test away - and be sure to leave positive (and negative) feedback.

Posted in Roller at Nov 15 2002, 09:12:20 AM MST 1 Comment

Cool Comments

Scott Andrew points us to Joe Hewitt's weblog. He's got a sweet commenting UI that I'd love to see in Roller.

Because I'm always looking for new ways to exploit browser technology for some new marginally useful purpose, check out my new commenting UI! I make Movable Type output comments to XML files, load them through script, and turn them into HTML in this webpage for your commenting convenience.

Also, the comments form is inline with the page and is submitted without reloading the entire page. Woop-dee-freakin-doo.

Very cool! Hopefully there'll be some code soon we can modify for Roller.

Posted in Roller at Nov 14 2002, 02:58:52 AM MST 1 Comment