Hi all, I was wondering if anyone had any experience in this area? Is it 
possible to use custom Jelly TagLibraries with Jenkins?

Many thanks,
Jan

On Monday, 12 August 2013 23:05:23 UTC+1, Jan Molak wrote:
>
> Hi fellow Jenkins Devs :)
>
> I'd like to create a custom Jelly tag (Java, not a *.jelly template) and 
> persuade Stapler to load it from my Jenkins plugin.
>
> According to various bits and pieces of conversations I found around the 
> Internet:
>
> http://mail-archives.apache.org/mod_mbox/commons-user/200411.mbox/%[email protected]%3E
> https://java.net/projects/hudson/lists/dev/archive/2010-09/message/255
> I understand that it is possible, and that I should do the following:
>
>    - in my plugin package (assume com.myplugin for the sake of 
>    simplicity) create the CustomTag.java (com.myplugin.CustomTag), that 
>    extends any public tag from org.kohsuke.stapler.jelly.* (since the 
>    AbstractStaplerTag is not available outside of the 
>    org.kohsuke.stapler.jelly package) -* it might not be necesary to 
>    extend any other tag, or is it?*
>    - in the same package create the TagLibrary class, say 
>    MyCustomTagLibrary.java, extending org.apache.commons.jelly.TagLibrary, 
>    where I register my CustomTag class:
>    public class CustomTagLibrary extends TagLibrary {
>        public CustomTagLibrary() {
>            registerTag("custom", CustomTag.class);
>        }
>    }
>    - in the same package create an empty "taglib" file *I'm not sure if 
>    that's at all required?*
>    - in my plugin's "main.jelly", where I'd like to use the custom tag, 
>    register the custom taglib by specifying: 
>    <j:jelly ...
>             xmlns:mc="jelly:com.myplugin.MyCustomTagLibrary">
>
> The code compiles and runs fine, but the custom tag code: <mc:custom ...> is 
> not evaluated. 
>
> What I managed to find out so far, is that Stapler's 
> CustomJellyContext::getTagLibrary 
> only allows me to retrieve those TagLibraries that have been previously 
> explicitly registered.
>
> So I guess my question is: *How can I register a custom JellyTagLibrary 
> from within the plugin?*
> I don't seem to be able to get hold of the CustomJellyContext class, which 
> has the registerTagLibrary method on it? Please tell me I'm completely 
> wrong, missing something obvious and there's a nice and simple way of 
> achieving this goal :)
>
> Any suggestions would be greatly appreciated!
>

-- 
You received this message because you are subscribed to the Google Groups 
"Jenkins Developers" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/groups/opt_out.

Reply via email to