Uploaded image for project: 'Jenkins'
  1. Jenkins
  2. JENKINS-8752

ROADMAP: Improve Template Engine

    Details

    • Type: Improvement
    • Status: Resolved
    • Priority: Major
    • Resolution: Won't Fix
    • Component/s: core
    • Labels:
      None

      Description

      Original discussion: https://groups.google.com/d/topic/jenkinsci-dev/_cuKEAUULUE/discussion

      > - Better template engine front-end. I say frontend because it needs to
      >  drive the same Jelly backend to be compatible with existing stuff.
      >  There's currently a version that does this in Groovy.

        Activity

        Hide
        ndeloof Nicolas De Loof added a comment -

        I'd like to see Groovy used as expression language in replacement for commons-EL in jelly, as it is so much powerfull

        Show
        ndeloof Nicolas De Loof added a comment - I'd like to see Groovy used as expression language in replacement for commons-EL in jelly, as it is so much powerfull
        Hide
        pekarna2 Ondrej Zizka added a comment - - edited

        I suggest to replace Jelly with Wicket.
        http://wicket.apache.org/

        It's a perfect choice for web app like Hudson.
        High performance, clean and well modularized code, easy and universal Ajax usage, very easily extendable.

        Especially for plugins, it would be a big win since re-usability of parts of pages and easy creation of new parts is one of Wicket's greatest advantages.

        Show
        pekarna2 Ondrej Zizka added a comment - - edited I suggest to replace Jelly with Wicket. http://wicket.apache.org/ It's a perfect choice for web app like Hudson. High performance, clean and well modularized code, easy and universal Ajax usage, very easily extendable. Especially for plugins, it would be a big win since re-usability of parts of pages and easy creation of new parts is one of Wicket's greatest advantages.
        Hide
        kohsuke Kohsuke Kawaguchi added a comment -

        Why we'd like to replace Jelly

        1. We'd like to get auto-completion support when editing expressions (that should also mean refactoring/reference navigation support)
        2. When a problem happens while evaluating EL, the stack trace of Jelly tag execution is very hard to interpret (though not as bad as Rhino.) In particular, it's hard to see how page evaluations calls happened that led to the failure at hand.
        3. JEXL doesn't support some very useful constructs, such as creating a new instance, calling a static method, etc.
        Show
        kohsuke Kohsuke Kawaguchi added a comment - Why we'd like to replace Jelly We'd like to get auto-completion support when editing expressions (that should also mean refactoring/reference navigation support) When a problem happens while evaluating EL, the stack trace of Jelly tag execution is very hard to interpret (though not as bad as Rhino.) In particular, it's hard to see how page evaluations calls happened that led to the failure at hand. JEXL doesn't support some very useful constructs, such as creating a new instance, calling a static method, etc.
        Hide
        danielbeck Daniel Beck added a comment -

        Groovy seems to have been established quite nicely. Now it seems to be just a matter of rewriting existing views, which could be done when they're overhauled.

        Can this be resolved then?

        Show
        danielbeck Daniel Beck added a comment - Groovy seems to have been established quite nicely. Now it seems to be just a matter of rewriting existing views, which could be done when they're overhauled. Can this be resolved then?
        Hide
        jglick Jesse Glick added a comment -

        From my experience, the Groovy views are only a modest improvement over the Jelly views. They suffer from most of the same problems. I would love to see something like Wicket be used, but this would be a massive breaking change.

        Show
        jglick Jesse Glick added a comment - From my experience, the Groovy views are only a modest improvement over the Jelly views. They suffer from most of the same problems. I would love to see something like Wicket be used, but this would be a massive breaking change.

          People

          • Assignee:
            Unassigned
            Reporter:
            jieryn jieryn
          • Votes:
            5 Vote for this issue
            Watchers:
            6 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved: