Extensions to Spring’s FreeMarker macro’s (spring.ftl)

Spring’s FreeMarker macro’s are pretty useful, but there are a couple of things I need from the showErrors macro that simply aren’t there:

  1. Show errors without a HTML tag around them – if you don’t specify a classOrStyle, the showErrors macro will wrap your error message in a <b> tag. If you do, it’ll wrap it in a <span> (understandably)
  2. Pick the tag that surrounds each message – As explained in the first point, you can see we only get the choice of <b> or <span>. What if I wanted to use an <li>? …use the separator? – no good, because unless I write an <#if> statement to check the number of error messages before I call showErrors I’ll end up with redundant <ul>/<ol> and <li>’s in my markup if there aren’t any errors:
    e.g. <ul><li><@spring.showErrors “</li><li>”/></li></ul>
    Which leads me nicely onto the next point:
  3. Show errors in an ordered/unordered list, automatically detecting zero messages and not outputting markup if this is the case
  4. Show errors for multiple bind paths – Spring’s showErrors only shows errors for the currently bound field. However I’ve found that I’ve needed to show errors for 2 or more fields together. This is particularly true of a DOB field where the day/month and year are separate <select>’s
  5. Finally, show errors for multiple bind paths, in an unordered/ordered list

You can download my Spring extensions here: springx.ftl. Inevitably I’ll find more bits and pieces to add and will update them accordingly.

20,485 thoughts on “Extensions to Spring’s FreeMarker macro’s (spring.ftl)

  1. 1. Look, dealing with spiders has been such a pain in my house. Has anyone used Hawx for spiders? I’m curious if they actually get rid of them without leaving those creepy webs behind.

    2. Bottom line is, my last pest control company was such a headache Additional reading

  2. 1. Hey everyone, just wanted to chime in about Stake — honestly, fast withdrawals have been a game changer for me. I requested a cashout yesterday and had the funds in my wallet within like 30 minutes. No long waits or annoying verification hurdles latest Stake bonuses

  3. Being part of this vibrant community makes every session worthwhile; looking forward to meeting more enthusiasts through connections made at   boxing gym #!

  4. Kudos for addressing such an important topic in accessible ways—we need all possible options when it comes down to spending wisely through services like those listed in # # any Keyword # Roofing Cork City

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>