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.

[ANNOUNCE] Struts 1.1 Final Released!

The Struts team is proud, and extremely pleased, to announce the Final release of Struts 1.1. This release includes significant new functionality, as well as numerous fixes for bugs which were reported against the previous release, and supersedes the earlier 1.0.2 version as the latest official release of Struts from the Apache Software Foundation.

Download Binary | Download Source | JARs Only | Release Notes

test-all:                                                                                                               
                                                                                                                        
BUILD SUCCESSFUL                                                                                                        
Total time: 8 minutes 10 seconds                                                                                        
[minime:~/projects/appfuse] matt%   

Results look good!

Posted in Java at Jun 30 2003, 06:17:31 AM MDT Add a Comment

Apple Rocks!

Actually, the credit probably shouldn't go to Apple, but rather to the guy at "the Bar" that hooked me up. My iPod quit working last week. Zilch, nada. It literally quit showing signs of life - wouldn't start whatsoever. I tried all the tricks on Apple's support site and discussion groups, but nothing helped. I even called Apple Support and a gentleman helped me troubleshoot the thing for a half hour. At the end of the conversation, the guy gave me a URL and said to try all the tips, and if they didn't work - then send it in. I asked if I should stop by the Apple Store and have it looked at? He said, "nope, they can't help you." Not believing him, I visited the Store today with my dead iPod. They verified it was dead and gave me a new one.

That's right - in and out in 15 minutes with a brand spankin' new iPod - now affectionately named "Whitey." Life is good in Apple land. Of course, after hearing all the G5 propaganda in the store, I might need to seek some professional help. Thank God they didn't have any in the store - I might've actually bought one!

Posted in Mac OS X at Jun 29 2003, 09:39:46 PM MDT 4 Comments

Abbie Loo

Pretty in Pink

Abbie Loo - at seven months. Should be a great weekend with the little one.
We might even do some reading - a new nightly tradition.

Posted in General at Jun 28 2003, 09:22:30 AM MDT Add a Comment

Added Google search to this theme

The idea hit me like a cold beer pouring down my throat on a hot summer day. Crisp, clean and exciting. I've been wanting to add a search form to this theme, but I didn't want to add another tab, and putting it anywhere in the header would conflict with the background image. And then I spotted the perfect spot. Right under the categories, in the banner of the first entry on this page. With a little love from the DOM, you can now search this site using this theme and Google. Here's the relevant code that I added to the bottom of this theme.

<div id="search" style="display:none; margin-top: -17px; text-align: right">
    <form id="searchForm" method="get" action="http://www.google.com/search"
        onsubmit="return search()" style="margin: 0; padding: 0">  
        <input type="text" id="q" name="q" size="20" maxlength="255"
            value="search this site" onclick="this.value=''" /> 
</div>
<script type="text/javascript">
    // get the first entry shown in the page and append the
    // hidden 'search' div from above
    document.getElementById("entries")
            .getElementsByTagName("div")[0]
            .appendChild(document.getElementById("search"));
    toggle("search");
    function search() {
        form = document.getElementById("searchForm");
        if (form.q.value == "search this site" || form.q.value == "") {
            alert("Please enter a search term to continue.");
            form.q.focus();
            return false;
        } else {
            form.q.value = form.q.value + " site:www.raibledesigns.com";
            form.submit();
        }
    }
</script>

Boy oh boy does the DOM make it easy to do web sites! Seems to work in all the browsers I use regularly (IE/Moz on Win, Camino/Safari on Mac). It doesn't work in Opera 6, but does in Opera 7. Now back to that cold beer - I'm gettin' thirsty...

Posted in Roller at Jun 27 2003, 04:57:58 PM MDT 8 Comments

A Remote Desktop using XUL

From the xul-announce mailing list:

Randall Knutson has released the first prototype for a remote desktop using XUL. Point your Mozilla XUL browser (e.g. Firebird) @ http://robin.sourceforge.net to call up a fresh desktop with a startup menu and play XulMine, Mozteroids, Pagman, Snake, Xultris, MozInvaders and more.

What is Robin? Here's the "official" blurb from the sourceforge project site:

Remote Operating System Build in Netscape (Robin) is a window manager using DHTML, Javascript, XUL and some crazy hacks.

Full story @ http://sourceforge.net/projects/robin

This is pretty fricken cool...

Posted in The Web at Jun 27 2003, 02:09:54 PM MDT Add a Comment

RE: J2SE 1.4.2 Released!

Thanks to Karl for tipping me off that JDK 1.4.2 has been released. [Download, Release Notes] Of course, I never would've known, except java.blogs told me. I downloaded, installed and changed my $JAVA_HOME to point to this sucker, then ran all my unit tests (flawlessly). It looks pretty damn good to me - just like an upgrade should be. Now where's J2EE 1.4?!

It doesn't look like Apple pulled off the simultaneous release it was hoping to. BTW, I've been doing a fair amount of development on my Mac lately with Eclipse 3.0 M1 - it's getting much, much better. Steve - if you release a 2 GHz PowerBook - I'll work overtime to buy that sucker.

Posted in Java at Jun 27 2003, 10:00:20 AM MDT 1 Comment

OWASP ~ The Open Web Application Security Project

I'm working on editing my Security Chapter (yet again) and I went to verify that a URL to http://www.owasp.org was still valid. There I found that they've developed an portal (based on Struts) with security as a REQUIREMENT, not an option.

OWASP

Several modules from the OWASP Common Library (OCL) are utilized as well ( OCL can be found in our CVS repository under the module name OCL ). Content is stored in XML format and translated with XSL.

Aside from the obvious need of a site for our own needs, the portal team has approached the design from the perspective that the OWASP portal should be more than a single use web application, but rather a reference implementation of a secure portal, that will rival the likes of any commercially available portal. We are striving to make the portal as extensible as possible, but yet deliver commonly needed feature sets. [http://beta.owasp.org]

Here's the best part: The portal that runs OWASP is open source and available for use in your own sites. Check out the release plan to see the planned and upcoming features for the next releases. It says it has RSS feeds, but I can't seem to find them.

Posted in Java at Jun 26 2003, 09:15:31 PM MDT Add a Comment

Windows Explorer Tricks

I got this one from Russ's comments on this post. If you use a command prompt in Windows, type "start ." to open Explorer for the current directory. If you're a Cygwin user like me, this won't work - but "explorer ." does work! Even better, create an alias in your .bashrc file (alias open='explorer') and then you can type "open ." Sweet!

Posted in General at Jun 26 2003, 02:23:24 PM MDT 2 Comments

Added Calendar to Menu

I added a calendar to my "badges" menu on the top left. This is a JavaScript-based calendar that I obtained from Matt Kruse's JavaScript Toolbox. I don't know if I'm satisfied with the green background on the "cal" image, but it'll have to do for now. I've noticed a couple of issues in Safari (too far down and too the right, and doesn't go away like it should), but it seems to work pretty good in IE/Mozilla. I tried disabling dates > today, but couldn't get it to work (yeah, I tried the code from Matt's site).

I don't know if it's worth the effort of talking to Roller's CalendarModel to get the actual days that somethings been posted. However, it would probably be fairly easy to generate a JavaScript array for the current month, rather than an HTML-based <table>.

If you're interested, here's how you can add this sucker to your Roller weblog:

1. Add the following code to the <head> of your template.

    <script type="text/javascript" src="pathToScript.js"></script>
    <script type="text/javascript">
        var cal = new CalendarPopup("calDiv");
        cal.setReturnFunction("showDate");

        document.write(cal.getStyles());
            
        // Function to get input back from calendar popup              
        function showDate(y,m,d) {
            var day = y+LZ(m)+LZ(d);
            location.href = "$ctxPath/page/$userName/" + day;
        }
    </script>

2. Add an empty, invisible div anywhere w/in the <body> of your template (I put mine at the bottom).

<div id="calDiv" 
    style="position: absolute; visibility: hidden"></div>

3. Add a link (can contain an image) to invoke the calendar popup.

<a href="?" name="calAnchor" id="calAnchor" 
    onclick="cal.showCalendar(this.id); return false">
    Calendar</a>

You can download the calendar.js file from this site, but please don't link to it - I have enough bandwidth problems as is (and I'm going to move it to a new theme name). Enjoy!

Posted in General at Jun 25 2003, 09:49:49 PM MDT 2 Comments

Wicked DHTML Roller themes spotted in the wild

I spotted some cool DHTML-enhanced themes on FreeRoller today: My own confusion and A Corporate Eejit. Nice work gents - maybe we should add these suckers to the stock list of themes. These themes are a great example of how customizable Roller is and how it's just HTML, so pretty much anything is possible (that is possible on a web page). I'd be willing to bet you could even use Flash and use the RSS Feed for your XML input.

I'm thinking about adding a small DHTML enhancement to Roller. Basically, I'd like to show users a small picture of the theme (using these pictures) when signing up. Let me know if you think this is worth the effort and if so, I'll create a JIRA issue (uh oh, looks like we lost our bug database!).

Posted in Roller at Jun 25 2003, 10:58:02 AM MDT 7 Comments