Returning String without Whitespace from Velocimacros
"O. Olson" <[email protected]> Thu, 1 Aug 2013 18:27:47 +0100 (BST)
| Newsgroups | gmane.comp.jakarta.velocity.user |
|---|---|
| Message-ID | <[email protected]> |
Hi,
I am new to using Apache Velocity. What is the correct way of returning a string from a Macro or a Velocimacro?
Since I did not have a clue on how to return a string from a Macro, I decided to do something like
#macro(query_url $query_param) q=$query_param #end
I can then call the Macro using: #query_url("*")
The problem with this is that the resulting value contains a Tab or
number of Spaces before the 'q=' when I call it.
One option is to delete the spaces like:
#macro(query_url $query_param)
q=$query_param
#end
This fixes my problem but is very hard to read. To take this a step further consider:
#macro(default_query_url) #if($request.params.get('q')) #query_url($request.params.get('q')) #else #query_url("*") #end #end
Vs.
#macro(default_query_url)
#if($request.params.get('q'))
#query_url($request.params.get('q'))
#else
#query_url("*")
#end
In the first case there is no whitespace, but editing it would be very difficult for more complicated macros.
I am curious what is the correct way to return values from Velocimacros and if I can Trim the resulting Whitespace before returning it?
Thank you an advance for any help.
O. O.