Tried that. It didn't help. Unless it needs to be done in conjunction with something else.

On 03/07/2014 10:38, Stephen Connolly 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