I think I figured it out.

In the testpage.jsp of his example he has this s:form tag:

{code:XML}
<s:form id="testform"
action="TestPage.action?field1=%{field1}&field2=%{field2}">

{code}

Note the action="TestPage.action..."  

If you then do not have default-action-ref in struts.xml you will get the
form tag rendered as 

  form id="testform" name="testform" action="TestPage.action" method="post" 

But if you remove the .action part (e.g. action="TestPage?field1..."  then
it does not matter if you have the default-action-ref in struts.xml.  You
get the correct form output of:

 
action="/formtest-0.0.1-SNAPSHOT/TestPage.action?field1=111&amp;amp;field2=222 

(which includes the double amp which I know how to fix by a change in
ServletUrlRenderer)


My guess is that since TestPage.action does not match a  configured action
Struts is treating that as a URI path and not an action.  Struts is ignoring
the query string parameters if no default-action-ref is included.  If a
default-action-ref is included in struts.xml then the query string
parameters are included.

Try some testing with action="TestPage.action..." in the s:form tag and with
default-action-ref included and not included in struts.xml

Bruce




--
View this message in context: 
http://struts.1045723.n5.nabble.com/Possible-Bug-When-Using-default-action-ref-tp5715093p5715107.html
Sent from the Struts - Dev mailing list archive at Nabble.com.

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@struts.apache.org
For additional commands, e-mail: dev-h...@struts.apache.org

Reply via email to