This is really a simple aside, but is there a way to have the text (label) of the button appear different that the value of the submit, and if so, how does one do it? Thanks.
Yes and no.
The HTML 4.0.1 standard allows you to specify a <button> tag which does this but IE doesn't support it properly. Mozilla supports it correctly though. I have only checked with IE6 and Mozilla 1.3/1.4.
The button tag can even include different styles and images on the button eg
<button name="method" value="myValue" type="submit">this is a <b>button</b>, click me</button>
Problems I found with IE's support of the button tag:
1. The default type should be 'submit' from the standard, but IE treats it as 'button' so it doesn't cause the form to submit. Fixed by adding the type="submit" to the tag
2. (the problem that stops me using it) If you have more than 1 button tag in your form all the button values will be included when the form submits - which makes it useless.
Eg if i have the following buttons:
<button name="method" value="update" type="submit">update me</button> <button name="method" value="delete" type="submit">delete me</button>
I click the 'update me' button, IE will submit the following values method=update&method=delete, when it should only send method=update.
check out the spec here: http://www.w3.org/TR/html401/interact/forms.html#edef-BUTTON
--Jason Lea
-----Original Message----- From: Tim Clotworthy [mailto:[EMAIL PROTECTED] Sent: Wednesday, July 23, 2003 5:07 PM To: 'Struts Users Mailing List' Subject: RE: LookupDispatchAction problem
Thanks for all help. It is fixed now. God bless you, one and all.
-----Original Message----- From: Suzette Daniel [mailto:[EMAIL PROTECTED] Sent: Wednesday, July 23, 2003 5:01 PM To: 'Struts Users Mailing List' Subject: RE: LookupDispatchAction problem
No prob, here you go:
<logic:notPresent name="org.apache.struts.action.MESSAGE" scope="application"> ERROR: Application resources not loaded -- check servlet
container
logs for error messages. </logic:notPresent>
Suzette
-----Original Message----- From: Tim Clotworthy [mailto:[EMAIL PROTECTED] Sent: Wednesday, July 23, 2003 5:00 PM To: 'Struts Users Mailing List' Subject: RE: LookupDispatchAction problem
Thanks, but I switch it to method, and same error occurs.
Again, I wonder if my problem is related to my resource bundle, not
being
able to find it, etc. How can I simply diagnose that the tag
<bean:message
key="button.add" /> is being processed properly by the ActionServlet (value being found, etc.). thanks. Sorry for this going on-and-on. Who
knew...
-----Original Message----- From: Suzette Daniel [mailto:[EMAIL PROTECTED] Sent: Wednesday, July 23, 2003 4:43 PM To: 'Struts Users Mailing List' Subject: RE: LookupDispatchAction problem
I received the same error, so I switched to using my own property
"method"
and if fixed that error.
JSP: <html:submit property="method" titleKey="verify.order.add.another.button.title"> <bean:message key="button.add" /> </html:submit>
Struts-config: ...... <action path="/doOrderVerification" name="monitorInfoForm" input="/pages/verifyorder.jsp" parameter="method" type="com.waca.nec.consumer.actions.StoreProductDispatchAction" scope="session">
Suzette
-----Original Message----- From: Tim Clotworthy [mailto:[EMAIL PROTECTED] Sent: Wednesday, July 23, 2003 4:40 PM To: 'Struts Users Mailing List' Subject: RE: LookupDispatchAction problem
Thanks to all earnest responses. I still have a problem, but it
has
evolved a little. I have simplified the syntax (using husted tip
003),
so that
my
jsp has:
<html:submit> <bean:message key="button.selectOrgs"/> </html:submit>
(as he suggested, using the default name of submit that
corresponds
totype="com.hotapp.fes.presentation.support.action.FESSupportOrgDispatchAc
the
<html:submit> tag, and in my struts-config, I now have:
<action path="/SupportOrgDispatchAction"
org.apache.struts.actions.LookupDispatchAction.execute(LookupDispatchActtion" name="SupportOrgForm" parameter="submit"> <forward name="NextPage" path="/fes/jsp/FESSupportOrgTable.jsp"/> </action>
and in my action I have:
protected Map getKeyMethodMap() {
Map map = new HashMap(); map.put("button.selectOrgs", "selectOrgs"); return map; }
But alas, I am still getting an error (below). I wonder if my
resource
bundled is not being read properly, because the button on the form
appears
with the tag syntax "<bean:message key" (obviously red flag
something
is
wrong), rather than the value from the properties file. How can I
check
that the property button.selectOrgs is being found in the resource
bundle,
or,
for that matter, that the resource bundle is being found at all?
Thanks so much to all.
javax.servlet.ServletException: Request[/SupportOrgDispatchAction]
does
not contain handler parameter named submit at
org.apache.struts.action.RequestProcessor.processActionPerform(RequestPrion.java:199) at
org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:ocessor.java:480) at
org.apache.struts.action.ActionServlet.process(ActionServlet.java:1420)274) at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Applicaat
org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:520)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:760) at javax.servlet.http.HttpServlet.service(HttpServlet.java:853) at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilttionFilterChain.java:247) at
erChain.java:193)...blah...blah
-----Original Message----- From: Suzette Daniel [mailto:[EMAIL PROTECTED] Sent: Wednesday, July 23, 2003 4:19 PM To: 'Struts Users Mailing List' Subject: RE: LookupDispatchAction problem
With LookupDispatch you don't have to use a hidden tag. I think
the
problem might be in your action itself. Look at Ted's tip(http://husted.com/struts/tips/003.html) and below is a
working
sample.
JSP: <html:submit property="method" titleKey="verify.order.add.another.button.title"> <bean:message key="button.add" /> </html:submit>
Struts-config: ...... <action path="/doOrderVerification" name="monitorInfoForm" input="/pages/verifyorder.jsp" parameter="method" type="com.waca.nec.consumer.actions.StoreProductDispatchAction" scope="session"> <forward name="dontsaveproduct"
path="/pages/choosemonitor.jsp"/>
<forward name="add" path="/pages/choosemonitor.jsp"/> <forward name="checkout" path="/pages/contactinfo.jsp"/> </action> ....
ACTION: public class StoreProductDispatchAction extends
LookupDispatchAction
{
........ protected Map getKeyMethodMap() { Map map = new HashMap(); map.put("button.add",
AppConstants.ACTION_KEY_ADD);
map.put("button.checkout",
AppConstants.ACTION_KEY_CHECK_OUT);
map.put("button.continue.shopping", AppConstants.ACTION_KEY_DONT_SAVE); return map; }
public ActionForward add(ActionMapping mapping,
ActionForm
form,
HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException { //DO STUFF return
mapping.findForward(AppConstants.ACTION_KEY_ADD);
}
public ActionForward checkout(ActionMapping mapping,
ActionForm
form,
HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException { //DO STUFF return
mapping.findForward(AppConstants.ACTION_KEY_CHECK_OUT);
}
public ActionForward dontsaveproduct(ActionMapping
mapping,
ActionForm form, HttpServletRequest request, HttpServletResponse
response)
throws IOException, ServletException { //DO STUFF return
mapping.findForward(AppConstants.ACTION_KEY_DONT_SAVE);
}
Suzette
-----Original Message----- From: Rick Reumann [mailto:[EMAIL PROTECTED] Sent: Wednesday, July 23, 2003 4:01 PM To: Struts Users Mailing List Subject: Re: LookupDispatchAction problem
On Wed, Jul 23,'03 (03:44 PM GMT-0400), Tim wrote:
I am getting the following exception:
SupportOrgDispatchAction] does not contain handler parameter
named
type="com.hotapp.fes.presentation.support.action.FESSupportOrgDispatcmethod
For this actionmapping:
<action path="/SupportOrgDispatchAction"
hAc tion" name="SupportOrgForm" parameter="method"> <forward name="NextPage"
path="/fes/jsp/FESSupportOrgTable.jsp"/>
</action>
against these tags in my jsp:
<html:submit property="method" value=" Query "> <bean:message key="button.selectOrgs"> </html:submit>
This is my first crack at subclassing the
LookupDispatchAction.
Any
ideas as to what I am doing wrong are greatly appreciated.
Thanks.
Are you sure you are passing in the form variable called
"method"
?
Make sure on the form that submits you have at the least a
hidden
variable
called "method" ie..
<html:hidden property="method" value="updateOrWhatever"/>
and then of course make sure the associated form has get/sets
for
"method"
(side note: I like to use the parameter name "dispatch" instead
of
---------------------------------------------------------------------method,
although on my little tutorials I used the parameter
"methodToCall"
thinking that would help give the idea of what's going on, but
that
was
probably
more confusing).
-- Rick
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]
---------------------------------------------------------------------
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]
--------------------------------------------------------------------- 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]