Raible's Wiki

Raible Designs
Wiki Home
Recent Changes


  - Korean
  - Chinese
  - Italian
  - Japanese

QuickStart Guide
  - Chinese
  - French
  - German
  - Italian
  - Korean
  - Portuguese
  - Spanish
  - Japanese

User Guide
  - Korean
  - Chinese

  - Chinese
  - German
  - Italian
  - Korean
  - Portuguese
  - Spanish

  - Korean

Latest Downloads

Other Applications

Struts Resume
Security Example
Struts Menu

Set your name in

Referenced by
...and 14 more

JSPWiki v2.2.33


Hide Menu


Difference between version 65 and version 31:

At line 1 changed 1 line.
__Take part in a Struts Resume__ [Architecture Discussion|StrutsResumeArchitecture].
__What is Struts Resume?__\\
Struts Resume is being developed for two purposes: (1) so I can edit and publish my resume online and (2) to demonstrate developing a real-world app with [AppFuse]. Feel free to checkout the [online demo|http://demo.raibledesigns.com/struts-resume]
At line 3 changed 1 line.
!!__2003.10.30__ - Thank you for struts-resume
<span style="color: green">__For common questions and howto's, see the [Struts Resume Support|StrutsResumeSupport] page.__</span>
At line 5 changed 1 line.
Hi Matt,
!!__2004.04.05__ - Struts Resume 0.9 Released!
At line 7 changed 1 line.
Kudos on your excellent work on appfuse and struts-resume. Since, I've been using appfuse and struts-resume to gather a basic understanding of struts and "helper" technologies, its time to give back a little.
This release is a major improvement over the last one. Not only did I upgrade all the code to use AppFuse 1.4 ([release notes|http://tinyurl.com/27z2k]), but I also removed Struts from the services layer. Moreover, you can actually enter almost all of the pieces of a resume and render it in HTML and Word format. The resume-entry piece (and sections you can enter) is largely based on what Monster.com uses. I may add other sections in the future (i.e. awards and publications).
At line 9 changed 1 line.
I ran into the same problem as yourself, as per [your email|http://www.mail-archive.com/[email protected]/msg60169.html]. So, I followed the email thread and wasn't quite happy with the JavaScript solution. So, I conjured a non-JavaScript solution which is posted below. Be aware that my struts understanding is fairly rudimentary and this might be a classic example of too much blending of V into the C from the MVC model.
The main reason this is not a 1.0 release is because an administrator is the only one who can edit the HTML template - and the Word/RTF template is not editable online. Allowing a user to override the default template(s) will be the primary goal in 1.0.
At line 11 changed 8 lines.
This is part of action.BaseForm
public ActionErrors validate(ActionMapping mapping,
HttpServletRequest request) {
// Identify the request parameter containing the method name
String parameter = mapping.getParameter();
Here's a specific rundown of all the changes from the changelog:
At line 20 changed 21 lines.
if( parameter != null ) {
// Identify the method name to be dispatched to.
String name = request.getParameter(parameter);
MessageResources resources =
(MessageResources) request.getAttribute(Globals.MESSAGES_KEY);
// Identify the localized message for the cancel button
String message = resources.getMessage("button.cancel");
// if message resource matches the cancel button then no
// need to validate
if( name != null && name.equals(message) ) {
if( log.isDebugEnabled() ) {
log.debug(mapping.getAttribute() + " '" + name +
"' method, so no need to validate");
return null;
// perform regular validation
return super.validate(mapping, request);
* Upgraded to AppFuse 1.4 - Includes Spring and all kinds of other goodies.
** [AppFuse 1.4 Release Notes|http://tinyurl.com/27z2k]
* Added Resume Creation/Editing Wizard.
* Added ability to edit HTML Template online (Admins only).
* UI Updates:
** Background borrowed from [alistapart.com|http://www.alistapart.com]. (Thanks!)
** Changed from ListMenu to TabbedMenu.
** Changed to fixed-width layout (700px).
** Added CSS drop shadows to headers.
*** Idea from [http://phoenity.com/newtedge/drop_shadow/]
*** Hack to fix Safari in web/layouts/baseLayout.jsp
* The Tomcat User's resume can be on the demo server at [http://demo.raibledesigns.com/struts-resume/tomcat.html].
At line 42 changed 1 line.
What do you think of this approach?
* [Online Demo|http://demo.raibledesigns.com/struts-resume]
* [Download|http://sourceforge.net/project/showfiles.php?group_id=49385&amp;package_id=75509&amp;release_id=228759] (~10.5 MB for src, ~5.4 MB for bin)
* [API Documentation and Source|http://static.raibledesigns.com/downloads/struts-resume/api/]
* [Mailing List|https://appfuse.dev.java.net/servlets/SummarizeList?listName=users]
At line 44 removed 28 lines.
Haroon Rafique [email protected] (reverse the domain to send email)
!!__2003.10.10__ - Problem compiling in 0.8
I'm trying to compile struts-resume, which I just downloaded to have a sample app dealing with Velocity, but i'm obviously missing org.appfuse.webapp.form.UserForm and UserRoleForm. I manage to find UserForm in security-example1.1.zip but not UserRoleForm.
Is it a mistake or not in your app dist?\\
*''You have to use Ant to compile struts-resume. The *Form classes are generated by [XDoclet|http://www.xdoclet.com]. [MattRaible]''
!!__2003.09.15__ - Small bug discovered in 0.8
The global.js javascript file is missing the following method. I've updated the files in 0.8 to fix this bug. Without this method, when a user changes their password, it's not encrypted, and they can't login again.
function createFormElement(element, type, name, id, value, parent) {
var e = document.createElement(element);
e.setAttribute("name", name);
e.setAttribute("type", type);
e.setAttribute("id", id);
e.setAttribute("value", value);

Back to StrutsResume, or to the Page History.