where's the example where you had it as a plugin and where is the example
plugin using it?


On 3 July 2014 12:01, Tom Fennelly <[email protected]> wrote:

>  Sure:
>
>    - Branch: https://github.com/tfennelly/jenkins/tree/icon-tag
>    - Taglib classes:
>    
> https://github.com/tfennelly/jenkins/tree/icon-tag/icon/src/main/java/org/jenkins/ui/icon/taglib
>    - Use of in a .jelly script:
>    
> https://github.com/tfennelly/jenkins/blob/icon-tag/icon/src/main/resources/lib/ui/icon/icon.jelly#L46
>
> Thanks Stephen !!
>
>
> On 03/07/2014 11:05, Stephen Connolly wrote:
>
> can you share your git repos with me so I can debug a little... or pop
> into hipchat and we can chat and bring the solution back to the list once
> we have one ;-)
>
>
>  On 3 July 2014 10:48, Stephen Connolly <[email protected]>
> wrote:
>
>> Hmmm you might have to have the namespace be the FQCN of the TagLibrary
>> implementation, eg see MorphTagLibrary in core... digging some more
>>
>>
>> On 3 July 2014 10:38, Stephen Connolly <[email protected]>
>> wrote:
>>
>>> Also you probably need to add the annotation
>>>
>>>  @org.kohsuke.stapler.jelly.groovy.TagLibraryUri("/shim/layout")
>>>
>>>
>>> On 3 July 2014 10:37, Stephen Connolly <[email protected]>
>>> wrote:
>>>
>>>> I suspect one thing could be that your class name is IconsTaglib and
>>>> not IconsTagLib
>>>>
>>>>
>>>> On 3 July 2014 10:35, Stephen Connolly <[email protected]
>>>> > wrote:
>>>>
>>>>> Well I suspect that you need to inform jelly of the TagLibrary class
>>>>> or else it will not discover it. I am suspecting that there is a plugin
>>>>> goal putting the requisite info somewhere on the classpath. That plugin
>>>>> goal is probably working for jenkins core but perhaps not by default in
>>>>> plugins
>>>>>
>>>>>
>>>>> On 3 July 2014 09:56, Tom Fennelly <[email protected]> wrote:
>>>>>
>>>>>>  xmlns:myf="jelly:org.jenkins.x.y.MyFunkyTag" is one way of doing
>>>>>> that and, as I said, that works when the TagLibrary impl is located in
>>>>>> Jenkins core (Vs out in a plugin).  I didn't see any other way of doing
>>>>>> it.  Are you telling me there is another way?
>>>>>>
>>>>>>
>>>>>> On 03/07/2014 09:46, Stephen Connolly wrote:
>>>>>>
>>>>>>  Do you inform jenkins that you have a taglibrary?
>>>>>>
>>>>>>
>>>>>> On 2 July 2014 23:34, Tom Fennelly <[email protected]> wrote:
>>>>>>
>>>>>>> Hi.
>>>>>>>
>>>>>>>  Just wondering if anyone can guide me as to how I can write a Java
>>>>>>> based TagLibrary and have it loadable from a plugin (without setting
>>>>>>> pluginFirstClassLoader=true).  When I try it I get a classloader 
>>>>>>> exception
>>>>>>> that makes total sense to me, but I'm wondering if there's some trick or
>>>>>>> different impl that works around it.
>>>>>>>
>>>>>>>  Example... a Simple TagLibrary impl like this...
>>>>>>>
>>>>>>>   public class IconsTaglib extends TagLibrary {
>>>>>>>     public IconsTaglib() {
>>>>>>>
>>>>>>>              // Register some tags...
>>>>>>>
>>>>>>>          registerTag("*myFunkyTag*", MyFunkyTag.class);
>>>>>>>     }
>>>>>>> }
>>>>>>>
>>>>>>>
>>>>>>>  This class is located in the plugin i.e. not in Jenkins core with
>>>>>>> other taglibs.
>>>>>>>
>>>>>>>  Then in a .jelly tag script (also in the plugin, but for which
>>>>>>> there are no cloassloading issues) we use the *myFunkyTag *tag that
>>>>>>> was implemented in Java e.g.
>>>>>>>
>>>>>>>   <myf:myFunkyTag xmlns:myf="jelly:org.jenkins.x.y.MyFunkyTag" />
>>>>>>>
>>>>>>>
>>>>>>>  The above causes a ClassLoading exception because Jelly's
>>>>>>> XMLParser class (code located in Jenkins - not in the plugin) tries to 
>>>>>>> load
>>>>>>> the MyFunkyTag class with the wrong classloader (XMLParser line #1024).
>>>>>>>  What looks like would work (in this specific case at least) is if
>>>>>>> XMLParser tried using the JellyContext ClassLoader instead, but of 
>>>>>>> course
>>>>>>> that might cause other issues.
>>>>>>>
>>>>>>>  BTW I tried with the MyFunkyTag impl located in Jenkins core and
>>>>>>> everything works fine as expected.
>>>>>>>
>>>>>>>  Any suggestions?  I'm wondering maybe this is not an issue if I
>>>>>>> implement the Tag in Groovy instead, but would like to know if doing it 
>>>>>>> in
>>>>>>> Java is not going to work first.
>>>>>>>
>>>>>>>  Thanks,
>>>>>>>
>>>>>>>  Tom.
>>>>>>>
>>>>>>>   --
>>>>>>> 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/d/optout.
>>>>>>>
>>>>>>
>>>>>>  --
>>>>>>  You received this message because you are subscribed to a topic in
>>>>>> the Google Groups "Jenkins Developers" group.
>>>>>> To unsubscribe from this topic, visit
>>>>>> https://groups.google.com/d/topic/jenkinsci-dev/9mEnlPmIu1c/unsubscribe
>>>>>> .
>>>>>> To unsubscribe from this group and all its topics, send an email to
>>>>>> [email protected].
>>>>>>
>>>>>> For more options, visit https://groups.google.com/d/optout.
>>>>>>
>>>>>>
>>>>>>   --
>>>>>> 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/d/optout.
>>>>>>
>>>>>
>>>>>
>>>>
>>>
>>
>  --
> You received this message because you are subscribed to a topic in the
> Google Groups "Jenkins Developers" group.
> To unsubscribe from this topic, visit
> https://groups.google.com/d/topic/jenkinsci-dev/9mEnlPmIu1c/unsubscribe.
> To unsubscribe from this group and all its topics, send an email to
> [email protected].
> For more options, visit https://groups.google.com/d/optout.
>
>
>  --
> 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/d/optout.
>

-- 
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/d/optout.

Reply via email to