From: <die...@us...> - 2012-03-21 15:08:03
|
Revision: 3883 http://openutils.svn.sourceforge.net/openutils/?rev=3883&view=rev Author: diego_schivo Date: 2012-03-21 15:07:52 +0000 (Wed, 21 Mar 2012) Log Message: ----------- StrutsRenderer extends JspRenderer Modified Paths: -------------- magnoliamodules/trunk/openutils-mgnlstruts11/src/main/java/it/openutils/mgnlstruts11/render/StrutsRenderer.java magnoliamodules/trunk/openutils-mgnlstruts11/src/main/resources/mgnl-bootstrap-samples/struts11/website.sample-struts.xml Modified: magnoliamodules/trunk/openutils-mgnlstruts11/src/main/java/it/openutils/mgnlstruts11/render/StrutsRenderer.java =================================================================== --- magnoliamodules/trunk/openutils-mgnlstruts11/src/main/java/it/openutils/mgnlstruts11/render/StrutsRenderer.java 2012-03-21 15:01:02 UTC (rev 3882) +++ magnoliamodules/trunk/openutils-mgnlstruts11/src/main/java/it/openutils/mgnlstruts11/render/StrutsRenderer.java 2012-03-21 15:07:52 UTC (rev 3883) @@ -23,7 +23,7 @@ import info.magnolia.context.WebContext; import info.magnolia.rendering.context.RenderingContext; import info.magnolia.rendering.engine.RenderException; -import info.magnolia.rendering.renderer.Renderer; +import info.magnolia.rendering.renderer.JspRenderer; import info.magnolia.rendering.template.RenderableDefinition; import info.magnolia.voting.voters.DontDispatchOnForwardAttributeVoter; import it.openutils.mgnlstruts11.process.MgnlMultipartRequestHandler; @@ -33,6 +33,7 @@ import java.io.IOException; import java.util.Map; +import javax.jcr.Node; import javax.servlet.ServletContext; import javax.servlet.ServletException; import javax.servlet.http.HttpServletRequest; @@ -53,7 +54,7 @@ * @author fgiust * @version $Id$ */ -public class StrutsRenderer implements Renderer +public class StrutsRenderer extends JspRenderer { public static final String PARAGRAPH_PATH = MgnlRequestProcessor.class.getName() + ".path"; @@ -66,9 +67,10 @@ /** * {@inheritDoc} */ - public void render(RenderingContext ctx, Map<String, Object> contextObjects) throws RenderException + @Override + protected void onRender(Node content, RenderableDefinition definition, RenderingContext renderingCtx, + Map<String, Object> ctx, String templateScript) throws RenderException { - WebContext wc = ((WebContext) MgnlContext.getInstance()); HttpServletRequest request = wc.getRequest(); @@ -98,14 +100,14 @@ // force magnolia multipart handler request.setAttribute(Globals.MULTIPART_KEY, MgnlMultipartRequestHandler.class.getName()); - RenderableDefinition paragraph = ctx.getRenderableDefinition(); + RenderableDefinition paragraph = definition; if (paragraph instanceof StrutsParagraph && StrutsParagraph.PARAGRAPHTYPE_FORWARD.equals(((StrutsParagraph) paragraph).getStrutsType()) && actionParameter == null) { try { - wc.include(paragraph.getTemplateScript(), ctx.getAppendable()); + wc.include(paragraph.getTemplateScript(), renderingCtx.getAppendable()); } catch (ServletException e) { @@ -155,7 +157,7 @@ { log.info("Found global config: " + actionParameter + " -> " + forwardConfig.getPath()); request.setAttribute(PARAGRAPH_PATH, forwardConfig.getPath()); - wc.include(forwardConfig.getPath(), ctx.getAppendable()); + wc.include(forwardConfig.getPath(), renderingCtx.getAppendable()); } catch (ServletException e) { Modified: magnoliamodules/trunk/openutils-mgnlstruts11/src/main/resources/mgnl-bootstrap-samples/struts11/website.sample-struts.xml =================================================================== --- magnoliamodules/trunk/openutils-mgnlstruts11/src/main/resources/mgnl-bootstrap-samples/struts11/website.sample-struts.xml 2012-03-21 15:01:02 UTC (rev 3882) +++ magnoliamodules/trunk/openutils-mgnlstruts11/src/main/resources/mgnl-bootstrap-samples/struts11/website.sample-struts.xml 2012-03-21 15:07:52 UTC (rev 3883) @@ -29,7 +29,7 @@ <sv:value>2012-03-20T16:20:13.674+01:00</sv:value> </sv:property> <sv:property sv:name="mgnl:lastmodified" sv:type="Date"> - <sv:value>2012-03-20T17:20:43.005+01:00</sv:value> + <sv:value>2012-03-21T16:06:41.109+01:00</sv:value> </sv:property> <sv:property sv:name="mgnl:template" sv:type="String"> <sv:value>struts11:pages/samplestruts</sv:value> @@ -62,43 +62,43 @@ <sv:value>2012-03-20T16:20:30.925+01:00</sv:value> </sv:property> <sv:property sv:name="mgnl:lastmodified" sv:type="Date"> - <sv:value>2012-03-20T17:20:43.005+01:00</sv:value> + <sv:value>2012-03-21T16:06:41.108+01:00</sv:value> </sv:property> </sv:node> <sv:node sv:name="0"> <sv:property sv:name="jcr:primaryType" sv:type="Name"> - <sv:value>mgnl:contentNode</sv:value> + <sv:value>mgnl:component</sv:value> </sv:property> <sv:property sv:name="jcr:mixinTypes" sv:type="Name" sv:multiple="true"> <sv:value>mix:lockable</sv:value> </sv:property> <sv:property sv:name="jcr:uuid" sv:type="String"> - <sv:value>71bb0191-53e5-4853-bdff-3b732d366aa6</sv:value> + <sv:value>ec08d245-4be1-4aa6-9997-8cfecbc2b2c9</sv:value> </sv:property> <sv:property sv:name="jcr:createdBy" sv:type="String"> - <sv:value>admin</sv:value> + <sv:value>superuser</sv:value> </sv:property> <sv:property sv:name="text" sv:type="String"> - <sv:value>Hello Struts!</sv:value> + <sv:value>Hello world!</sv:value> </sv:property> <sv:node sv:name="MetaData"> <sv:property sv:name="jcr:primaryType" sv:type="Name"> <sv:value>mgnl:metaData</sv:value> </sv:property> <sv:property sv:name="jcr:createdBy" sv:type="String"> - <sv:value>admin</sv:value> + <sv:value>superuser</sv:value> </sv:property> <sv:property sv:name="mgnl:authorid" sv:type="String"> <sv:value>superuser</sv:value> </sv:property> <sv:property sv:name="mgnl:creationdate" sv:type="Date"> - <sv:value>2012-03-20T16:20:30.925+01:00</sv:value> + <sv:value>2012-03-21T16:06:41.107+01:00</sv:value> </sv:property> <sv:property sv:name="mgnl:lastmodified" sv:type="Date"> - <sv:value>2012-03-20T17:20:43.004+01:00</sv:value> + <sv:value>2012-03-21T16:06:41.108+01:00</sv:value> </sv:property> <sv:property sv:name="mgnl:template" sv:type="String"> - <sv:value>samplestruts</sv:value> + <sv:value>struts11:samplestruts</sv:value> </sv:property> </sv:node> </sv:node> This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |