Author: apetrelli
Date: Fri Feb 27 13:16:42 2009
New Revision: 748507
URL: http://svn.apache.org/viewvc?rev=748507&view=rev
Log:
TILESSB-7
Using a "Renderable" to render correctly page pieces.
Fixed "tools.xml" with the correct name.
Added:
tiles/sandbox/trunk/tiles-velocity/src/main/java/org/apache/tiles/velocity/context/ExternalWriterHttpServletResponse.java
(with props)
tiles/sandbox/trunk/tiles-velocity/src/main/java/org/apache/tiles/velocity/template/AbstractDefaultToStringRenderable.java
Modified:
tiles/sandbox/trunk/tiles-velocity/src/main/java/org/apache/tiles/velocity/context/VelocityTilesRequestContext.java
tiles/sandbox/trunk/tiles-velocity/src/main/java/org/apache/tiles/velocity/context/VelocityTilesRequestContextFactory.java
tiles/sandbox/trunk/tiles-velocity/src/main/java/org/apache/tiles/velocity/template/AddAttributeVModel.java
tiles/sandbox/trunk/tiles-velocity/src/main/java/org/apache/tiles/velocity/template/DefinitionVModel.java
tiles/sandbox/trunk/tiles-velocity/src/main/java/org/apache/tiles/velocity/template/Executable.java
tiles/sandbox/trunk/tiles-velocity/src/main/java/org/apache/tiles/velocity/template/GetAsStringVModel.java
tiles/sandbox/trunk/tiles-velocity/src/main/java/org/apache/tiles/velocity/template/ImportAttributeVModel.java
tiles/sandbox/trunk/tiles-velocity/src/main/java/org/apache/tiles/velocity/template/InsertAttributeVModel.java
tiles/sandbox/trunk/tiles-velocity/src/main/java/org/apache/tiles/velocity/template/InsertDefinitionVModel.java
tiles/sandbox/trunk/tiles-velocity/src/main/java/org/apache/tiles/velocity/template/InsertTemplateVModel.java
tiles/sandbox/trunk/tiles-velocity/src/main/java/org/apache/tiles/velocity/template/PutAttributeVModel.java
tiles/sandbox/trunk/tiles-velocity/src/main/java/org/apache/tiles/velocity/template/Tiles2Tool.java
tiles/sandbox/trunk/tiles-velocity/src/main/resources/tools.xml
Added:
tiles/sandbox/trunk/tiles-velocity/src/main/java/org/apache/tiles/velocity/context/ExternalWriterHttpServletResponse.java
URL:
http://svn.apache.org/viewvc/tiles/sandbox/trunk/tiles-velocity/src/main/java/org/apache/tiles/velocity/context/ExternalWriterHttpServletResponse.java?rev=748507&view=auto
==============================================================================
---
tiles/sandbox/trunk/tiles-velocity/src/main/java/org/apache/tiles/velocity/context/ExternalWriterHttpServletResponse.java
(added)
+++
tiles/sandbox/trunk/tiles-velocity/src/main/java/org/apache/tiles/velocity/context/ExternalWriterHttpServletResponse.java
Fri Feb 27 13:16:42 2009
@@ -0,0 +1,23 @@
+package org.apache.tiles.velocity.context;
+
+import java.io.IOException;
+import java.io.PrintWriter;
+
+import javax.servlet.http.HttpServletResponse;
+import javax.servlet.http.HttpServletResponseWrapper;
+
+public class ExternalWriterHttpServletResponse extends
+ HttpServletResponseWrapper {
+
+ private PrintWriter writer;
+
+ public ExternalWriterHttpServletResponse(HttpServletResponse response,
PrintWriter writer) {
+ super(response);
+ this.writer = writer;
+ }
+
+ @Override
+ public PrintWriter getWriter() throws IOException {
+ return writer;
+ }
+}
Propchange:
tiles/sandbox/trunk/tiles-velocity/src/main/java/org/apache/tiles/velocity/context/ExternalWriterHttpServletResponse.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange:
tiles/sandbox/trunk/tiles-velocity/src/main/java/org/apache/tiles/velocity/context/ExternalWriterHttpServletResponse.java
------------------------------------------------------------------------------
svn:keywords = Date Author Id Revision HeadURL
Modified:
tiles/sandbox/trunk/tiles-velocity/src/main/java/org/apache/tiles/velocity/context/VelocityTilesRequestContext.java
URL:
http://svn.apache.org/viewvc/tiles/sandbox/trunk/tiles-velocity/src/main/java/org/apache/tiles/velocity/context/VelocityTilesRequestContext.java?rev=748507&r1=748506&r2=748507&view=diff
==============================================================================
---
tiles/sandbox/trunk/tiles-velocity/src/main/java/org/apache/tiles/velocity/context/VelocityTilesRequestContext.java
(original)
+++
tiles/sandbox/trunk/tiles-velocity/src/main/java/org/apache/tiles/velocity/context/VelocityTilesRequestContext.java
Fri Feb 27 13:16:42 2009
@@ -21,9 +21,17 @@
package org.apache.tiles.velocity.context;
import java.io.IOException;
+import java.io.PrintWriter;
+import java.io.Writer;
+
+import javax.servlet.RequestDispatcher;
+import javax.servlet.ServletException;
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
import org.apache.tiles.context.TilesRequestContext;
import org.apache.tiles.context.TilesRequestContextWrapper;
+import org.apache.tiles.servlet.context.ServletUtil;
import org.apache.velocity.context.Context;
/**
@@ -36,12 +44,14 @@
private final Context ctx;
private Object[] requestObjects;
+
+ private Writer writer;
- public VelocityTilesRequestContext(TilesRequestContext enclosedRequest,
Context ctx) {
+ public VelocityTilesRequestContext(
+ TilesRequestContext enclosedRequest, Context ctx, Writer writer) {
super(enclosedRequest);
this.ctx = ctx;
- // FIXME This should go into a renderer
- //ctx.put("tiles", new
Tiles2Tool(getContainer(ctx.getServletContext()), this));
+ this.writer = writer;
}
public void dispatch(String path) throws IOException {
@@ -49,6 +59,45 @@
}
@Override
+ public void include(String path) throws IOException {
+ Object[] requestObjects = super.getRequestObjects();
+ HttpServletRequest request = (HttpServletRequest) requestObjects[0];
+ HttpServletResponse response = (HttpServletResponse) requestObjects[1];
+ ServletUtil.setForceInclude(request, true);
+ RequestDispatcher rd = request.getRequestDispatcher(path);
+
+ if (rd == null) {
+ throw new IOException("No request dispatcher returned for path '"
+ + path + "'");
+ }
+
+ PrintWriter printWriter = getPrintWriter();
+ try {
+ rd.include(request, new ExternalWriterHttpServletResponse(response,
+ printWriter));
+ } catch (ServletException ex) {
+ throw ServletUtil.wrapServletException(ex, "ServletException
including path '"
+ + path + "'.");
+ } finally {
+ printWriter.flush();
+ }
+ }
+
+ @Override
+ public PrintWriter getPrintWriter() throws IOException {
+ if (writer instanceof PrintWriter) {
+ return (PrintWriter) writer;
+ } else {
+ return new PrintWriter(writer);
+ }
+ }
+
+ @Override
+ public Writer getWriter() throws IOException {
+ return writer;
+ }
+
+ @Override
public Object[] getRequestObjects() {
if (requestObjects == null) {
Object[] parentRequestObjects = super.getRequestObjects();
Modified:
tiles/sandbox/trunk/tiles-velocity/src/main/java/org/apache/tiles/velocity/context/VelocityTilesRequestContextFactory.java
URL:
http://svn.apache.org/viewvc/tiles/sandbox/trunk/tiles-velocity/src/main/java/org/apache/tiles/velocity/context/VelocityTilesRequestContextFactory.java?rev=748507&r1=748506&r2=748507&view=diff
==============================================================================
---
tiles/sandbox/trunk/tiles-velocity/src/main/java/org/apache/tiles/velocity/context/VelocityTilesRequestContextFactory.java
(original)
+++
tiles/sandbox/trunk/tiles-velocity/src/main/java/org/apache/tiles/velocity/context/VelocityTilesRequestContextFactory.java
Fri Feb 27 13:16:42 2009
@@ -20,6 +20,7 @@
*/
package org.apache.tiles.velocity.context;
+import java.io.Writer;
import java.util.Map;
import javax.servlet.http.HttpServletRequest;
@@ -46,19 +47,22 @@
private TilesRequestContextFactory parent;
public TilesRequestContext createRequestContext(TilesApplicationContext
context, Object... requestItems) {
- if (requestItems.length == 3 && requestItems[0] instanceof Context
+ if (requestItems.length == 4 && requestItems[0] instanceof Context
&& requestItems[1] instanceof HttpServletRequest
- && requestItems[2] instanceof HttpServletResponse) {
+ && requestItems[2] instanceof HttpServletResponse
+ && requestItems[3] instanceof Writer) {
Context ctx = (Context) requestItems[0];
HttpServletRequest request = (HttpServletRequest) requestItems[1];
HttpServletResponse response = (HttpServletResponse)
requestItems[2];
+ Writer writer = (Writer) requestItems[3];
TilesRequestContext enclosedRequest;
if (parent != null) {
enclosedRequest = parent.createRequestContext(context,
request, response);
} else {
enclosedRequest = new ServletTilesRequestContext(context,
request, response);
}
- return new VelocityTilesRequestContext(enclosedRequest, ctx);
+ return new VelocityTilesRequestContext(enclosedRequest,
+ ctx, writer);
} else if (requestItems.length == 1
&& requestItems[0] instanceof VelocityTilesRequestContext) {
// FIXME is it necessary?
Added:
tiles/sandbox/trunk/tiles-velocity/src/main/java/org/apache/tiles/velocity/template/AbstractDefaultToStringRenderable.java
URL:
http://svn.apache.org/viewvc/tiles/sandbox/trunk/tiles-velocity/src/main/java/org/apache/tiles/velocity/template/AbstractDefaultToStringRenderable.java?rev=748507&view=auto
==============================================================================
---
tiles/sandbox/trunk/tiles-velocity/src/main/java/org/apache/tiles/velocity/template/AbstractDefaultToStringRenderable.java
(added)
+++
tiles/sandbox/trunk/tiles-velocity/src/main/java/org/apache/tiles/velocity/template/AbstractDefaultToStringRenderable.java
Fri Feb 27 13:16:42 2009
@@ -0,0 +1,64 @@
+/**
+ *
+ */
+package org.apache.tiles.velocity.template;
+
+import java.io.IOException;
+import java.io.StringWriter;
+import java.util.Map;
+
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
+import org.apache.tiles.velocity.TilesVelocityException;
+import org.apache.velocity.context.Context;
+import org.apache.velocity.exception.MethodInvocationException;
+import org.apache.velocity.exception.ParseErrorException;
+import org.apache.velocity.exception.ResourceNotFoundException;
+import org.apache.velocity.runtime.Renderable;
+
+public abstract class AbstractDefaultToStringRenderable implements Renderable {
+ protected final Context velocityContext;
+ protected final Map<String, Object> params;
+ protected final HttpServletResponse response;
+ protected final HttpServletRequest request;
+
+ private Log log = LogFactory.getLog(getClass());
+
+ public AbstractDefaultToStringRenderable(Context velocityContext,
+ Map<String, Object> params, HttpServletResponse response,
+ HttpServletRequest request) {
+ this.velocityContext = velocityContext;
+ this.params = params;
+ this.response = response;
+ this.request = request;
+ }
+
+ /* (non-Javadoc)
+ * @see java.lang.Object#toString()
+ */
+ @Override
+ public String toString() {
+ StringWriter writer = new StringWriter();
+ try {
+ render(null, writer);
+ } catch (MethodInvocationException e) {
+ throw new TilesVelocityException("Cannot invoke method when
rendering", e);
+ } catch (ParseErrorException e) {
+ throw new TilesVelocityException("Cannot parse when rendering", e);
+ } catch (ResourceNotFoundException e) {
+ throw new TilesVelocityException("Cannot find resource when
rendering", e);
+ } catch (IOException e) {
+ throw new TilesVelocityException("I/O exception when rendering",
e);
+ } finally {
+ try {
+ writer.close();
+ } catch (IOException e) {
+ log.error("Error when closing a StringWriter, the impossible
happened!", e);
+ }
+ }
+ return writer.toString();
+ }
+}
\ No newline at end of file
Modified:
tiles/sandbox/trunk/tiles-velocity/src/main/java/org/apache/tiles/velocity/template/AddAttributeVModel.java
URL:
http://svn.apache.org/viewvc/tiles/sandbox/trunk/tiles-velocity/src/main/java/org/apache/tiles/velocity/template/AddAttributeVModel.java?rev=748507&r1=748506&r2=748507&view=diff
==============================================================================
---
tiles/sandbox/trunk/tiles-velocity/src/main/java/org/apache/tiles/velocity/template/AddAttributeVModel.java
(original)
+++
tiles/sandbox/trunk/tiles-velocity/src/main/java/org/apache/tiles/velocity/template/AddAttributeVModel.java
Fri Feb 27 13:16:42 2009
@@ -9,6 +9,7 @@
import org.apache.tiles.template.AddAttributeModel;
import org.apache.tiles.velocity.context.VelocityUtil;
import org.apache.velocity.context.Context;
+import org.apache.velocity.runtime.Renderable;
public class AddAttributeVModel implements Executable, BodyExecutable {
@@ -18,13 +19,13 @@
this.model = model;
}
- public void execute(HttpServletRequest request,
+ public Renderable execute(HttpServletRequest request,
HttpServletResponse response, Context velocityContext,
Map<String, Object> params) {
model.execute(ServletUtil.getComposeStack(request),
params.get("value"), (String) params.get("expression"), null,
(String) params.get("role"), (String) params.get("type"));
-
+ return null;
}
public void end(HttpServletRequest request, HttpServletResponse response,
Modified:
tiles/sandbox/trunk/tiles-velocity/src/main/java/org/apache/tiles/velocity/template/DefinitionVModel.java
URL:
http://svn.apache.org/viewvc/tiles/sandbox/trunk/tiles-velocity/src/main/java/org/apache/tiles/velocity/template/DefinitionVModel.java?rev=748507&r1=748506&r2=748507&view=diff
==============================================================================
---
tiles/sandbox/trunk/tiles-velocity/src/main/java/org/apache/tiles/velocity/template/DefinitionVModel.java
(original)
+++
tiles/sandbox/trunk/tiles-velocity/src/main/java/org/apache/tiles/velocity/template/DefinitionVModel.java
Fri Feb 27 13:16:42 2009
@@ -11,6 +11,7 @@
import org.apache.tiles.template.DefinitionModel;
import org.apache.tiles.velocity.context.VelocityUtil;
import org.apache.velocity.context.Context;
+import org.apache.velocity.runtime.Renderable;
public class DefinitionVModel implements Executable, BodyExecutable {
@@ -23,7 +24,7 @@
this.servletContext = servletContext;
}
- public void execute(HttpServletRequest request,
+ public Renderable execute(HttpServletRequest request,
HttpServletResponse response, Context velocityContext,
Map<String, Object> params) {
model.execute((MutableTilesContainer) ServletUtil.getCurrentContainer(
@@ -32,7 +33,7 @@
(String) params.get("role"), (String) params.get("extends"),
(String) params.get("preparer"), velocityContext, request,
response);
-
+ return null;
}
public void end(HttpServletRequest request, HttpServletResponse response,
Modified:
tiles/sandbox/trunk/tiles-velocity/src/main/java/org/apache/tiles/velocity/template/Executable.java
URL:
http://svn.apache.org/viewvc/tiles/sandbox/trunk/tiles-velocity/src/main/java/org/apache/tiles/velocity/template/Executable.java?rev=748507&r1=748506&r2=748507&view=diff
==============================================================================
---
tiles/sandbox/trunk/tiles-velocity/src/main/java/org/apache/tiles/velocity/template/Executable.java
(original)
+++
tiles/sandbox/trunk/tiles-velocity/src/main/java/org/apache/tiles/velocity/template/Executable.java
Fri Feb 27 13:16:42 2009
@@ -6,6 +6,7 @@
import javax.servlet.http.HttpServletResponse;
import org.apache.velocity.context.Context;
+import org.apache.velocity.runtime.Renderable;
@@ -18,7 +19,8 @@
* @param request TODO
* @param response TODO
* @param velocityContext TODO
+ * @return TODO
*/
- void execute(HttpServletRequest request, HttpServletResponse response,
Context velocityContext, Map<String, Object> params);
+ Renderable execute(HttpServletRequest request, HttpServletResponse
response, Context velocityContext, Map<String, Object> params);
}
\ No newline at end of file
Modified:
tiles/sandbox/trunk/tiles-velocity/src/main/java/org/apache/tiles/velocity/template/GetAsStringVModel.java
URL:
http://svn.apache.org/viewvc/tiles/sandbox/trunk/tiles-velocity/src/main/java/org/apache/tiles/velocity/template/GetAsStringVModel.java?rev=748507&r1=748506&r2=748507&view=diff
==============================================================================
---
tiles/sandbox/trunk/tiles-velocity/src/main/java/org/apache/tiles/velocity/template/GetAsStringVModel.java
(original)
+++
tiles/sandbox/trunk/tiles-velocity/src/main/java/org/apache/tiles/velocity/template/GetAsStringVModel.java
Fri Feb 27 13:16:42 2009
@@ -15,6 +15,7 @@
import org.apache.tiles.velocity.TilesVelocityException;
import org.apache.tiles.velocity.context.VelocityUtil;
import org.apache.velocity.context.Context;
+import org.apache.velocity.runtime.Renderable;
public class GetAsStringVModel implements Executable, BodyExecutable {
@@ -27,7 +28,7 @@
this.servletContext = servletContext;
}
- public void execute(HttpServletRequest request, HttpServletResponse
response, Context velocityContext, Map<String, Object> params) {
+ public Renderable execute(HttpServletRequest request, HttpServletResponse
response, Context velocityContext, Map<String, Object> params) {
TilesContainer container = ServletUtil.getCurrentContainer(request,
servletContext);
try {
@@ -42,6 +43,7 @@
} catch (IOException e) {
throw new TilesVelocityException("Cannot execute getAsString", e);
}
+ return null;
}
public void start(HttpServletRequest request, HttpServletResponse
response, Context velocityContext, Map<String, Object> params) {
Modified:
tiles/sandbox/trunk/tiles-velocity/src/main/java/org/apache/tiles/velocity/template/ImportAttributeVModel.java
URL:
http://svn.apache.org/viewvc/tiles/sandbox/trunk/tiles-velocity/src/main/java/org/apache/tiles/velocity/template/ImportAttributeVModel.java?rev=748507&r1=748506&r2=748507&view=diff
==============================================================================
---
tiles/sandbox/trunk/tiles-velocity/src/main/java/org/apache/tiles/velocity/template/ImportAttributeVModel.java
(original)
+++
tiles/sandbox/trunk/tiles-velocity/src/main/java/org/apache/tiles/velocity/template/ImportAttributeVModel.java
Fri Feb 27 13:16:42 2009
@@ -10,6 +10,7 @@
import org.apache.tiles.template.ImportAttributeModel;
import org.apache.tiles.velocity.context.VelocityUtil;
import org.apache.velocity.context.Context;
+import org.apache.velocity.runtime.Renderable;
public class ImportAttributeVModel implements Executable {
@@ -23,7 +24,7 @@
this.servletContext = servletContext;
}
- public void execute(HttpServletRequest request,
+ public Renderable execute(HttpServletRequest request,
HttpServletResponse response, Context velocityContext,
Map<String, Object> params) {
Map<String, Object> attributes = model.getImportedAttributes(
@@ -36,6 +37,7 @@
VelocityUtil.setAttribute(velocityContext, request, servletContext,
entry.getKey(), entry.getValue(), scope);
}
+ return null;
}
}
Modified:
tiles/sandbox/trunk/tiles-velocity/src/main/java/org/apache/tiles/velocity/template/InsertAttributeVModel.java
URL:
http://svn.apache.org/viewvc/tiles/sandbox/trunk/tiles-velocity/src/main/java/org/apache/tiles/velocity/template/InsertAttributeVModel.java?rev=748507&r1=748506&r2=748507&view=diff
==============================================================================
---
tiles/sandbox/trunk/tiles-velocity/src/main/java/org/apache/tiles/velocity/template/InsertAttributeVModel.java
(original)
+++
tiles/sandbox/trunk/tiles-velocity/src/main/java/org/apache/tiles/velocity/template/InsertAttributeVModel.java
Fri Feb 27 13:16:42 2009
@@ -13,6 +13,7 @@
import org.apache.tiles.velocity.TilesVelocityException;
import org.apache.tiles.velocity.context.VelocityUtil;
import org.apache.velocity.context.Context;
+import org.apache.velocity.runtime.Renderable;
public class InsertAttributeVModel implements Executable, BodyExecutable {
@@ -50,7 +51,7 @@
}
- public void execute(HttpServletRequest request,
+ public Renderable execute(HttpServletRequest request,
HttpServletResponse response, Context velocityContext,
Map<String, Object> params) {
try {
@@ -63,6 +64,7 @@
} catch (IOException e) {
throw new TilesVelocityException("Cannot execute insertAttribute",
e);
}
+ return null;
}
}
Modified:
tiles/sandbox/trunk/tiles-velocity/src/main/java/org/apache/tiles/velocity/template/InsertDefinitionVModel.java
URL:
http://svn.apache.org/viewvc/tiles/sandbox/trunk/tiles-velocity/src/main/java/org/apache/tiles/velocity/template/InsertDefinitionVModel.java?rev=748507&r1=748506&r2=748507&view=diff
==============================================================================
---
tiles/sandbox/trunk/tiles-velocity/src/main/java/org/apache/tiles/velocity/template/InsertDefinitionVModel.java
(original)
+++
tiles/sandbox/trunk/tiles-velocity/src/main/java/org/apache/tiles/velocity/template/InsertDefinitionVModel.java
Fri Feb 27 13:16:42 2009
@@ -1,5 +1,7 @@
package org.apache.tiles.velocity.template;
+import java.io.IOException;
+import java.io.Writer;
import java.util.Map;
import javax.servlet.ServletContext;
@@ -10,9 +12,14 @@
import org.apache.tiles.template.InsertDefinitionModel;
import org.apache.tiles.velocity.context.VelocityUtil;
import org.apache.velocity.context.Context;
+import org.apache.velocity.context.InternalContextAdapter;
+import org.apache.velocity.exception.MethodInvocationException;
+import org.apache.velocity.exception.ParseErrorException;
+import org.apache.velocity.exception.ResourceNotFoundException;
+import org.apache.velocity.runtime.Renderable;
public class InsertDefinitionVModel implements Executable, BodyExecutable {
-
+
private InsertDefinitionModel model;
private ServletContext servletContext;
@@ -23,13 +30,21 @@
this.servletContext = servletContext;
}
- public void execute(HttpServletRequest request,
+ public Renderable execute(HttpServletRequest request,
HttpServletResponse response, Context velocityContext,
Map<String, Object> params) {
- model.execute(ServletUtil.getCurrentContainer(request, servletContext),
- (String) params.get("name"), (String) params.get("template"),
- (String) params.get("role"), (String) params.get("preparer"),
- velocityContext, request, response);
+ return new AbstractDefaultToStringRenderable(velocityContext, params,
response, request) {
+
+ public boolean render(InternalContextAdapter context, Writer
writer)
+ throws IOException, MethodInvocationException,
+ ParseErrorException, ResourceNotFoundException {
+ model.execute(ServletUtil.getCurrentContainer(request,
servletContext),
+ (String) params.get("name"), (String)
params.get("template"),
+ (String) params.get("role"), (String)
params.get("preparer"),
+ velocityContext, request, response, writer);
+ return true;
+ }
+ };
}
public void end(HttpServletRequest request, HttpServletResponse response,
Modified:
tiles/sandbox/trunk/tiles-velocity/src/main/java/org/apache/tiles/velocity/template/InsertTemplateVModel.java
URL:
http://svn.apache.org/viewvc/tiles/sandbox/trunk/tiles-velocity/src/main/java/org/apache/tiles/velocity/template/InsertTemplateVModel.java?rev=748507&r1=748506&r2=748507&view=diff
==============================================================================
---
tiles/sandbox/trunk/tiles-velocity/src/main/java/org/apache/tiles/velocity/template/InsertTemplateVModel.java
(original)
+++
tiles/sandbox/trunk/tiles-velocity/src/main/java/org/apache/tiles/velocity/template/InsertTemplateVModel.java
Fri Feb 27 13:16:42 2009
@@ -10,6 +10,7 @@
import org.apache.tiles.template.InsertTemplateModel;
import org.apache.tiles.velocity.context.VelocityUtil;
import org.apache.velocity.context.Context;
+import org.apache.velocity.runtime.Renderable;
public class InsertTemplateVModel implements Executable, BodyExecutable {
@@ -23,13 +24,14 @@
this.servletContext = servletContext;
}
- public void execute(HttpServletRequest request,
+ public Renderable execute(HttpServletRequest request,
HttpServletResponse response, Context velocityContext,
Map<String, Object> params) {
model.execute(ServletUtil.getCurrentContainer(request, servletContext),
(String) params.get("template"), (String) params.get("role"),
(String) params.get("preparer"), velocityContext, request,
response);
+ return null;
}
public void end(HttpServletRequest request, HttpServletResponse response,
Modified:
tiles/sandbox/trunk/tiles-velocity/src/main/java/org/apache/tiles/velocity/template/PutAttributeVModel.java
URL:
http://svn.apache.org/viewvc/tiles/sandbox/trunk/tiles-velocity/src/main/java/org/apache/tiles/velocity/template/PutAttributeVModel.java?rev=748507&r1=748506&r2=748507&view=diff
==============================================================================
---
tiles/sandbox/trunk/tiles-velocity/src/main/java/org/apache/tiles/velocity/template/PutAttributeVModel.java
(original)
+++
tiles/sandbox/trunk/tiles-velocity/src/main/java/org/apache/tiles/velocity/template/PutAttributeVModel.java
Fri Feb 27 13:16:42 2009
@@ -10,6 +10,7 @@
import org.apache.tiles.template.PutAttributeModel;
import org.apache.tiles.velocity.context.VelocityUtil;
import org.apache.velocity.context.Context;
+import org.apache.velocity.runtime.Renderable;
public class PutAttributeVModel implements Executable, BodyExecutable {
@@ -23,7 +24,7 @@
this.servletContext = servletContext;
}
- public void execute(HttpServletRequest request,
+ public Renderable execute(HttpServletRequest request,
HttpServletResponse response, Context velocityContext,
Map<String, Object> params) {
model.execute(ServletUtil.getCurrentContainer(request,
servletContext), ServletUtil.getComposeStack(request),
@@ -31,7 +32,7 @@
(String) params.get("expression"), null, (String)
params.get("role"),
(String) params.get("type"),
VelocityUtil.toSimpleBoolean((Boolean) params.get("value"), false),
velocityContext, request, response);
-
+ return null;
}
public void end(HttpServletRequest request, HttpServletResponse response,
Modified:
tiles/sandbox/trunk/tiles-velocity/src/main/java/org/apache/tiles/velocity/template/Tiles2Tool.java
URL:
http://svn.apache.org/viewvc/tiles/sandbox/trunk/tiles-velocity/src/main/java/org/apache/tiles/velocity/template/Tiles2Tool.java?rev=748507&r1=748506&r2=748507&view=diff
==============================================================================
---
tiles/sandbox/trunk/tiles-velocity/src/main/java/org/apache/tiles/velocity/template/Tiles2Tool.java
(original)
+++
tiles/sandbox/trunk/tiles-velocity/src/main/java/org/apache/tiles/velocity/template/Tiles2Tool.java
Fri Feb 27 13:16:42 2009
@@ -27,6 +27,7 @@
import org.apache.tiles.AttributeContext;
import org.apache.tiles.TilesContainer;
import org.apache.tiles.servlet.context.ServletUtil;
+import org.apache.velocity.runtime.Renderable;
/**
*
@@ -106,9 +107,8 @@
return this;
}
- public Tiles2Tool insertDefinition(Map<String, Object> params) {
- execute(getRepository().getInsertDefinition(), params);
- return this;
+ public Renderable insertDefinition(Map<String, Object> params) {
+ return execute(getRepository().getInsertDefinition(), params);
}
public Tiles2Tool insertDefinition() {
@@ -173,6 +173,11 @@
return attribute;
}
+ @Override
+ public String toString() {
+ return "";
+ }
+
private TilesVelocityRepository getRepository() {
if (repository != null) {
return repository;
@@ -188,7 +193,7 @@
return repository;
}
- private void execute(Executable executable, Map<String, Object> params) {
- executable.execute(getRequest(), getResponse(), getVelocityContext(),
params);
+ private Renderable execute(Executable executable, Map<String, Object>
params) {
+ return executable.execute(getRequest(), getResponse(),
getVelocityContext(), params);
}
}
Modified: tiles/sandbox/trunk/tiles-velocity/src/main/resources/tools.xml
URL:
http://svn.apache.org/viewvc/tiles/sandbox/trunk/tiles-velocity/src/main/resources/tools.xml?rev=748507&r1=748506&r2=748507&view=diff
==============================================================================
--- tiles/sandbox/trunk/tiles-velocity/src/main/resources/tools.xml (original)
+++ tiles/sandbox/trunk/tiles-velocity/src/main/resources/tools.xml Fri Feb 27
13:16:42 2009
@@ -19,6 +19,6 @@
-->
<tools>
<toolbox scope="request">
- <tool key="tiles" class="org.apache.tiles.velocity.Tiles2Tool"/>
+ <tool key="tiles" class="org.apache.tiles.velocity.template.Tiles2Tool"/>
</toolbox>
</tools>