You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@struts.apache.org by gr...@apache.org on 2006/05/09 19:55:32 UTC
svn commit: r405486 [2/2] - in /struts/sandbox/trunk/tiles/tiles-core: ./
src/main/java/org/apache/tiles/context/
src/main/java/org/apache/tiles/context/portlet/
src/main/java/org/apache/tiles/context/servlet/
src/main/java/org/apache/tiles/filter/ src...
Added: struts/sandbox/trunk/tiles/tiles-core/src/main/java/org/apache/tiles/context/servlet/ServletRequestScopeMap.java
URL: http://svn.apache.org/viewcvs/struts/sandbox/trunk/tiles/tiles-core/src/main/java/org/apache/tiles/context/servlet/ServletRequestScopeMap.java?rev=405486&view=auto
==============================================================================
--- struts/sandbox/trunk/tiles/tiles-core/src/main/java/org/apache/tiles/context/servlet/ServletRequestScopeMap.java (added)
+++ struts/sandbox/trunk/tiles/tiles-core/src/main/java/org/apache/tiles/context/servlet/ServletRequestScopeMap.java Tue May 9 10:55:29 2006
@@ -0,0 +1,181 @@
+/*
+ * $Id$
+ *
+ * Copyright 1999-2004 The Apache Software Foundation
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.tiles.context.servlet;
+
+
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.Enumeration;
+import java.util.HashSet;
+import java.util.Iterator;
+import java.util.List;
+import java.util.Map;
+import java.util.Set;
+import javax.servlet.ServletRequest;
+import org.apache.tiles.context.MapEntry;
+
+
+/**
+ * <p>Private implementation of <code>Map</code> for servlet request
+ * attributes.</p>
+ *
+ * @version $Revision$ $Date$
+ */
+
+final class ServletRequestScopeMap implements Map {
+
+
+ public ServletRequestScopeMap(ServletRequest request) {
+ this.request = request;
+ }
+
+
+ private ServletRequest request = null;
+
+
+ public void clear() {
+ Iterator keys = keySet().iterator();
+ while (keys.hasNext()) {
+ request.removeAttribute((String) keys.next());
+ }
+ }
+
+
+ public boolean containsKey(Object key) {
+ return (request.getAttribute(key(key)) != null);
+ }
+
+
+ public boolean containsValue(Object value) {
+ if (value == null) {
+ return (false);
+ }
+ Enumeration keys = request.getAttributeNames();
+ while (keys.hasMoreElements()) {
+ Object next = request.getAttribute((String) keys.nextElement());
+ if (next == value) {
+ return (true);
+ }
+ }
+ return (false);
+ }
+
+
+ public Set entrySet() {
+ Set set = new HashSet();
+ Enumeration keys = request.getAttributeNames();
+ String key;
+ while (keys.hasMoreElements()) {
+ key = (String) keys.nextElement();
+ set.add(new MapEntry(key, request.getAttribute(key), true));
+ }
+ return (set);
+ }
+
+
+ public boolean equals(Object o) {
+ return (request.equals(o));
+ }
+
+
+ public Object get(Object key) {
+ return (request.getAttribute(key(key)));
+ }
+
+
+ public int hashCode() {
+ return (request.hashCode());
+ }
+
+
+ public boolean isEmpty() {
+ return (size() < 1);
+ }
+
+
+ public Set keySet() {
+ Set set = new HashSet();
+ Enumeration keys = request.getAttributeNames();
+ while (keys.hasMoreElements()) {
+ set.add(keys.nextElement());
+ }
+ return (set);
+ }
+
+
+ public Object put(Object key, Object value) {
+ if (value == null) {
+ return (remove(key));
+ }
+ String skey = key(key);
+ Object previous = request.getAttribute(skey);
+ request.setAttribute(skey, value);
+ return (previous);
+ }
+
+
+ public void putAll(Map map) {
+ Iterator keys = map.keySet().iterator();
+ while (keys.hasNext()) {
+ String key = (String) keys.next();
+ request.setAttribute(key, map.get(key));
+ }
+ }
+
+
+ public Object remove(Object key) {
+ String skey = key(key);
+ Object previous = request.getAttribute(skey);
+ request.removeAttribute(skey);
+ return (previous);
+ }
+
+
+ public int size() {
+ int n = 0;
+ Enumeration keys = request.getAttributeNames();
+ while (keys.hasMoreElements()) {
+ keys.nextElement();
+ n++;
+ }
+ return (n);
+ }
+
+
+ public Collection values() {
+ List list = new ArrayList();
+ Enumeration keys = request.getAttributeNames();
+ while (keys.hasMoreElements()) {
+ list.add(request.getAttribute((String) keys.nextElement()));
+ }
+ return (list);
+ }
+
+
+ private String key(Object key) {
+ if (key == null) {
+ throw new IllegalArgumentException();
+ } else if (key instanceof String) {
+ return ((String) key);
+ } else {
+ return (key.toString());
+ }
+ }
+
+
+}
\ No newline at end of file
Propchange: struts/sandbox/trunk/tiles/tiles-core/src/main/java/org/apache/tiles/context/servlet/ServletRequestScopeMap.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: struts/sandbox/trunk/tiles/tiles-core/src/main/java/org/apache/tiles/context/servlet/ServletRequestScopeMap.java
------------------------------------------------------------------------------
svn:keywords = Date Author Id Revision HeadURL
Added: struts/sandbox/trunk/tiles/tiles-core/src/main/java/org/apache/tiles/context/servlet/ServletSessionScopeMap.java
URL: http://svn.apache.org/viewcvs/struts/sandbox/trunk/tiles/tiles-core/src/main/java/org/apache/tiles/context/servlet/ServletSessionScopeMap.java?rev=405486&view=auto
==============================================================================
--- struts/sandbox/trunk/tiles/tiles-core/src/main/java/org/apache/tiles/context/servlet/ServletSessionScopeMap.java (added)
+++ struts/sandbox/trunk/tiles/tiles-core/src/main/java/org/apache/tiles/context/servlet/ServletSessionScopeMap.java Tue May 9 10:55:29 2006
@@ -0,0 +1,180 @@
+/*
+ * Copyright 1999-2004 The Apache Software Foundation
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.tiles.context.servlet;
+
+
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.Enumeration;
+import java.util.HashSet;
+import java.util.Iterator;
+import java.util.List;
+import java.util.Map;
+import java.util.Set;
+import javax.servlet.http.HttpSession;
+import org.apache.tiles.context.MapEntry;
+
+
+/**
+ * <p>Private implementation of <code>Map</code> for HTTP session
+ * attributes.</p>
+ *
+ * @author Craig R. McClanahan
+ * @version $Revision$ $Date$
+ */
+
+final class ServletSessionScopeMap implements Map {
+
+
+ public ServletSessionScopeMap(HttpSession session) {
+ this.session = session;
+ }
+
+
+ private HttpSession session = null;
+
+
+ public void clear() {
+ Iterator keys = keySet().iterator();
+ while (keys.hasNext()) {
+ session.removeAttribute((String) keys.next());
+ }
+ }
+
+
+ public boolean containsKey(Object key) {
+ return (session.getAttribute(key(key)) != null);
+ }
+
+
+ public boolean containsValue(Object value) {
+ if (value == null) {
+ return (false);
+ }
+ Enumeration keys = session.getAttributeNames();
+ while (keys.hasMoreElements()) {
+ Object next = session.getAttribute((String) keys.nextElement());
+ if (next == value) {
+ return (true);
+ }
+ }
+ return (false);
+ }
+
+
+ public Set entrySet() {
+ Set set = new HashSet();
+ Enumeration keys = session.getAttributeNames();
+ String key;
+ while (keys.hasMoreElements()) {
+ key = (String) keys.nextElement();
+ set.add(new MapEntry(key, session.getAttribute(key), true));
+ }
+ return (set);
+ }
+
+
+ public boolean equals(Object o) {
+ return (session.equals(o));
+ }
+
+
+ public Object get(Object key) {
+ return (session.getAttribute(key(key)));
+ }
+
+
+ public int hashCode() {
+ return (session.hashCode());
+ }
+
+
+ public boolean isEmpty() {
+ return (size() < 1);
+ }
+
+
+ public Set keySet() {
+ Set set = new HashSet();
+ Enumeration keys = session.getAttributeNames();
+ while (keys.hasMoreElements()) {
+ set.add(keys.nextElement());
+ }
+ return (set);
+ }
+
+
+ public Object put(Object key, Object value) {
+ if (value == null) {
+ return (remove(key));
+ }
+ String skey = key(key);
+ Object previous = session.getAttribute(skey);
+ session.setAttribute(skey, value);
+ return (previous);
+ }
+
+
+ public void putAll(Map map) {
+ Iterator keys = map.keySet().iterator();
+ while (keys.hasNext()) {
+ String key = (String) keys.next();
+ session.setAttribute(key, map.get(key));
+ }
+ }
+
+
+ public Object remove(Object key) {
+ String skey = key(key);
+ Object previous = session.getAttribute(skey);
+ session.removeAttribute(skey);
+ return (previous);
+ }
+
+
+ public int size() {
+ int n = 0;
+ Enumeration keys = session.getAttributeNames();
+ while (keys.hasMoreElements()) {
+ keys.nextElement();
+ n++;
+ }
+ return (n);
+ }
+
+
+ public Collection values() {
+ List list = new ArrayList();
+ Enumeration keys = session.getAttributeNames();
+ while (keys.hasMoreElements()) {
+ list.add(session.getAttribute((String) keys.nextElement()));
+ }
+ return (list);
+ }
+
+
+ private String key(Object key) {
+ if (key == null) {
+ throw new IllegalArgumentException();
+ } else if (key instanceof String) {
+ return ((String) key);
+ } else {
+ return (key.toString());
+ }
+ }
+
+
+}
\ No newline at end of file
Propchange: struts/sandbox/trunk/tiles/tiles-core/src/main/java/org/apache/tiles/context/servlet/ServletSessionScopeMap.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: struts/sandbox/trunk/tiles/tiles-core/src/main/java/org/apache/tiles/context/servlet/ServletSessionScopeMap.java
------------------------------------------------------------------------------
svn:keywords = Date Author Id Revision HeadURL
Copied: struts/sandbox/trunk/tiles/tiles-core/src/main/java/org/apache/tiles/context/servlet/ServletTilesContext.java (from r399725, struts/sandbox/trunk/tiles/tiles-core/src/main/java/org/apache/tiles/context/ServletTilesContext.java)
URL: http://svn.apache.org/viewcvs/struts/sandbox/trunk/tiles/tiles-core/src/main/java/org/apache/tiles/context/servlet/ServletTilesContext.java?p2=struts/sandbox/trunk/tiles/tiles-core/src/main/java/org/apache/tiles/context/servlet/ServletTilesContext.java&p1=struts/sandbox/trunk/tiles/tiles-core/src/main/java/org/apache/tiles/context/ServletTilesContext.java&r1=399725&r2=405486&rev=405486&view=diff
==============================================================================
--- struts/sandbox/trunk/tiles/tiles-core/src/main/java/org/apache/tiles/context/ServletTilesContext.java (original)
+++ struts/sandbox/trunk/tiles/tiles-core/src/main/java/org/apache/tiles/context/servlet/ServletTilesContext.java Tue May 9 10:55:29 2006
@@ -16,7 +16,7 @@
* limitations under the License.
*/
-package org.apache.tiles.context;
+package org.apache.tiles.context.servlet;
import java.io.IOException;
import java.net.MalformedURLException;
@@ -30,6 +30,8 @@
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
import org.apache.tiles.TilesContext;
/**
@@ -41,83 +43,160 @@
private ServletContext servletContext;
- private ServletRequest request;
+ private HttpServletRequest request;
- private ServletResponse response;
+ private HttpServletResponse response;
+ /**
+ * <p>The lazily instantiated <code>Map</code> of application scope
+ * attributes.</p>
+ */
+ private Map applicationScope = null;
+
+ /**
+ * <p>The lazily instantiated <code>Map</code> of header name-value
+ * combinations (immutable).</p>
+ */
+ private Map header = null;
+
+
+ /**
+ * <p>The lazily instantitated <code>Map</code> of header name-values
+ * combinations (immutable).</p>
+ */
+ private Map headerValues = null;
+
+
+ /**
+ * <p>The lazily instantiated <code>Map</code> of context initialization
+ * parameters.</p>
+ */
+ private Map initParam = null;
+
+
+ /**
+ * <p>The lazily instantiated <code>Map</code> of request
+ * parameter name-value.</p>
+ */
+ private Map param = null;
+
+
+ /**
+ * <p>The lazily instantiated <code>Map</code> of request
+ * parameter name-values.</p>
+ */
+ private Map paramValues = null;
+
+ /**
+ * <p>The lazily instantiated <code>Map</code> of request scope
+ * attributes.</p>
+ */
+ private Map requestScope = null;
+
+ /**
+ * <p>The lazily instantiated <code>Map</code> of session scope
+ * attributes.</p>
+ */
+ private Map sessionScope = null;
+
+
/** Creates a new instance of ServletTilesContext */
public ServletTilesContext(ServletContext servletContext) {
- this.servletContext = servletContext;
+ initialize(servletContext, null, null);
}
/** Creates a new instance of ServletTilesContext */
- public ServletTilesContext(ServletContext servletContext, ServletRequest request) {
- this.servletContext = servletContext;
- this.request = request;
+ public ServletTilesContext(ServletContext servletContext,
+ HttpServletRequest request) {
+ initialize(servletContext, request, null);
}
/** Creates a new instance of ServletTilesContext */
public ServletTilesContext(ServletContext servletContext,
- ServletRequest request,
- ServletResponse response) {
- this.servletContext = servletContext;
- this.request = request;
- this.response = response;
+ HttpServletRequest request,
+ HttpServletResponse response) {
+ initialize(servletContext, request, response);
}
public Map getApplicationScope() {
- Enumeration e = servletContext.getAttributeNames();
- Map contextMap = new HashMap();
- while (e.hasMoreElements()) {
- String key = (String) e.nextElement();
- contextMap.put(key, servletContext.getAttribute(key));
+
+ if ((applicationScope == null) && (servletContext != null)) {
+ applicationScope = new ServletApplicationScopeMap(servletContext);
}
-
- return contextMap;
+ return (applicationScope);
+
}
+
public Map getHeader() {
- return null;
+
+ if ((header == null) && (request != null)) {
+ header = new ServletHeaderMap(request);
+ }
+ return (header);
+
}
+
public Map getHeaderValues() {
- return null;
+
+ if ((headerValues == null) && (request != null)) {
+ headerValues = new ServletHeaderValuesMap(request);
+ }
+ return (headerValues);
+
}
+
public Map getInitParams() {
- Enumeration e = servletContext.getInitParameterNames();
- Map paramMap = new HashMap();
- while (e.hasMoreElements()) {
- String key = (String) e.nextElement();
- paramMap.put(key, servletContext.getInitParameter(key));
+
+ if ((initParam == null) && (servletContext != null)) {
+ initParam = new ServletInitParamMap(servletContext);
}
-
- return paramMap;
+ return (initParam);
+
}
+
public Map getParam() {
- return null;
+
+ if ((param == null) && (request != null)) {
+ param = new ServletParamMap(request);
+ }
+ return (param);
+
}
+
public Map getParamValues() {
- return request.getParameterMap();
+
+ if ((paramValues == null) && (request != null)) {
+ paramValues = new ServletParamValuesMap(request);
+ }
+ return (paramValues);
+
}
+
public Map getRequestScope() {
- Enumeration e = request.getAttributeNames();
- Map params = new HashMap();
- while (e.hasMoreElements()) {
- String key = (String) e.nextElement();
- params.put(key, request.getAttribute(key));
+
+ if ((requestScope == null) && (request != null)) {
+ requestScope = new ServletRequestScopeMap(request);
}
-
- return params;
+ return (requestScope);
+
}
+
public Map getSessionScope() {
- return null;
- }
+ if ((sessionScope == null) && (request != null)) {
+ sessionScope = new ServletSessionScopeMap(request.getSession());
+ }
+ return (sessionScope);
+
+ }
+
public void dispatch(String path) throws IOException, Exception {
RequestDispatcher rd = request.getRequestDispatcher(path);
try {
@@ -143,5 +222,63 @@
public Locale getRequestLocale() {
return request.getLocale();
}
+
+ public ServletContext getServletContext() {
+ return servletContext;
+ }
+ public ServletRequest getRequest() {
+ return request;
+ }
+
+ public ServletResponse getResponse() {
+ return response;
+ }
+
+ /**
+ * <p>Initialize (or reinitialize) this {@link ServletWebContext} instance
+ * for the specified Servlet API objects.</p>
+ *
+ * @param context The <code>ServletContext</code> for this web application
+ * @param request The <code>HttpServletRequest</code> for this request
+ * @param response The <code>HttpServletResponse</code> for this request
+ */
+ public void initialize(ServletContext context,
+ HttpServletRequest request,
+ HttpServletResponse response) {
+
+ // Save the specified Servlet API object references
+ this.servletContext = context;
+ this.request = request;
+ this.response = response;
+
+ // Perform other setup as needed
+
+ }
+
+
+ /**
+ * <p>Release references to allocated resources acquired in
+ * <code>initialize()</code> of via subsequent processing. After this
+ * method is called, subsequent calls to any other method than
+ * <code>initialize()</code> will return undefined results.</p>
+ */
+ public void release() {
+
+ // Release references to allocated collections
+ applicationScope = null;
+ header = null;
+ headerValues = null;
+ initParam = null;
+ param = null;
+ paramValues = null;
+ requestScope = null;
+ sessionScope = null;
+
+ // Release references to Servlet API objects
+ servletContext = null;
+ request = null;
+ response = null;
+
+ }
}
Modified: struts/sandbox/trunk/tiles/tiles-core/src/main/java/org/apache/tiles/filter/TilesFilter.java
URL: http://svn.apache.org/viewcvs/struts/sandbox/trunk/tiles/tiles-core/src/main/java/org/apache/tiles/filter/TilesFilter.java?rev=405486&r1=405485&r2=405486&view=diff
==============================================================================
--- struts/sandbox/trunk/tiles/tiles-core/src/main/java/org/apache/tiles/filter/TilesFilter.java (original)
+++ struts/sandbox/trunk/tiles/tiles-core/src/main/java/org/apache/tiles/filter/TilesFilter.java Tue May 9 10:55:29 2006
@@ -67,7 +67,7 @@
try {
TilesContext tilesContext = TilesContextFactory.getInstance(
- request, filterConfig.getServletContext());
+ filterConfig.getServletContext(), request);
DefinitionsFactory factory = TilesUtil.getDefinitionsFactory(tilesContext);
if (factory instanceof ReloadableDefinitionsFactory) {
Modified: struts/sandbox/trunk/tiles/tiles-core/src/main/java/org/apache/tiles/taglib/InitDefinitionsTag.java
URL: http://svn.apache.org/viewcvs/struts/sandbox/trunk/tiles/tiles-core/src/main/java/org/apache/tiles/taglib/InitDefinitionsTag.java?rev=405486&r1=405485&r2=405486&view=diff
==============================================================================
--- struts/sandbox/trunk/tiles/tiles-core/src/main/java/org/apache/tiles/taglib/InitDefinitionsTag.java (original)
+++ struts/sandbox/trunk/tiles/tiles-core/src/main/java/org/apache/tiles/taglib/InitDefinitionsTag.java Tue May 9 10:55:29 2006
@@ -72,7 +72,8 @@
* Do start tag.
*/
public int doStartTag() throws JspException {
- TilesContext tilesContext = TilesContextFactory.getInstance(pageContext);
+ TilesContext tilesContext = TilesContextFactory.getInstance(pageContext.getServletContext(),
+ pageContext.getRequest(), pageContext.getResponse());
DefinitionsFactory factory = TilesUtil.getDefinitionsFactory(tilesContext);
if(factory != null ) {
return SKIP_BODY;
Modified: struts/sandbox/trunk/tiles/tiles-core/src/main/java/org/apache/tiles/taglib/InsertTag.java
URL: http://svn.apache.org/viewcvs/struts/sandbox/trunk/tiles/tiles-core/src/main/java/org/apache/tiles/taglib/InsertTag.java?rev=405486&r1=405485&r2=405486&view=diff
==============================================================================
--- struts/sandbox/trunk/tiles/tiles-core/src/main/java/org/apache/tiles/taglib/InsertTag.java (original)
+++ struts/sandbox/trunk/tiles/tiles-core/src/main/java/org/apache/tiles/taglib/InsertTag.java Tue May 9 10:55:29 2006
@@ -553,8 +553,9 @@
throws JspException {
try {
- TilesContext tilesContext = TilesContextFactory.getInstance(
- pageContext);
+ TilesContext tilesContext = TilesContextFactory.getInstance(
+ pageContext.getServletContext(),
+ pageContext.getRequest(), pageContext.getResponse());
ComponentDefinition definition = TilesUtil.getDefinition(
name, tilesContext);
@@ -703,7 +704,9 @@
throws JspException {
try {
- TilesContext tilesContext = TilesContextFactory.getInstance(pageContext);
+ TilesContext tilesContext = TilesContextFactory.getInstance(
+ pageContext.getServletContext(),
+ pageContext.getRequest(), pageContext.getResponse());
ComponentDefinition definition =
TilesUtil.getDefinition(name, tilesContext);
@@ -875,7 +878,9 @@
// Call controller if any
if (controller != null) {
try {
- TilesContext tilesContext = TilesContextFactory.getInstance(pageContext);
+ TilesContext tilesContext = TilesContextFactory.getInstance(
+ pageContext.getServletContext(),
+ pageContext.getRequest(), pageContext.getResponse());
controller.execute(tilesContext, subCompContext);
} catch (Exception e) {
throw new ServletException(e);
Modified: struts/sandbox/trunk/tiles/tiles-core/src/main/java/org/apache/tiles/taglib/util/TagUtils.java
URL: http://svn.apache.org/viewcvs/struts/sandbox/trunk/tiles/tiles-core/src/main/java/org/apache/tiles/taglib/util/TagUtils.java?rev=405486&r1=405485&r2=405486&view=diff
==============================================================================
--- struts/sandbox/trunk/tiles/tiles-core/src/main/java/org/apache/tiles/taglib/util/TagUtils.java (original)
+++ struts/sandbox/trunk/tiles/tiles-core/src/main/java/org/apache/tiles/taglib/util/TagUtils.java Tue May 9 10:55:29 2006
@@ -172,7 +172,9 @@
* @return Requested bean or <code>null</code> if not found.
*/
public static Object findAttribute(String beanName, PageContext pageContext) {
- TilesContext tilesContext = TilesContextFactory.getInstance(pageContext);
+ TilesContext tilesContext = TilesContextFactory.getInstance(
+ pageContext.getServletContext(),
+ pageContext.getRequest(), pageContext.getResponse());
ComponentContext compContext = ComponentContext.getContext(tilesContext);
if (compContext != null) {
@@ -196,7 +198,9 @@
*/
public static Object getAttribute(String beanName, int scope, PageContext pageContext) {
if (scope == ComponentConstants.COMPONENT_SCOPE) {
- TilesContext tilesContext = TilesContextFactory.getInstance(pageContext);
+ TilesContext tilesContext = TilesContextFactory.getInstance(
+ pageContext.getServletContext(),
+ pageContext.getRequest(), pageContext.getResponse());
ComponentContext compContext = ComponentContext.getContext(tilesContext);
return compContext.getAttribute(beanName);
}
@@ -340,7 +344,9 @@
throws JspException {
try {
- TilesContext tilesContext = TilesContextFactory.getInstance(pageContext);
+ TilesContext tilesContext = TilesContextFactory.getInstance(
+ pageContext.getServletContext(),
+ pageContext.getRequest(), pageContext.getResponse());
return TilesUtil.getDefinition(
name, tilesContext);