Well first your code suggests that you are adding two side panels, first the build's side panel and then your own that contains something strange.
For including the widget I would look at how it's included in the existing side panel today and try to do something similar: https://github.com/jenkinsci/jenkins/blob/master/core/src/main/resources/hudson/model/AbstractProject/sidepanel.jelly#L62 e.g. l.side_panel { st.include(it:my.historyWidget, page:"index.jelly") } On Tue, Feb 23, 2016 at 10:14 AM, <[email protected]> wrote: > I've been investigating how to include the build history widget on an > Action extension plugin. > > > > We are currently using stapler via a groovy context to render some > information pertaining to a particular run, as well as get the build > history in the side panel - code below. > > > def st = namespace("jelly:stapler") > > st.include(it: my.run, page: "sidepanel") > > l.side_panel { > > st.include(it:my.proj, page:"/hudson/widgets/HistoryWidget/all") > } > > l.main_panel { > //Rendering other components > } > > > Including the historyWidget/all has some undesirable effects - see > attached '1' > > > > <https://lh3.googleusercontent.com/-SdlCKtBqYRM/Vswikioz5SI/AAAAAAAAAAM/-dBfO5CJkAo/s1600/1.png> > > > > It seems to include the entire page, plus the widget in the plugin's view. > > > > If I try to use the default widget (not *all* of the entries), I see a > much different error - see attached, callstack below. I suspect I may be > hitting this issue as I am not providing a relative context for the include > call (perhaps I need to add the 'from' parameter, but I'm not quite sure > what value I'd pass through). > > > > java.lang.RuntimeException: org.apache.commons.jelly.JellyTagException: > jar:file:/C:/Users/jgamble/Perforce/JenkinsDev/JenkinsDev/Plugins/job-summary-plugin/dev/target/work/webapp/WEB-INF/lib/jenkins-core-1.625.2.jar!/lib/layout/layout.jelly:247:25: > <d:invokeBody> org.apache.commons.jelly.JellyTagException: > jar:file:/C:/Users/jgamble/Perforce/JenkinsDev/JenkinsDev/Plugins/job-summary-plugin/dev/target/work/webapp/WEB-INF/lib/jenkins-core-1.625.2.jar!/lib/layout/main-panel.jelly:36:21: > <d:invokeBody> org.apache.commons.jelly.JellyTagException: > jar:file:/C:/Users/jgamble/Perforce/JenkinsDev/JenkinsDev/Plugins/job-summary-plugin/dev/target/work/webapp/WEB-INF/lib/jenkins-core-1.625.2.jar!/hudson/widgets/HistoryWidget/index.jelly:57:40: > <st:include> No page found 'entries.jelly' for class > hudson.model.FreeStyleProject > > at > org.kohsuke.stapler.jelly.groovy.JellyBuilder.doInvokeMethod(JellyBuilder.java:280) > > at > org.kohsuke.stapler.jelly.groovy.Namespace$ProxyImpl.invoke(Namespace.java:92) > > at com.sun.proxy.$Proxy56.layout(Unknown Source) > > at lib.LayoutTagLib$layout.call(Unknown Source) > > at > org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCall(CallSiteArray.java:42) > > at > org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:108) > > at > org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:116) > > at index.run(index.groovy:11) > > at > org.kohsuke.stapler.jelly.groovy.GroovierJellyScript.run(GroovierJellyScript.java:74) > > at > org.kohsuke.stapler.jelly.groovy.GroovierJellyScript.run(GroovierJellyScript.java:62) > > at > org.kohsuke.stapler.jelly.DefaultScriptInvoker.invokeScript(DefaultScriptInvoker.java:63) > > at > org.kohsuke.stapler.jelly.DefaultScriptInvoker.invokeScript(DefaultScriptInvoker.java:53) > > at > org.kohsuke.stapler.jelly.JellyRequestDispatcher.forward(JellyRequestDispatcher.java:55) > > at > org.kohsuke.stapler.jelly.groovy.GroovyFacet.handleIndexRequest(GroovyFacet.java:121) > > at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:735) > > at org.kohsuke.stapler.Stapler.invoke(Stapler.java:876) > > at org.kohsuke.stapler.MetaClass$13.dispatch(MetaClass.java:411) > > at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:746) > > at org.kohsuke.stapler.Stapler.invoke(Stapler.java:876) > > at org.kohsuke.stapler.MetaClass$13.dispatch(MetaClass.java:411) > > at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:746) > > at org.kohsuke.stapler.Stapler.invoke(Stapler.java:876) > > at org.kohsuke.stapler.MetaClass$6.doDispatch(MetaClass.java:249) > > at > org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:53) > > at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:746) > > at org.kohsuke.stapler.Stapler.invoke(Stapler.java:876) > > at org.kohsuke.stapler.Stapler.invoke(Stapler.java:649) > > at org.kohsuke.stapler.Stapler.service(Stapler.java:238) > > at javax.servlet.http.HttpServlet.service(HttpServlet.java:820) > > at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:491) > > > > So my question: How can I simply include the Build History widget via > stapler/jelly into my plugin's view? > > > Thanks! > > > > -- > 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]. > To view this discussion on the web visit > https://groups.google.com/d/msgid/jenkinsci-dev/bc144b15-2173-4d1a-b642-1fe0e738a470%40googlegroups.com > <https://groups.google.com/d/msgid/jenkinsci-dev/bc144b15-2173-4d1a-b642-1fe0e738a470%40googlegroups.com?utm_medium=email&utm_source=footer> > . > For more options, visit https://groups.google.com/d/optout. > -- Robert Sandell *Software Engineer* *CloudBees Inc.* -- 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]. To view this discussion on the web visit https://groups.google.com/d/msgid/jenkinsci-dev/CALzHZS25Ra23fX_iASZabwWJK_sEH7pY4UHr0_FQw%3Dam6znb_A%40mail.gmail.com. For more options, visit https://groups.google.com/d/optout.
