All that means is you can have

<mysimpleTag value="<%=scripletVariable%>"/>

false means you cannot have a scriplet variable as a value

That's not quite what i wanted to do, but in a way accomplishes a similar task without 
modifying struts.  Its not sexy enough for me ;)

The whole point of MVC is seperation presentation, business logic, code

<html:form 
action="<%=request.getAttribute("formaction")!=null?(String)request.getAttribute("formaction"):"/Default/url"%>"
 method="post"/>

If i start putting scriptlets like that in my code, im basically breaking the MVC 
design pattern.  Because now, my JSP page is dependent upon that scriptlet variable 
being in the environment, and if it used an object, say like this:

<html:form 
action="<%=request.getAttribute("myForm")!=null?(MyForm)request.getAttribute("formaction").getFormaction():"/Default/url"%>"
 method="post"/>


The method I used, I believe, is a tad better because the JSP page will still function 
in the absence of that scriptlet variable, and is cleaner JSP code.

Regards,
Mark


*********** REPLY SEPARATOR  ***********

On 03/14/2003 at 9:27 AM Kris Schneider wrote:

>The code you've quoted has no impact on whether or not the <html:form> tag's
>"action" attribute is an rtexpr. Look at struts-html.tld:
>
><tag>
>  <name>form</name>
>  <tagclass>org.apache.struts.taglib.html.FormTag</tagclass>
>  <bodycontent>JSP</bodycontent>
>  <attribute>
>    <name>action</name>
>    <required>true</required>
>    <rtexprvalue>true</rtexprvalue>
>  </attribute>
>...
>
>Quoting Mark <[EMAIL PROTECTED]>:
>
>> No, its not a runtime expression.
>>
>> If you look at the code in FormTag you'll see that its not
>>
>>          results.append("\" action=\"");
>>
>> results.append(response.encodeURL(RequestUtils.getActionMappingURL(action,
>> pageContext)));
>>          results.append("\"");
>>
>>
>> It simply pulls the action mapping from the config.
>>
>> I changed my code to
>>
>>          results.append("\" action=\"");
>>    // check if we have a bean thats exposing a formaction property, if so,
>> use that property, otherwise use our assigned action value in the jsp page
>>
>>      try {
>>         Object value = RequestUtils.lookup(pageContext,
>> beanName,"formaction", null);
>>         if (value != null && !value.toString().equals(""))
>>         {
>>           this.action=ResponseUtils.filter(value.toString());
>>           System.out.println(value.toString());
>>         }
>>       } catch (Exception e)
>>       {
>>         e.printStackTrace();
>>       }
>>
>> results.append(response.encodeURL(RequestUtils.getActionMappingURL(action,
>> pageContext)));
>>
>>
>> *********** REPLY SEPARATOR  ***********
>>
>> On 03/14/2003 at 9:50 AM Jose Gonzalez Gomez wrote:
>>
>> >Mark,
>> >
>> >    Please, correct me if I'm wrong, but I think the action attribute in
>> >the <html:form> tag is a run time expression, so there's no need to
>> >extend the FormTag class in order to use a dynamic form action.
>> >
>> >    Regards
>> >    Jose
>> >
>> >Mark wrote:
>> >
>> >>I just wanted to pass on a tidbit that might help one or two people out
>> there.
>> >>
>> >>I have a search page that displays the results with checkboxes.  There are
>> two or three different places that i use this same search page, so rather
>> than writing or copying the search results jsp page to several copies (to
>> allow me to post the form thats on the results page to a different forward
>> definition) i made a modifiecation to struts.
>> >>
>> >>In the FormTag.java I added some code to peek in the formbean for a
>> property called "formaction".  If it finds one, it uses this new action
>> instead of the hard coded one in the jsp page.
>> >>
>> >>Thus, in my action class i do this:
>> >>
>> >>MyBean myBean=(MyBean)actionForm;
>> >>
>> >>myBean.setFormaction("/Some/other/url");
>> >>return mapping.findforward("default");
>> >>
>> >>now i have a jsp page which i can reuse its functionality in several places
>> in my code.
>> >>
>> >>I had thought about using a hidden field, but the problem really stems from
>> the statically coded form action="/Url" part.  Since struts doesnt allow us
>> much flexibility here by default, I decided to add my own and it works
>> great!
>> >>
>> >>Regards,
>> >>Mark
>> >>
>> >>
>> >>
>> >>
>> >>---------------------------------------------------------------------
>> >>To unsubscribe, e-mail: [EMAIL PROTECTED]
>> >>For additional commands, e-mail: [EMAIL PROTECTED]
>> >>
>> >>
>> >>
>> >>
>> >>
>> >
>> >
>> >---------------------------------------------------------------------
>> >To unsubscribe, e-mail: [EMAIL PROTECTED]
>> >For additional commands, e-mail: [EMAIL PROTECTED]
>>
>>
>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: [EMAIL PROTECTED]
>> For additional commands, e-mail: [EMAIL PROTECTED]
>>
>
>
>--
>Kris Schneider <mailto:[EMAIL PROTECTED]>
>D.O.Tech       <http://www.dotech.com/>
>
>---------------------------------------------------------------------
>To unsubscribe, e-mail: [EMAIL PROTECTED]
>For additional commands, e-mail: [EMAIL PROTECTED]




---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to