Hi, Just for heads-up, I've come to an end of the first development iteration to support spring functions and directives. See the "Spring" section in FM3-CHANGE-LOG.txt for detail. This is not near perfect yet so I will spend more time improving (unit or integration) tests and finding/fixing problems. Please feel free to review and test.
Cheers, Woonsan On Tue, Jan 2, 2018 at 11:36 PM, Woonsan Ko <[email protected]> wrote: > Hi, > > It has been a long time since my last commit to support spring mvc > functions/directives (FREEMARKER-55). > Today, I've opened a pull request, containing an initial form related > work (only form:form and form:input directives for now, but those are > parts of the crucial basement): > - https://github.com/apache/incubator-freemarker/pull/41 > > Please feel free to take a look and let me know if you have any > comments or remarks. > > Some pointers: > - Initially I tried to leverage dynamic varargs for almost every html > attribute, but I ended up defining each available attribute as member > like Spring taglibs do, which seems clearer in both argument layout > and maintenance. > - Arguments for html attributes are kind of inherited from base > classes such as AbstractHtmlElementTemplateDirectiveModel. I ended up > merging named arg list in child directives by accessing static > members, which is not totally clean - static members are visible > anywhere, but that's what I think is the best for now. > - spring:* tags are mapped to "spring.*" models, whereas form:* tags > are mapped to "spring.form.*" models. I didn't want to expose "form" > model separately in a higher level. I found out it's convenient to > write <#assign form=spring.form /> in order to use <@form.input .../> > instead of <@spring.form.input .../>. > - The other (remaining) tasks seem to be relatively more > straightforward: other inputs, button, textarea, select, etc. > > I'll probably merge the PR by myself in a day or two and continue with > other directives while being willing to hear any feedback and > suggestions. > > Kind regards, > > Woonsan
