Right... I'm doing that (same as with MorphTagLibrary). And as I said, that works fine when the TagLibrary impl is in core.

<ic:setIcons xmlns:ic="jelly:org.jenkins.ui.icon.taglib.IconsTaglib" />

On 03/07/2014 10:48, Stephen Connolly 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] <mailto:[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]
    <mailto:[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]
        <mailto:[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]
            <mailto:[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]
                <mailto:[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]
                    <mailto:[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]
                <mailto:[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]
                <mailto:[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] <mailto:[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