Problem with the function's error stacktrace and debugging

Albert Kam <[email protected]> Wed, 8 May 2013 18:02:19 +0700
Newsgroups gmane.comp.web.freemarker.user
Message-ID <CAMT20g_U2PJkMiHhB8-+Ha0EqT72SnuNgdf7jBXsLVaDo1kpUw@mail.gmail.com>
I have just faced this situation where the error message is not suffucient
to determine stacktrace of ftl-s that lead to the error.

So, i have an ftl file :

<@layout.main>
   my page contents here,
   calling another macro here : ${url.myUrlToAnotherPage(paramsHere)}
</@layout.main>

Now, in the url.ftl file, i have the function of myUrlToAnotherPage, which
calls other functions that exist in the url.ftl.

But the error message only display it like this :

Error on line 23, column 48 in lib/url.ftl
Expecting a string, date or number here, Expression finalValue is instead a
freemarker.template.SimpleSequence
The problematic instruction:
----------
==> return [on line 23, column 17 in lib/url.ftl] [on line 23, column 17 in
lib/url.ftl]
 in user-directive layout.layout [on line 11, column 1 in
post/ad/no0035.ftl]
----------
With this error message, i know that the rror is on line 23, another
function called blah for example. But i dont know who calls blah, it's not
in the stack trace.
After some dirty removing parts of the page to get the culprit, i found out
that :
- wrap my page as a nested value for another macro (on line 11, displayed
on the error stacktrace)
- my page calls url.myUrlToAnotherPage function
- url.myUrlToAnotherPage calls blahblah function
- blahblah calls blah function
- blah function errors (on line 23, displayed on the error stacktrace)

The second thing i want to ask that is related with this is :
How do i debug like the simple System.out.println in freemarker functions ?
Do i have to bind and call the java functions or something cool exists
already in freemarker to achieve this ?

Thank you !
-- 
Do not pursue the past. Do not lose yourself in the future.
The past no longer is. The future has not yet come.
Looking deeply at life as it is in the very here and now,
the practitioner dwells in stability and freedom.
(Thich Nhat Hanh)

------------------------------------------------------------------------------
Learn Graph Databases - Download FREE O'Reilly Book
"Graph Databases" is the definitive new guide to graph databases and 
their applications. This 200-page book is written by three acclaimed 
leaders in the field. The early access version is available now. 
Download your free book today! http://p.sf.net/sfu/neotech_d2d_may

_______________________________________________
FreeMarker-user mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/freemarker-user