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.

Reply via email to