Hi all, what is the recommended way to implement presentation logic in c3? JX was our former choice but I could not find it in c3.
What should we use to implement simple presentation logic like we did with jx? What are people using? Or do I need to migrate jx? I tried to use the "string-template" component but I am running into a problem when using $if(boolean)$. I am ATM integrating Apache Shiro, a security framework that performs authentication, authorization, cryptography, and session management, into c3 and want to use something in the spirit of their taglibs <shiro:notAuthenticated> Please <a href="login.jsp">login</a>. </shiro:notAuthenticated> So what I did is I wrote a ShiroInterpreter implements LanguageInterpreter that can extract this info. However the interface LanguageInterpreter defines the return type to String. <map:transform type="string-template"> <map:parameter name="isUser" value="{shiro:authenticated}"/> </map:transform> will fail then interpreting $if(!isUser)$ <a href="/logout">/logout</a> $else$ <a href="/login">/login</a> $endif$ with ... Caused by: org.stringtemplate.v4.compiler.STException: null at org.stringtemplate.v4.compiler.Compiler.reportMessageAndThrowSTException(Compiler.java:213) ~[ST4-4.0.4.jar:na] If I use only $isUser$ I get the correct value. Reading "Conditional subtemplates" [1] "You may only test whether an attribute is present or absent, preserving separation of model and view. The only exception is that if an attribute value is a Boolean object, it will test it for true/false." So for me the exception either mean we do not support $if(condition)$ or that the compiler do not likes that $isUser$ is a String and not a boolean. TIA for any feedback! salu2 [1] http://www.cs.usfca.edu/~parrt/course/601/lectures/stringtemplate.html -- Thorsten Scherler <thorsten.at.apache.org> codeBusters S.L. - web based systems <consulting, training and solutions> http://www.codebusters.es/