Revision: 1237
http://stripes.svn.sourceforge.net/stripes/?rev=1237&view=rev
Author: bengunter
Date: 2010-05-19 18:53:03 +0000 (Wed, 19 May 2010)
Log Message:
-----------
Throw a descriptive exception if a definition tag is executing outside of a
render tag.
Modified Paths:
--------------
branches/1.5.x/stripes/src/net/sourceforge/stripes/tag/layout/LayoutDefinitionTag.java
Modified:
branches/1.5.x/stripes/src/net/sourceforge/stripes/tag/layout/LayoutDefinitionTag.java
===================================================================
---
branches/1.5.x/stripes/src/net/sourceforge/stripes/tag/layout/LayoutDefinitionTag.java
2010-05-18 18:57:31 UTC (rev 1236)
+++
branches/1.5.x/stripes/src/net/sourceforge/stripes/tag/layout/LayoutDefinitionTag.java
2010-05-19 18:53:03 UTC (rev 1237)
@@ -15,6 +15,7 @@
package net.sourceforge.stripes.tag.layout;
import net.sourceforge.stripes.controller.StripesConstants;
+import net.sourceforge.stripes.exception.StripesJspException;
import net.sourceforge.stripes.tag.StripesTagSupport;
import net.sourceforge.stripes.util.Log;
@@ -52,10 +53,21 @@
return layoutName;
}
- /** Get the current layout context. */
- public LayoutContext getLayoutContext() {
+ /**
+ * Get the current layout context.
+ *
+ * @throws StripesJspException If there is no {...@link LayoutContext} for
this layout in the
+ * current {...@link PageContext}.
+ */
+ public LayoutContext getLayoutContext() throws StripesJspException {
if (context == null) {
context = LayoutContext.find(getPageContext(), getLayoutName());
+ if (context == null) {
+ throw new StripesJspException("The JSP page " + getLayoutName()
+ + " contains a layout-definition tag and was invoked
directly. "
+ + "A layout-definition can only be invoked by a page
that contains "
+ + "a layout-render tag.");
+ }
}
return context;
This was sent by the SourceForge.net collaborative development platform, the
world's largest Open Source development site.
------------------------------------------------------------------------------
_______________________________________________
Stripes-development mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/stripes-development