Author: lukaszlenart
Date: Wed May 22 09:19:09 2013
New Revision: 862717
Log:
Updates draft docs
Modified:
websites/production/struts/content/development/2.x/docs/osgi-plugin.html
websites/production/struts/content/development/2.x/docs/parameters-interceptor.html
websites/production/struts/content/development/2.x/docs/struts-next.html
Modified:
websites/production/struts/content/development/2.x/docs/osgi-plugin.html
==============================================================================
--- websites/production/struts/content/development/2.x/docs/osgi-plugin.html
(original)
+++ websites/production/struts/content/development/2.x/docs/osgi-plugin.html
Wed May 22 09:19:09 2013
@@ -126,7 +126,7 @@ under the License.
<H2><A name="OSGiPlugin-Overview"></A>Overview</H2>
<DIV class="panelMacro"><TABLE class="noteMacro"><COLGROUP><COL
width="24"><COL></COLGROUP><TR><TD valign="top"><IMG
src="https://cwiki.apache.org/confluence/images/icons/emoticons/warning.gif"
width="16" height="16" align="absmiddle" alt="" border="0"></TD><TD>This plugin
is only experimental and can change in the future.</TD></TR></TABLE></DIV>
-<P>This plugin provides support for starting an instance of Apache Felix
inside a web application, and scanning installed bundles for Struts
configuration. An admin bundle is also provided.</P>
+<P>This plugin provides support for starting an instance of Apache Felix
inside a web application, and scanning installed bundles for Struts
configuration. An admin bundle is also provided. It can be used with Glassfish
3 as well (Glassfish 3 based on Apache Felix as well), but in such a way
<TT>struts.osgi.host</TT> must be defined.</P>
<H2><A name="OSGiPlugin-Features"></A>Features</H2>
@@ -189,10 +189,6 @@ Import-Package: com.opensymphony.xwork2
<SPAN class="code-tag"><constant name=<SPAN
class="code-quote">"struts.objectFactory.delegate"</SPAN> value=<SPAN
class="code-quote">"springOsgi"</SPAN> /></SPAN>
</PRE>
</DIV></DIV></LI>
-</OL>
-
-
-<OL>
<LI>Configure your <B>web.xml</B> like:
<DIV class="code panel" style="border-width: 1px;"><DIV class="codeContent
panelContent">
<PRE class="code-xml">
@@ -250,10 +246,6 @@ Import-Package: com.opensymphony.xwork2
<SPAN class="code-tag"></web-app></SPAN>
</PRE>
</DIV></DIV></LI>
-</OL>
-
-
-<OL>
<LI>Add the Spring OSGi, and Spring Web dependencies to your web app,
if you are using maven:
<DIV class="code panel" style="border-width: 1px;"><DIV class="codeContent
panelContent">
<PRE class="code-xml">
@@ -389,6 +381,17 @@ org.springframework.web-2.5.5.A.jar
<SPAN class="code-tag"></context-param></SPAN>
</PRE>
</DIV></DIV>
+
+<P>If you are running your application on Glassfish 3 (which already contains
Apache Felix) you must specify <TT>struts.osgi.host</TT>, like below:</P>
+<DIV class="code panel" style="border-width: 1px;"><DIV class="codeContent
panelContent">
+<PRE class="code-xml">
+<SPAN class="code-tag"><context-param></SPAN>
+ <SPAN class="code-tag"><param-name></SPAN>struts.osgi.host<SPAN
class="code-tag"></param-name></SPAN>
+ <SPAN class="code-tag"><param-value></SPAN>Glassfish<SPAN
class="code-tag"></param-value></SPAN>
+<SPAN class="code-tag"></context-param></SPAN>
+</PRE>
+</DIV></DIV>
+
<DIV class="table-wrap">
<TABLE class="confluenceTable"><TBODY>
<TR>
Modified:
websites/production/struts/content/development/2.x/docs/parameters-interceptor.html
==============================================================================
---
websites/production/struts/content/development/2.x/docs/parameters-interceptor.html
(original)
+++
websites/production/struts/content/development/2.x/docs/parameters-interceptor.html
Wed May 22 09:19:09 2013
@@ -234,6 +234,22 @@ over ParametersInterceptor which means i
<P>The best idea is to define very tight restrictions with
ParametersInterceptor and relax them per action with
@{link
ParameterNameAware#acceptableParameterName(String)}</P></TD></TR></TABLE></DIV>
+<H2><A name="ParametersInterceptor-Warningonmissingparameters"></A>Warning on
missing parameters</H2>
+
+<P>When there is no setter for given parameter name, a warning message like
below will be logged in devMode:</P>
+
+<DIV class="preformatted panel" style="border-width: 1px;"><DIV
class="preformattedContent panelContent">
+<PRE>SEVERE: Developer Notification (set struts.devMode to false to disable
this message):
+Unexpected Exception caught setting 'search' on 'class demo.ItemSearchAction:
Error setting expression 'search' with value ['search', ]
+Error setting expression 'search' with value ['search', ] - [unknown location]
+ at
com.opensymphony.xwork2.ognl.OgnlValueStack.handleRuntimeException(OgnlValueStack.java:201)
+ at
com.opensymphony.xwork2.ognl.OgnlValueStack.setValue(OgnlValueStack.java:178)
+ at
com.opensymphony.xwork2.ognl.OgnlValueStack.setParameter(OgnlValueStack.java:152)
+</PRE>
+</DIV></DIV>
+
+<P>Thus is expected behaviour to allow developer to spot missing setter or
typo in either parameter name or setter.</P>
+
<H2><A name="ParametersInterceptor-Examples"></A>Examples</H2>
<DIV class="code panel" style="border-width: 1px;"><DIV class="codeContent
panelContent">
Modified:
websites/production/struts/content/development/2.x/docs/struts-next.html
==============================================================================
--- websites/production/struts/content/development/2.x/docs/struts-next.html
(original)
+++ websites/production/struts/content/development/2.x/docs/struts-next.html
Wed May 22 09:19:09 2013
@@ -170,14 +170,15 @@ under the License.
<LI>Drop support for Struts 1 (remove plugin)</LI>
<LI>Remove deprecated APIs</LI>
<LI>Switch to Java 1.6</LI>
+ <LI>Rename XWork packages to org.apache.struts.xwork</LI>
<LI>Prepare the first release</LI>
</OL>
<P>Plan for Struts 3</P>
<OL>
- <LI>Rename XWork packages to org.apache.struts.xwork</LI>
<LI>Rename Struts 2 packages to org.apache.struts</LI>
+ <LI>...</LI>
</OL>
</DIV>