yeah I'm just setting up some clean plugins which can be used as a test...
your hacking existing stuff is messing you up I believe



On 3 July 2014 12:46, Tom Fennelly <tom.fenne...@gmail.com> wrote:

>  I'll simplify this for the purposes of getting to the bottom of this
> particular problem i.e. create a no-op Java TagLibrary impl on the
> credentials-plugin.  What I was playing with there is ok for me, but
> confusing for someone else coz there's other stuff in there that's not
> related to this problem.
>
>
> On 03/07/2014 12:21, Stephen Connolly wrote:
>
> that's using the ui:icon taglib directly...
>
>
> On 3 July 2014 12:12, Tom Fennelly <tom.fenne...@gmail.com> wrote:
>
>>  Ah yes, sorry... I checked out and changed the credentials plugin... I
>> just pushed a branch to
>> https://github.com/jenkinsci/credentials-plugin/tree/icon-tag-test
>>
>>
>> On 03/07/2014 12:07, Stephen Connolly wrote:
>>
>> 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 <tom.fenne...@gmail.com> 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 <stephen.alan.conno...@gmail.com
>>> > 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 <stephen.alan.conno...@gmail.com
>>>> > 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 <
>>>>> stephen.alan.conno...@gmail.com> wrote:
>>>>>
>>>>>> I suspect one thing could be that your class name is IconsTaglib and
>>>>>> not IconsTagLib
>>>>>>
>>>>>>
>>>>>> On 3 July 2014 10:35, Stephen Connolly <
>>>>>> stephen.alan.conno...@gmail.com> 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 <tom.fenne...@gmail.com> 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 <tom.fenne...@gmail.com> 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 jenkinsci-dev+unsubscr...@googlegroups.com.
>>>>>>>>> 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
>>>>>>>> jenkinsci-dev+unsubscr...@googlegroups.com.
>>>>>>>>
>>>>>>>> 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 jenkinsci-dev+unsubscr...@googlegroups.com.
>>>>>>>> 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
>>> jenkinsci-dev+unsubscr...@googlegroups.com.
>>> 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 jenkinsci-dev+unsubscr...@googlegroups.com.
>>> 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
>> jenkinsci-dev+unsubscr...@googlegroups.com.
>> 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 jenkinsci-dev+unsubscr...@googlegroups.com.
>> 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
> jenkinsci-dev+unsubscr...@googlegroups.com.
> 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 jenkinsci-dev+unsubscr...@googlegroups.com.
> 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 jenkinsci-dev+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to