You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@struts.apache.org by "Rosenblum, Jason" <jr...@proactcorp.com> on 2002/06/13 17:05:13 UTC
DispatchAction with Image buttons
Is anyone successfully using the DispatchAction with <html:image> tags???
> Jason Rosenblum (SCJD)
> Contractor
> ProAct Technologies
> 914.872.8171 (Voice)
> 914.872.8100 (Fax)
>
>
>
--
To unsubscribe, e-mail: <ma...@jakarta.apache.org>
For additional commands, e-mail: <ma...@jakarta.apache.org>
Re: DispatchAction with Image buttons
Posted by Mark Nichols <dh...@hotmail.com>.
>
> Is anyone successfully using the DispatchAction with <html:image> tags???
>
We have this Dispatch Action:
package dhs.vcm.vis.action.finishReason;
import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;
import org.apache.struts.actions.DispatchAction;
import dhs.vcm.vis.business.FinishVisitReasonBO;
import dhs.vcm.vis.db.exception.Fin_Vst_Rsn_Exception;
import dhs.vcm.vis.entity.Constants;
import dhs.vcm.vis.entity.FinishVisitReason;
import dhs.vcm.vis.form.finishReason.FinishReasonDeleteForm;
import dhs.vcm.vis.form.finishReason.FinishReasonUpdateForm;
import dhs.vcm.vis.form.finishReason.FinishVisitReasonFormConverter;
/**
* Implementation of <strong>DispatchAction</strong> that manages the
* insert, update, and delete functionality for the Finish Reason
Maintenance page.
*
* @author Mark H. Nichols
* @version $Revision: 1.0 $ $Date: 2001/02/25 9:08:00 $
*/
public final class DispatcherAction extends DispatchAction {
// --------------------------------------------------------- Public Methods
/**
* Process the specified HTTP request, and create the corresponding HTTP
* response (or forward to another web component that will create it).
* Return an <code>ActionForward</code> instance describing where and how
* control should be forwarded, or <code>null</code> if the response has
* already been completed.
*
* @param mapping The ActionMapping used to select this instance
* @param actionForm The optional ActionForm bean for this request (if any)
* @param request The HTTP request we are processing
* @param response The HTTP response we are creating
*
* @exception IOException if an input/output error occurs
* @exception ServletException if a servlet exception occurs
*/
public ActionForward delete(
ActionMapping mapping,
ActionForm form,
HttpServletRequest request,
HttpServletResponse response)
throws IOException, ServletException {
// create a new delete form to hold the data for the delete jsp
FinishReasonDeleteForm deleteForm = new FinishReasonDeleteForm() ;
deleteForm.setShortDescription(
(String)request.getParameter("shortDescription") ) ;
request.setAttribute(Constants.FINISH_REASON_DELETE_KEY, deleteForm ) ;
// Forward control to the specified success URI
return (mapping.findForward("delete"));
}
public ActionForward insert(
ActionMapping mapping,
ActionForm form,
HttpServletRequest request,
HttpServletResponse response)
throws IOException, ServletException {
// Forward control to the specified success URI
return (mapping.findForward("insert"));
}
public ActionForward update(
ActionMapping mapping,
ActionForm form,
HttpServletRequest request,
HttpServletResponse response)
throws IOException, ServletException {
// get the row to update using the selected reason Id
FinishReasonUpdateForm updateForm = new FinishReasonUpdateForm() ;
FinishVisitReasonBO reasonBO = new FinishVisitReasonBO() ;
FinishVisitReason reasonForUpdate = new FinishVisitReason() ;
try {
reasonForUpdate =
reasonBO.getByReasonID(Integer.valueOf(request.getParameter("finishReasonID"
)).intValue()) ;
}catch (Fin_Vst_Rsn_Exception fvre) {
System.out.println(" Finish Visit Reason Exception caught: " +
fvre.getMessage()) ;
}
FinishVisitReasonFormConverter.toFinishReasonForm(reasonForUpdate,
updateForm) ;
updateForm.debug() ;
request.setAttribute(Constants.FINISH_REASON_UPDATE_KEY, updateForm ) ;
// Forward control to the specified success URI
return (mapping.findForward("update"));
}
}
That works with this JSP using image buttons....
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<!-- Some standard includes -->
<%@ page language="java" %>
<%@ taglib uri="/WEB-INF/struts-bean.tld" prefix="bean" %>
<%@ taglib uri="/WEB-INF/struts-html.tld" prefix="html" %>
<%@ taglib uri="/WEB-INF/struts-logic.tld" prefix="logic" %>
<%@ taglib uri="/WEB-INF/dhs-html.tld" prefix="dhshtml" %>
<%@ taglib uri="/WEB-INF/pager-taglib.tld" prefix="pg" %>
<html:html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<title><bean:message key="finishReasonTest.title"/></title>
<html:base/>
<LINK REL="STYLESHEET" TYPE="text/css" HREF="../theme/dhs.css">
<script language="javascript" type="text/javascript"
src="../js/chromeless_30.js"></script>
<script language="javascript" type="text/javascript"
src="../js/mainScripts.js"></script>
<script language="javascript" type="text/javascript"
src="../js/coolbuttons.js"></script>
</head>
<body bgcolor="#ffffff">
<html:form action="FinishReason/Dispatcher" method="post">
<!-- define a page using the pager tag -->
<pg:pager maxIndexPages="10" maxPageItems="10">
<!-- use these variables to keep from getting warnings, but don't render
them
on the resulting page. -->
<!-- <%= pagerPageNumber %> -->
<!-- <%= pagerOffset %> -->
<!-- <%= pagerMaxItems %> -->
<table width="500">
<TBODY>
<!-- the page heading... -->
<tr><td colspan="5" height="10" align="left"
class="pageHeading"><bean:message key="finish.heading"/></td></tr>
<tr><td colspan="5"> </td></tr>
<!-- the column headings -->
<tr>
<td width="25"> </td>
<td width="150" class="columnHeading"><bean:message
key="finish.column.short"/></td>
<td width="225" class="columnHeading"><bean:message
key="finish.column.long"/></td>
<td width="50" class="columnHeading"><bean:message
key="finish.column.reque"/></td>
<td width="50" class="columnHeading" align="center"><bean:message
key="finish.column.order"/></td>
</tr>
<!-- iterate through the contents of the bean -->
<logic:iterate id="reason" name="finishReason" scope="session"
type="dhs.vcm.vis.form.finishReason.FinishReasonForm">
<!-- <%= reason %> -->
<pg:item>
<dhshtml:row oddColor="#cddbeb" evenColor="#ffffff" evenStyleClass="text"
oddStyleClass="text">
<logic:equal name="reason" property="protIndicator" value="N">
<td>
<div class="coolBar" style="width:16px">
<span class="coolButton" style="width:16px">
<html:link page="/do/FinishReason/Dispatcher" name="reason"
property="deleteParms">
<html:img page="/images/java/general/Delete16.gif"
width="16" height="16" alt="Delete" border="0"/>
</html:link>
</span>
</div>
</td>
</logic:equal>
<logic:equal name="reason" property="protIndicator" value=" ">
<td>
<div class="coolBar" style="width:16px">
<span class="coolButton" style="width:16px">
<html:link page="/do/FinishReason/Dispatcher" name="reason"
property="deleteParms">
<html:img page="/images/java/general/Delete16.gif"
width="16" height="16" alt="Delete" border="0"/>
</html:link>
</span>
</div>
</td>
</logic:equal>
<logic:equal name="reason" property="protIndicator" value="Y">
<td bgcolor="#ffffff" height="16"> </td>
</logic:equal>
<td>
<html:link page="/do/FinishReason/Dispatcher" name="reason"
property="updateParms">
<bean:write name="reason" property="shortDescription"/>
</html:link>
</td>
<td><bean:write name="reason" property="longDescription"/></td>
<td align="center"><bean:write name="reason"
property="requeIndicator"/></td>
<td align="center"><bean:write name="reason"
property="orderValue"/></td>
</dhshtml:row>
</pg:item>
</logic:iterate>
</TBODY>
</table>
<!-- the pager row -->
<table width="500" align="center">
<tbody>
<tr><td> </td></tr>
<tr>
<td width="15"> </td>
<td class="pagerTag">
<pg:index>
Result Pages:
<pg:prev>
<!-- <%= pageNumber %> -->
<a href="<%=pageUrl%>">[<<Prev]</a></pg:prev>
<pg:pages><%
if (pageNumber.intValue() < 10) {
%> <%
}
if (pageNumber == pagerPageNumber) {
%><b><%= pageNumber %></b><%
} else {
%><a href="<%=pageUrl%>"><%= pageNumber %></a><%
}
%>
</pg:pages>
<pg:next>
<!-- <%= pageNumber %> -->
<a href="<%=pageUrl%>">[Next>>]</a></pg:next>
<br>
</pg:index>
</td>
</tr>
<tr><td colspan="2"> </td></tr>
</tbody>
</table>
</pg:pager>
<br>
<table>
<tr>
<td width="15"> </td>
<td align="left">
<html:link page="/do/FinishReason/Dispatcher?method=insert">
<div class="coolBar" style="width:100px">
<span class="coolButton" style="width:100px">
<img src="../images/java/general/Add16.gif" width="16" height="16"
alt="" border="0">
<b><bean:message key="finish.link.insert"/></b>
</span>
</div>
</html:link>
</td>
</tr>
</table>
</html:form>
<html:errors/>
</body>
</html:html>
HTH,
</mark>
--
To unsubscribe, e-mail: <ma...@jakarta.apache.org>
For additional commands, e-mail: <ma...@jakarta.apache.org>
Re: DispatchAction with Image buttons
Posted by Robert Taylor <ro...@yahoo.com>.
I haven't to date, but definitely will in my next
project so I have done some research on it.
>From what I can tell neither DispatchAction nor
LookupDispatchAction will support this out of the box,
but there is a pretty simple modification that can be
made to DispatchAction to make it work.
I explain my ideas in this thread:
http://www.mail-archive.com/struts-user@jakarta.apache.org/msg33005.html
Unless someone has already implemented this, I will
need to and will post it when done.
robert
--- "Rosenblum, Jason" <jr...@proactcorp.com>
wrote:
>
> Is anyone successfully using the DispatchAction with
> <html:image> tags???
>
> > Jason Rosenblum (SCJD)
> > Contractor
> > ProAct Technologies
> > 914.872.8171 (Voice)
> > 914.872.8100 (Fax)
> >
> >
> >
>
> --
> To unsubscribe, e-mail:
> <ma...@jakarta.apache.org>
> For additional commands, e-mail:
> <ma...@jakarta.apache.org>
>
>
>
__________________________________________________
Do You Yahoo!?
Yahoo! - Official partner of 2002 FIFA World Cup
http://fifaworldcup.yahoo.com
--
To unsubscribe, e-mail: <ma...@jakarta.apache.org>
For additional commands, e-mail: <ma...@jakarta.apache.org>