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

You can also try this same search on Google.

[ANNOUNCE] StrutsTestCase v1.9 Released

StrutsTestCase v1.9 improves support for Struts 1.1b2 (including support for testing Tiles and sub-applications), provides several requested enhancements, and fixes many reported defects.

 The project home page can be found here:

     http://strutstestcase.sourceforge.net

 Notes for this release can be found here:

     http://sourceforge.net/project/shownotes.php?release_id=112307

I upgraded my current project to use Cactus 1.4.1 and StrutsTestCase 1.9 this morning - and everything works great! I had to add :80 to a few URLs and add ServletRedirector?Cactus_Service=RUN_TEST to my testURL for runservertests, but that was it. I've posted a message to the Cactus User list asking why these changes were necessary. If I was really smart, I'd write a whole bunch of HttpUnit and Cactus tests for Roller before integrating Tiles. Probably save me a whole bunch of time in the end - if I could only get that through to my brain.

Posted in Java at Sep 24 2002, 05:08:21 AM MDT Add a Comment

Struts vs. Java Server Faces.

From www.theserverside.com:

Many have have wondered at what the future holds for Struts, now that an early access release of JavaServer Faces is available. Craig McClanahan, JSF Spec Lead and Lead Architect for Struts has recently commented on the subject. Craig is working on an integration library for JSF and Struts 1.1 that will allow migration to JSF without major code changes to existing struts apps. [ Craig's email on Struts + JSF integration ]

I'm smack dab in the middle of a major time crunch on my current project, or I'd review the above article and post my opinion. Maybe in the next few days.

Posted in Java at Sep 20 2002, 02:57:31 AM MDT Add a Comment

Yesterday's Web Builder Notes.

OK, I'm not going to review every session that I attend because I don't want to end up with the awful feeling I got yesterday. So I think I'll just write about the sessions I actually learned something from. I'm not connected right now, and I'm typing in Dreamweaver instead, so maybe this is my new blogger client. This is probably the best client I could use now that I think of it. Noteworthy: I've seen more browser crashes on Mac's (OS X) this week than on Windows. So far, 2 browser crashes (my Mozilla debacle and IE) and one Windows BSOD.

Building, Testing, and Debugging Client-Side Web Applications by Porter Glendinning was probably my favorite. He was a pretty good presenter, but I was more impressed by his knowledge of the DOM and the demos he showed (might not be posted yet). My two favorite demo's where (1) showing how to do client-side sorting with DOM-compliant browsers and (2) how to do remote scripting using a javascript's "src" attribute. To do client-side sorting, you basically take all the rows in a <tbody> (note-to-self: start using <thead> and <tbody> tags in tables) to sort and reverse by clicking on the table heading. I hope to add this to the display tag library when the browser is capable. I think this could be fairly easy by building in a dom-compliant sniffer, doing it client-side if capable, otherwise passing it back to the server since this functionality already exists. I just hope Porter's demo works on the latest IE/Mozilla on Win/Mac - otherwise, all this motivation will die quickly.

Low-Cost Web Site Traffic Generation by Barbara Coll from WebMama.com. This lady was a great presenter and I became quite motivated to attempt to increase my search engine rankings for this site. Did you know that search engines hardly even look at the "keywords" meta tag anymore? Good to know. The most important areas for keywords now are (1) your domain name, (2) the title of your site (notice I changed mine from "Raible Designs · v2.0") and (3) the names of your directories and files. Maybe I should add a bunch of symlinks (i.e. j2ee-development, web-applications, struts, etc.) that point to my homepage. Not a bad idea. Other things I hope to implement are:

  1. Add a sitemap (should be at the root of your site) - maybe a good Roller feature?
  2. Add 404/500 pages - I hope no one is getting these, but if they are, I've got to still help them out.
  3. Shrink the content between my <head> tags. Who knows how deep those bots go.
  4. Add a menu at the bottom of the site. My top-right menu is kind of inconspicuous. This brings up a couple things I'd like to see in Roller:
    • The ability to hide the login/logout links - I think this is in progress. I'd actually like to hide it for everyone but me, maybe checking for the "username" and comparing it to the user would work.
    • Hiding the link for the page you're currently viewing. No need to show the "About" link when I'm on the About page.
    • The ability to change the delimiter from | to other text or an image, for instance, · might be a good one (this is &middot; for those wondering).
  5. Registering my site with dmoz.org. Barbara actually recommended registering with a new search engine everyday.

And as you all probably already know, the best way to get higher rankings is to pay for them. Here is the full presentation which has some good stats on most popular search engines and stuff. Basically, most traffic is coming from Yahoo ($299) and Google ($0).

Posted in The Web at Sep 10 2002, 08:31:11 AM MDT Add a Comment

Eclipse plug-in for Cactus?

It's on it's way! Vincent Massol sent a message to the cactus-user mailing list today asking for ideas and help. If you're an Eclipse plug-in developer, or use Cactus and want to "get involved" - see Vincent's initial thoughts. Personally, I love Cactus, StrutsTestCase, and JUnit. They've all made my development life a lot easier (when they work). I'm constantly on the bleeding edge of Struts development, and StrutsTestCase seems to always break when I download a nightly build. Now if I could only convince myself to write more HttpUnit tests (or maybe use Solex), so I don't spend so much time trying to get my UI to load and look right. Anyone know of a CSS and Layout Testing framework that tells you that your colors need tweeking or your layout won't work in IE5/Mac? I could use that framework!

Posted in General at Sep 03 2002, 10:13:59 AM MDT Add a Comment

The Future of Roller.

To answer Dave's questions:

1) What do you want Roller to be?

I want it to be my personal portal, my weblogger, and my corporate website. I'm also interested in adding a wiki to my website for new projects. But I don't expect or need wiki functionality in roller. I'm planning on adding a new roller page with an iframe to a wiki such as Very Quick Wiki. The iframe gives me the ability to view another site/app with the current skin being used.

2) What are you interested in working on?

  • Converting the editor UI to use Tiles instead of including header/footer JSP pages.
  • Making the editor UI XHTML-compliant, while maintaining some backwards compatibility with Netscape 4.x.
  • Adding the ability to collapse/expand folders for bookmarks.
  • Adding search capability to weblog entries and entire site pages, either using Lucene or just 'like' SQL statements.
  • Investigating XDoclet and Castor and how it's being used so I can use them on my next project.
  • Adding an option for drop-down menus for editor UI (alternative to tabbed menu). I know there is a "Struts Menu" that has been converted to use CoolMenus, so maybe use this.

3) What features would you like to see added to Roller?

  • The ability to search weblog entries.
  • Ability to include an anchor name for each weblog entry, i.e. <a name="entryId..." id="entryId..."></a>. This would be convenient for other webloggers who are referencing your posts.
  • Ability to use other blogging client-side software to post to roller, besides just w:blogger.
  • Ability to edit (x)HTML via a web interface - in both Mozilla and IE.

I keep myself motivated by using Roller everyday as the engine behind this site. Thanks Dave, Roller has made the re-design of my website much easier, and it's opened my eyes to the world of weblogging. Good Stuff!

Posted in Roller at Sep 03 2002, 06:49:32 AM MDT Add a Comment

Upgrading to Struts 1.1?

My opinion is "of course!" But that's party due to the fact that I'm an upgrade-happy developer. I'll upgrade just to be on the bleeding edge and know that I'm not missing anything. However, I do end up "backing out" of some upgrades. It's fun though, how else are you going to learn? TheServerSide.com has a new article discussing if you should upgrade to Struts 1.1 - check it out. I'm on the nightly build.

Java Server Faces Public Draft and EA download is available. I saw this last night, but Rick Salsa beat me to the punch on weblogging it. I was hoping to download and play around with it today, and give my opinion, but alas, the release I'm doing is taking a bit longer than expected.

Web Builder Conference 2002. Is anyone else going? We're having a Annual Shareholders Meeting in Vegas the weekend before, and I'm going to attend the conference the following week (Sept. 9 - 11). It'll be my first "reporting" experience, so watch this site for updates/reviews. I was one of the first to register so I'll have wireless internet access throughout the conference. My 3 goals for the experience are (1) win, (2) have fun, and (3) get some roller development done. Of course, if I'm accomplishing #1, then #2 is taken care of and #3 might slip a little. Vegas Baby!

Update on Netscape 7. It sucks worse than I originally thought - it installed on my WinXP box, but won't run - similar to OS X 10.2. The one successfull install? On Red Hat 7.3.

Posted in Java at Aug 30 2002, 10:14:17 AM MDT Add a Comment

Coming tomorrow - JSF and Struts 1.1, should you upgrade?

Posted in General at Aug 29 2002, 05:11:12 PM MDT Add a Comment

Invalid Reference to Login Page.

If you're using form-based authentication in your Tomcat Application - you might've seen this error before:

Apache Tomcat/4.0.4 - HTTP Status 400 - Invalid direct reference to form login page

type: Status report

message: Invalid direct reference to form login page

description: The request sent by the client was syntactically incorrect (Invalid direct reference to form login page).

Well, the good news is - I figured out how to get around this today. Basically, it's caused when someone tried to go directly to your <form-login-page> to login, rather than a protected resource.

I use my index.jsp (welcome-file-list) page to do a redirect to a projected resource:

index.jsp
--------
<%@ taglib uri="/WEB-INF/struts-logic.tld" prefix="logic" %>

<logic:redirect page="/do/mainMenu"/%gt;

So I merely added the error-page declaration below to my web.xml, and whalla - no more error message!

<error-page>
<!-- 400 code is from trying to go directly to login.jsp -->
    <error-code>400</error-code>
    <location>/index.jsp</location>
</error-page>

Posted in Java at Aug 28 2002, 06:07:51 AM MDT 5 Comments

XDoclet and Struts Validator

From the struts-dev list and Erik Hatcher:

My XDoclet Struts Validator validation.xml (for Struts 1.1) has been posted to the XDoclet tracker.
I'm hoping it will be added to the codebase and put into the upcoming new release of XDoclet (although I'm using XDoclet from CVS builds). Read the HTML file attachment on the issue page above for an example of how it works. If you're hand-coding validation.xml and using ValidatorForm extensions then this is for you!

I can't wait to use XDoclet in my next project! On my current project, I've already written most of the ValidationForms I need. I used the Generator package to do this, but I hope to either (1) refactor my current project to use Castor/XDoclet like Roller, or (2) use it on my next project.

I ordered an Ant book this evening in hopes of learning a lot more about Ant. I think I know a lot, but there's always room for more knowledge.

Posted in Java at Aug 25 2002, 03:47:45 PM MDT Add a Comment

Problems with UserTransaction/Tomcat on OS X

I'm having some problems getting a "UserTransaction" to work in a Struts Action on Tomcat 4.0.4 in OS X with JDK 1.3. The same code works fine on Windows XP/Red Hat Linux 7.2-.3 with JDK 1.4. Maybe it's a JDK 1.3 issue? Any suggestions/tips are appreciated.

Posted in Mac OS X at Aug 24 2002, 04:01:36 AM MDT Add a Comment