We use the tomcat urlrewrite plugin to rewrite outbound URLs as well as inbound ones. To do this, you need to use the JSTL tag.
This works great for clean urls and
There is nothing out of the box, but nothing prevents you to write your own EL functions, and thus use something like that:
Next Page
I don't feel that it's more readable than the standard c:url tag, and it would be even worse if it has to accept parameter names and values, though.
See http://docs.oracle.com/javaee/1.4/tutorial/doc/JSPIntro7.html for how to define and use EL functions.