Hi folks, Following the discussion (see below) I released https://github.com/sgoeschl/freemarker-cli/releases/tag/v2.0.0-BETA-5
* The available tools are loaded from "freemarker-cli.properties" and support user-supplied tools * Apache POI / Excel integration supports getting to raw tables containing the closest matching Java type (works but needs field testing) * Falling back to "en_US" if no locale is provided on the command line Thanks in advance, Siegfried Goeschl Release Notes ============================================ Added * Support interactive mode (-i or --interactive) to supply FreeMarker templates on the command line * UUIDTool to create random and named UUIDs * ExcelTool returns raw table consisting of the underlying Java data type * Document#getUnsafeInputStream to get a input stream which needs to be closed by the caller * CSVTool allows parsing plain string CSV * Tools are loaded from freemarker-cli.properties and freely configurable * Add RAT & PMD report to Maven site generation * Add -times command line option to execute the transformation N times Changed * Renamed ExcelTool#parseSheet to ExcelTool#toTable * Removed various Tool constructors taking Settings * Do not use documents[0] as top-level variable - use Documents.get(0) instead * Available CSV formats are exposed using the CSVTool and not the global data model * Expose user-supplied system properties as top-level variables when using -E * Keep track of all Closables created & handed out to FreeMarker template rendering * Move ObjectConstructor, Statics and Enums into FreeMarkerTool Deleted * Environment & SystemProperties were deleted and the functionality moved to SystemTool * All DataModel classes were deleted > On 19.12.2019, at 14:35, Woonsan Ko <[email protected]> wrote: > > Sounds good! :-) > If we communicate well to each other explaining different use cases, > then we can improve it together in this community. I believe everybody > here is open to any new improvements for the community even if some > features are not relevant to themselves. That's why we join the ASF. > ;-) > > Cheers, > > Woonsan > > On Thu, Dec 19, 2019 at 6:38 AM Siegfried Goeschl > <[email protected]> wrote: >> >> Hi folks, >> >> I’m okay with the things :-) >> >> Thanks in advance, >> >> Siegfried Goeschl >> >> >>> On 18 Dec 2019, at 20:38, Daniel Dekany <[email protected]> wrote: >>> >>> Yes, these can done after V1 or whatever. But it's still important if >>> Siegfried will be OK with such things, or will lose motivation because it's >>> not how he likes his own kid. More code without more developers probably >>> won't work out well, given how little developer time even FM core gets. >>> >>> As of nested output files, I agree (and BTW, FMPP also have a nested output >>> directive, not just starting a new). I also understand that it breaks the >>> clean mental model, but if (if...) this is what's reasonably often needed >>> in reality, then certainly the mental model should bend. >>> >>> On Wed, Dec 18, 2019 at 8:01 PM Woonsan Ko <[email protected]> wrote: >>> >>>> On Wed, Dec 18, 2019 at 11:23 AM Siegfried Goeschl >>>> <[email protected]> wrote: >>>>> >>>>> Hi Daniel, >>>>> >>>>> please see my comments below … >>>>> >>>>> Thanks in advance, >>>>> >>>>> Siegfried Goeschl >>>>> >>>>> >>>>>> On 18 Dec 2019, at 16:58, Daniel Dekany <[email protected]> >>>> wrote: >>>>>> >>>>>> Multiple output files: How open are you to the idea if someone else >>>> wants >>>>>> to add that though? The use-case is when it's input data that drives >>>> what >>>>>> output files you will have (as in my example with the employees), and >>>>>> working that around with multiple invocations is not very nice. >>>>>> >>>>> >>>>> Suggestive question - it is an Open Source project after all :-) >>>>> >>>>> * As long as it is hosted on my GitHub repo I can ultimately reject PRs >>>> if I’m really unhappy about them but repos can be forked >>>>> * If it becomes part of Apache FreeMarker project than there are more >>>> qualified developers out there to make a decision >>>>> >>>>> Regarding the implementation >>>>> >>>>> * Multiple output files violates my my mental model since you can’t use >>>> stdout any longer >>>>> * It could break the CommonsCSV integration since I’m using CSVPrinter >>>> sitting on FreeMarker’s output stream (which changes when using multiple >>>> output files) >>>>> * Last but not least I have not enough experience / requirements to come >>>> up with a useful implementation from the scratch >>>> >>>> In my head, we may introduce a new directive to specify a different >>>> output for the nested things, instead of the _default_ STDOUT, in the >>>> future. For example, >>>> >>>> hello, >>>> <#output file="another.csv"> >>>> something else... >>>> </#output> >>>> world! >>>> >>>> So, by default "hello,\nworld!" to STDOUT, "something else..." to the >>>> extra file. >>>> This seems better to me than "changing output and closing the current >>>> output" approach in FMPP. >>>> >>>> But this improvement can be done together once Siegfried _donates_ his >>>> project to Apache FreeMarker. ;-) >>>> >>>>> >>>>>> Default locale: >>>>>> And also default charset to UTF-8, if that wasn't done. >>>>> >>>>> UTF-8 is the default >>>>> >>>>>> >>>>>> JDBC drivers: There was some discussion of how to add user defined >>>> classes >>>>>> to the tool earlier. Well, I guess it's about the same as you add your >>>> own >>>>>> jar-s to the classpath too, so, it shouldn't be a big deal. That could >>>>>> solve this side of the JDBC problem as well. As of storing credentials, >>>>>> that has to be solved when using external tools as well... but my >>>> practical >>>>>> experience is that people just put them in to a config file as plain >>>> text >>>>>> (maybe on a drive that has to be mounted with password first), or bind >>>> it >>>>>> to the OS user. >>>>> >>>>> The problem is more subtle - I want to provide a well-behaved command >>>> line tool >>>>> >>>>> * What happens if you update the freemarker-cli installation on your box? >>>>> * How do you easily distinguish between your custom JARs and the >>>> initially installed ones? >>>>> * How does it look like if you install freemarker-cli with package >>>> managers, e.g. brew? >>>> >>>> I guess it should be fine as an initial version even if there's no >>>> separation between system libs and custom libs (such as JDBC drivers). >>>> If there's a tool for easy JDBC access, it would be nice in practices. >>>> I don't think it should be perfect from V1. >>>> >>>> Regards, >>>> >>>> Woonsan >>>> >>>>> >>>>> Current state >>>>> >>>>> * Custom tools can be instantiated using the freemarker-cli-properties >>>>> * For the templates I use ~/.freemarker-cli directory to have a clean >>>> separation >>>>> * There is no really nice solution for JARs - I might tweak the Maven >>>> plugin creating the Unix & Windows wrappers - you can already create an >>>> “endorsed” directory there to place custom JARs >>>>> >>>>>> >>>>>> Yes, Spring support is definitely important, given the omnipresence of >>>>>> Spring. It's not just web pages there, but e-mail templates >>>> (especially as >>>>>> there modern the UI technologies that has taken over at most places, >>>> aren't >>>>>> applicable). Would be good if someone can take ownership of that >>>> aspect for >>>>>> FreeMarker 2, probably using what was done in FM3. (Or maybe the same >>>>>> resources are better redirected to pushing FM3... who knows. There are >>>>>> really no resources to push two branches in parallel.) >>>>>> >>>>>> On Wed, Dec 18, 2019 at 2:02 PM Siegfried Goeschl < >>>>>> [email protected] <mailto:[email protected]>> >>>> wrote: >>>>>> >>>>>>> Hi Daniel, >>>>>>> >>>>>>> try to write a top-level post to keep the discussion readable >>>>>>> >>>>>>> >>>>>>> Ad Multi-file Output >>>>>>> =============================================================== >>>>>>> >>>>>>> Currently no plans to implement it - I personally don’t have a need >>>> for it >>>>>>> and it is a hypothetical requirement for now >>>>>>> >>>>>>> >>>>>>> Ad POI Integration >>>>>>> =============================================================== >>>>>>> >>>>>>> No problem in exposing the non-String data - it is a good idea and >>>> will be >>>>>>> implemented >>>>>>> >>>>>>> >>>>>>> Ad Default Locale >>>>>>> =============================================================== >>>>>>> >>>>>>> * I need to define a locale for the unit tests >>>>>>> * I guess it is a good idea to pin it to “en_US” to avoid suprises >>>>>>> >>>>>>> >>>>>>> Ad JDBC Access >>>>>>> =============================================================== >>>>>>> >>>>>>> It is part of a wider problem - when leaving the document-centric >>>> approach >>>>>>> into scripting there is a lot of useful functionality, e.g. JDBC and >>>> HTTP >>>>>>> clients. >>>>>>> >>>>>>> The problems >>>>>>> >>>>>>> * JDBC: You need to add JDBC drivers, where to store the credentials, >>>>>>> database schema, ... >>>>>>> * HTTP: More libraries, certificates, proxy support,... >>>>>>> >>>>>>> It is possible to implement something but it will never work properly >>>> so I >>>>>>> decided to tackle the problem differently b using commons-exec >>>>>>> >>>>>>> * REST calls can be easily made by invoking cURL >>>>>>> * Database command line clients can export the result of a SELECT >>>> query to >>>>>>> a CSV file >>>>>>> >>>>>>> >>>>>>> Ad Templates aren't used much for Web UI-s anymore >>>>>>> =============================================================== >>>>>>> >>>>>>> Yes and no - IMHO it is quite useful to embed a UI into certain "micro >>>>>>> services”. Therefore I think that a ready-to-use Spring Boot (& >>>> Micronaut, >>>>>>> etc..) integration is important and should not be an afterthought. >>>>>>> >>>>>>> >>>>>>> Thanks in advance, >>>>>>> >>>>>>> Siegfried Goeschl >>>>>>> >>>>>>> >>>>>>>> On 18 Dec 2019, at 01:32, Daniel Dekany <[email protected]> >>>> wrote: >>>>>>>> >>>>>>>> Hi, >>>>>>>> >>>>>>>> Find my comments inline below. >>>>>>>> >>>>>>>> On Tue, Dec 17, 2019 at 10:46 PM Siegfried Goeschl < >>>>>>>> [email protected] <mailto:[email protected]> >>>> <mailto:[email protected] <mailto:[email protected]>>> >>>> wrote: >>>>>>>> >>>>>>>>> Hi Daniel, >>>>>>>>> >>>>>>>>> Thanks for spending your time - feed back is always appreciated when >>>>>>> doing >>>>>>>>> things in isolation .... >>>>>>>>> >>>>>>>>> Please see my comments below >>>>>>>>> >>>>>>>>> Thanks in advance, >>>>>>>>> >>>>>>>>> Siegfried Goeschl >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>>> On 17.12.2019, at 19:19, Daniel Dekany <[email protected] >>>> <mailto:[email protected]>> >>>>>>> wrote: >>>>>>>>>> >>>>>>>>>> Hi Siegfried, >>>>>>>>>> >>>>>>>>>> Looks good! >>>>>>>>>> >>>>>>>>>> Some random things I happened to notice: >>>>>>>>>> >>>>>>>>>> - The ability generating multiple output files from the same >>>> template >>>>>>>>>> would be worthy addition. Like you load a CSV file that has >>>> employees >>>>>>>>> in >>>>>>>>>> it, and based on that you generate one output file per department. >>>> Or >>>>>>>>> even >>>>>>>>>> one per employee. (There could directives for that, like >>>>>>>>> changeOutputFile, >>>>>>>>>> nestOutputFile, etc. on >>>>>>> http://fmpp.sourceforge.net/pphash.html#sect17 < >>>> http://fmpp.sourceforge.net/pphash.html#sect17> >>>>>>>>> <http://fmpp.sourceforge.net/pphash.html#sect17 < >>>> http://fmpp.sourceforge.net/pphash.html#sect17> < >>>>>>> http://fmpp.sourceforge.net/pphash.html#sect17 < >>>> http://fmpp.sourceforge.net/pphash.html#sect17>>>) >>>>>>>>> >>>>>>>>> Well, I simply don't need it and it complicates things - in simple >>>> cases >>>>>>>>> one could just re-run the freemarker-cli with a different template >>>>>>> and/or >>>>>>>>> parameters >>>>>>>>> >>>>>>>> >>>>>>>> My feeling is that if there's a tool that's about transforming some >>>> files >>>>>>>> to other files, but the idea that a single invocation can yield >>>> multiple >>>>>>>> output files is not part of it, one way or another (i.e., not >>>> necessarily >>>>>>>> in the way it was in FMPP), it might turns out to be a limiting >>>> design >>>>>>>> decision later as feature request start to pour in. And then it can >>>> be >>>>>>> hard >>>>>>>> to add as an afterthought. Well, maybe I'm wrong, as I have no >>>> statics >>>>>>>> about how often it's needed. FMPP users did use it (myself included), >>>>>>> some >>>>>>>> of them at least. >>>>>>>> >>>>>>>> >>>>>>>>>> - When I load an XLSX, I get back values as string, not as >>>> numbers, or >>>>>>>>>> dates. I'm not sure how hard it is to solve though (I don't >>>> remember >>>>>>>>> POI >>>>>>>>>> much). >>>>>>>>> >>>>>>>>> That should not be too hard - I actually use >>>>>>>>> org.apache.poi.ss.usermodel.DataFormatter to create the strings >>>>>>>> >>>>>>>> >>>>>>>> If templates get numbers etc., or have a such choice at least, then >>>> they >>>>>>>> can compare numbers, filter based on their values, control the >>>>>>> formatting, >>>>>>>> etc. My idea here is that an Excel file, CSV file, whatever, is just >>>> a >>>>>>> pure >>>>>>>> data, and rendering/formatting is the duty of the templates. >>>>>>>> >>>>>>>> >>>>>>>>>> BTW, the strings I get back are formatted with the locale of the >>>> OS, >>>>>>>>> >>>>>>>>> which is a problem. I guess there should be an config option to set >>>> the >>>>>>>>> JVM >>>>>>>>>> locale. (The ExcelToolTest fails on my computer with locale hu_HU >>>> for >>>>>>>>>> somewhat similar reason, as it gets "100,00" instead of "100.00".) >>>>>>>>> >>>>>>>>> On the command line you can use >>>>>>>>> >>>>>>>>> -l, --locale=<locale> Locale being used for output file, e.g. >>>>>>> 'en_US' >>>>>>>>> >>>>>>>>> but I guess I should provide a fixed locale for the unit tests >>>>>>>>> >>>>>>>> >>>>>>>> The problem is not how FreeMarker renders the numbers. It already >>>> gets >>>>>>>> strings like that from POI, and --locale doesn't influence POI. >>>>>>>> >>>>>>>> As of the default locale, for these kind of tools, I believe that >>>> using >>>>>>>> system defaults is usually evil. So having a fixed default is maybe >>>> not >>>>>>>> just for unit tests. The locale of my computer, or wherever I run a >>>> job >>>>>>> on >>>>>>>> (often some backend linux box) should be usually irrelevant, and not >>>>>>>> influence the output. Not to mention when team mates share the >>>> project, >>>>>>> in >>>>>>>> an international team. >>>>>>>> >>>>>>>>> - Querying from relation databases (JDBC) would be probably an >>>> useful >>>>>>>>>> addition (it doesn't fit the Document paradigm though). >>>>>>>>> >>>>>>>>> I integrated commons-exec and triggered AWS CLI - basically you >>>> capture >>>>>>>>> the output of any command-line invocation and process it. Just need >>>> to >>>>>>> make >>>>>>>>> sure that every tool supports processing raw strings ... >>>>>>>>> >>>>>>>> >>>>>>>> I'm note sure what do you mean. The result of a query is a structured >>>>>>> data, >>>>>>>> with column names and non-string types, so I guess command-line >>>>>>> invocation >>>>>>>> can't solve that too well. >>>>>>>> >>>>>>>> >>>>>>>>>> It would be good if there's some de-facto tool for these kind of >>>> things >>>>>>>>>> than what freemarker-cli does. I guess there's a few such tools in >>>>>>>>> company >>>>>>>>>> repos, but of course those have no potential to become more >>>> generic and >>>>>>>>>> being published. (freemarker-generator was a such toll though, but >>>> it >>>>>>>>>> didn't go anywhere after donation. Actually, FMPP was a such tool >>>> too, >>>>>>>>> that >>>>>>>>>> I used for some sysadmin/webadmin tasks some 15+ years ago.) But of >>>>>>>>> course, >>>>>>>>>> long term care is the tricky issue with any project that has no >>>> company >>>>>>>>>> truly behind it (i.e., no payed developers). Do you have you have >>>> any >>>>>>>>>> thoughts/plans regarding the longer term life of freemarker-cli? >>>>>>>>> >>>>>>>>> I worked on a couple of not soo successful Open Source projects - >>>> yes, >>>>>>> it >>>>>>>>> might become another Open Source GitHub project nobody knows / >>>> cares :-) >>>>>>>>> >>>>>>>>> Having said that >>>>>>>>> >>>>>>>>> * I'm maintaining it already for a few of years and I will always >>>> find >>>>>>>>> some things I can do with it >>>>>>>>> * It is useful for some common tasks when you have a Java background >>>>>>>>> * I think it is a great way to re-use or build up FreeMarker >>>> knowledge >>>>>>>>> >>>>>>>> >>>>>>>> And, I would add, templates aren't used much for Web UI-s anymore, so >>>>>>> these >>>>>>>> alternate use cases become the main ones. >>>>>>>> >>>>>>>> >>>>>>>>> * And it should become part of the Apache Freemarker project - much >>>>>>> better >>>>>>>>> visibility & broader user base >>>>>>>>> >>>>>>>> >>>>>>>> Yeah, the last point is what I'm going for really. But that's also >>>> why I >>>>>>>> hope that you feel like making it more general. Or at least has no >>>>>>> negative >>>>>>>> feelings about it. >>>>>>>> >>>>>>>>> >>>>>>>>>> Also, some things that you miss for FreeMarker itself for it to be >>>> more >>>>>>>>>> fitting for the task? >>>>>>>>> >>>>>>>>> Support for Java 8 Date/Time API - last time I looked at it it was >>>> not >>>>>>>>> supported by FreeMarker and it's a bummer since nobody is using >>>> Date any >>>>>>>>> longer ... >>>>>>>>> >>>>>>>> >>>>>>>> Yeah... it still isn't. It's probably among the new few things to >>>> add at >>>>>>>> this point, as it's long due. >>>>>>>> >>>>>>>>> >>>>>>>>>> >>>>>>>>>> On Sun, Nov 17, 2019 at 7:02 PM Siegfried Goeschl < >>>>>>>>>> [email protected] <mailto:[email protected]> >>>> <mailto:[email protected] <mailto:[email protected]>> >>>>>>> <mailto:[email protected] <mailto: >>>> [email protected]> <mailto:[email protected] <mailto: >>>> [email protected]>>>> >>>>>>> wrote: >>>>>>>>>> >>>>>>>>>>> Hi folks, >>>>>>>>>>> >>>>>>>>>>> since I'm currently mostly busy with non-coding tasks I spent some >>>>>>> time >>>>>>>>>>> honing my coding skills - probably to no avail as my colleagues >>>> would >>>>>>>>> say >>>>>>>>>>> ;-) >>>>>>>>>>> >>>>>>>>>>> 1) I migrated my pet project "freemarker-cli" from Groovy to JDK 8 >>>>>>> (see >>>>>>>>>>> https://github.com/sgoeschl/freemarker-cli < >>>> https://github.com/sgoeschl/freemarker-cli> < >>>>>>> https://github.com/sgoeschl/freemarker-cli < >>>> https://github.com/sgoeschl/freemarker-cli>> < >>>>>>>>> https://github.com/sgoeschl/freemarker-cli < >>>> https://github.com/sgoeschl/freemarker-cli> < >>>>>>> https://github.com/sgoeschl/freemarker-cli < >>>> https://github.com/sgoeschl/freemarker-cli>>> < >>>>>>>>>>> https://github.com/sgoeschl/freemarker-cli < >>>> https://github.com/sgoeschl/freemarker-cli> < >>>>>>> https://github.com/sgoeschl/freemarker-cli < >>>> https://github.com/sgoeschl/freemarker-cli>> < >>>>>>>>> https://github.com/sgoeschl/freemarker-cli < >>>> https://github.com/sgoeschl/freemarker-cli> < >>>>>>> https://github.com/sgoeschl/freemarker-cli < >>>> https://github.com/sgoeschl/freemarker-cli>>>>) >>>>>>>>>>> >>>>>>>>>>> 2) At >>>>>>>>>>> >>>>>>>>> >>>>>>> >>>> https://github.com/sgoeschl/presentations/blob/master/javameetup/freemarker/slides/src/docs/asciidoc/index.adoc >>>> < >>>> https://github.com/sgoeschl/presentations/blob/master/javameetup/freemarker/slides/src/docs/asciidoc/index.adoc >>>>> >>>>>>> < >>>>>>> >>>> https://github.com/sgoeschl/presentations/blob/master/javameetup/freemarker/slides/src/docs/asciidoc/index.adoc >>>> < >>>> https://github.com/sgoeschl/presentations/blob/master/javameetup/freemarker/slides/src/docs/asciidoc/index.adoc >>>>> >>>>>>>> >>>>>>>>> < >>>>>>>>> >>>>>>> >>>> https://github.com/sgoeschl/presentations/blob/master/javameetup/freemarker/slides/src/docs/asciidoc/index.adoc >>>> < >>>> https://github.com/sgoeschl/presentations/blob/master/javameetup/freemarker/slides/src/docs/asciidoc/index.adoc >>>>> >>>>>>> < >>>>>>> >>>> https://github.com/sgoeschl/presentations/blob/master/javameetup/freemarker/slides/src/docs/asciidoc/index.adoc >>>> < >>>> https://github.com/sgoeschl/presentations/blob/master/javameetup/freemarker/slides/src/docs/asciidoc/index.adoc >>>>> >>>>>>>> >>>>>>>>>> >>>>>>>>>>> < >>>>>>>>>>> >>>>>>>>> >>>>>>> >>>> https://github.com/sgoeschl/presentations/blob/master/javameetup/freemarker/slides/src/docs/asciidoc/index.adoc >>>>>>> < >>>>>>> >>>> https://github.com/sgoeschl/presentations/blob/master/javameetup/freemarker/slides/src/docs/asciidoc/index.adoc >>>>>>>> >>>>>>>>> < >>>>>>>>> >>>>>>> >>>> https://github.com/sgoeschl/presentations/blob/master/javameetup/freemarker/slides/src/docs/asciidoc/index.adoc >>>>>>> < >>>>>>> >>>> https://github.com/sgoeschl/presentations/blob/master/javameetup/freemarker/slides/src/docs/asciidoc/index.adoc >>>>>>>> >>>>>>>>>>> >>>>>>>>>>> you find a presentation I gave some while ago >>>>>>>>>>> >>>>>>>>>>> 3) I also wrote a Spring Boot FreeMarker sample project as part >>>> of the >>>>>>>>>>> presentation (see >>>>>>>>>>> >>>>>>>>> >>>>>>> >>>> https://github.com/sgoeschl/presentations/tree/master/javameetup/freemarker/demo >>>> < >>>> https://github.com/sgoeschl/presentations/tree/master/javameetup/freemarker/demo >>>>> >>>>>>> < >>>>>>> >>>> https://github.com/sgoeschl/presentations/tree/master/javameetup/freemarker/demo >>>> < >>>> https://github.com/sgoeschl/presentations/tree/master/javameetup/freemarker/demo >>>>> >>>>>>>> >>>>>>>>> < >>>>>>>>> >>>>>>> >>>> https://github.com/sgoeschl/presentations/tree/master/javameetup/freemarker/demo >>>> < >>>> https://github.com/sgoeschl/presentations/tree/master/javameetup/freemarker/demo >>>>> >>>>>>> < >>>>>>> >>>> https://github.com/sgoeschl/presentations/tree/master/javameetup/freemarker/demo >>>> < >>>> https://github.com/sgoeschl/presentations/tree/master/javameetup/freemarker/demo >>>>> >>>>>>>> >>>>>>>>>> >>>>>>>>>>> < >>>>>>>>>>> >>>>>>>>> >>>>>>> >>>> https://github.com/sgoeschl/presentations/tree/master/javameetup/freemarker/demo >>>>>>> < >>>>>>> >>>> https://github.com/sgoeschl/presentations/tree/master/javameetup/freemarker/demo >>>>>>>> >>>>>>>>> < >>>>>>>>> >>>>>>> >>>> https://github.com/sgoeschl/presentations/tree/master/javameetup/freemarker/demo >>>>>>> < >>>>>>> >>>> https://github.com/sgoeschl/presentations/tree/master/javameetup/freemarker/demo >>>>>>>> >>>>>>>>>> >>>>>>>>>>>> ) >>>>>>>>>>> >>>>>>>>>>> My plans / questions >>>>>>>>>>> >>>>>>>>>>> I would be awesome if I could get some feedback about >>>> "freemarker-cli" >>>>>>>>> in >>>>>>>>>>> its current JDK incarnation :-) Later on I will release 2.0.0 and >>>> push >>>>>>>>> it >>>>>>>>>>> to Maven Central. >>>>>>>>>>> >>>>>>>>>>> In the mean time I wrote three applications (micro services in new >>>>>>>>> speak) >>>>>>>>>>> using Apache FreeMarker and found it hard to find a starting point >>>>>>> for a >>>>>>>>>>> Spring Boot applications - therefore I wrote the sample project >>>> (see >>>>>>>>>>> above). One way or the other a Spring Boot (and Micronaut) blue >>>> print >>>>>>>>>>> should find its way into Apache FreeMarker officially. I think >>>> Apache >>>>>>>>>>> FreeMarker is awesome for adding a developer UI to some micro >>>> service >>>>>>>>> but >>>>>>>>>>> developers don't care about the template engine but only about a >>>> quick >>>>>>>>> and >>>>>>>>>>> painless way to get the job done ... >>>>>>>>>>> >>>>>>>>>>> Anyone volunteering to give a presentation about Apache >>>> Freemarker at >>>>>>>>>>> ApacheCon? I could do but I'm not really qualified :-) >>>>>>>>>>> >>>>>>>>>>> Thanks in advance, >>>>>>>>>>> >>>>>>>>>>> Siegfried Goeschl >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>> >>>>>>>>>> -- >>>>>>>>>> Best regards, >>>>>>>>>> Daniel Dekany >>>>>>>>> >>>>>>>> >>>>>>>> -- >>>>>>>> Best regards, >>>>>>>> Daniel Dekany >>>>>>> >>>>>>> >>>>>> >>>>>> -- >>>>>> Best regards, >>>>>> Daniel Dekany >>>>> >>>> >>> >>> >>> -- >>> Best regards, >>> Daniel Dekany >>
