Yes, the ActionErrors() is in the Action class.
I attached the following Action class for your references, tq!
package com.ilium.eapps.intmsg.controller;
import java.util.*;
import org.apache.commons.logging.LogFactory;
import org.apache.struts.action.*;
import javax.rmi.PortableRemoteObject;
import javax.naming.InitialContext;
import javax.servlet.http.*;
import com.ilium.eapps.syslib.model.*;
import com.ilium.eapps.syslib.constants.*;
import com.ilium.eapps.syswar.controller.*;
import com.ilium.eapps.syswar.util.*;
import com.ilium.eapps.intmsg.primKey.*;
import com.ilium.eapps.intmsg.model.*;
import com.ilium.eapps.intmsg.dao.*;
import com.ilium.eapps.intmsg.constants.*;
import com.ilium.eapps.intmsg.ejb.sb.*;
public class AddrBookAction extends BaseLoginAction
{
SBAddrBookHome homeAddrBook = null;
SBAddrBookRemote remoteAddrBook = null;
private IAddrBookDAO iAddrBookDAO;
private org.apache.commons.logging.Log __log =
LogFactory.getFactory().getInstance(this.getClass());
private static int PAGE_LENGTH = 20;
static {
ResourceBundle prop =
ResourceBundle.getBundle("resources.application-intmsg");
try
{
PAGE_LENGTH = Integer.parseInt(prop.getString("list.page.length"));
}
catch (Exception e)
{
}
}
public boolean getEJB()
{
try
{
InitialContext ctx = new InitialContext();
Object objref = ctx.lookup(INTMSG_IJNDIName.SBAddrBook);
homeAddrBook =
(SBAddrBookHome) PortableRemoteObject.narrow(
objref,
SBAddrBookHome.class);
remoteAddrBook = homeAddrBook.create();
remoteAddrBook.setDbScheme(scheme);
return true;
}
catch (javax.naming.NamingException e)
{
}
catch (javax.ejb.CreateException e)
{
}
catch (java.rmi.RemoteException e)
{
}
return false;
}
public ActionForward executeAction(
ActionMapping mapping,
ActionForm form,
HttpServletRequest request,
HttpServletResponse response)
{
ActionForward myforward = null;
String myaction = mapping.getParameter();
UserSession us = (UserSession)
request.getSession().getAttribute(IAttrName.USER_SESSION);
scheme = us.getDbScheme();
if (isCancelled(request))
{
if (__log.isInfoEnabled())
{
__log.info(
" [ AddrBook ] "
+ mapping.getAttribute()
+ " - action was cancelled");
}
return mapping.findForward("cancel");
}
if (__log.isInfoEnabled())
{
__log.info(" [ AddrBook ] action: " + myaction);
}
if ("".equalsIgnoreCase(myaction))
{
myforward = mapping.findForward(FAILURE);
}
if (getEJB())
{
if ("VIEW".equalsIgnoreCase(myaction))
{
myforward = performView(mapping, form, request, response);
}
else if ("EDIT".equalsIgnoreCase(myaction))
{
myforward = performEdit(mapping, form, request, response);
}
else if ("ADD".equalsIgnoreCase(myaction))
{
myforward = performAdd(mapping, form, request, response);
}
else if ("SAVE".equalsIgnoreCase(myaction))
{
myforward = performSave(mapping, form, request, response);
}
else if ("REMOVE".equalsIgnoreCase(myaction))
{
myforward = performRemove(mapping, form, request, response);
}
else if ("TRASH".equalsIgnoreCase(myaction))
{
myforward = performTrash(mapping, form, request, response);
}
else if ("LIST".equalsIgnoreCase(myaction))
{
myforward = performList(mapping, form, request, response);
}
else if ("LISTMAILUSR".equalsIgnoreCase(myaction))
{
myforward = performListMailUser(mapping, form, request, response);
}
else
{
myforward = mapping.findForward(FAILURE);
}
}
else
{
myforward = mapping.findForward(IAttrName.FAILURE);
}
return myforward;
}
private ActionForward performList(
ActionMapping mapping,
ActionForm actionForm,
HttpServletRequest request,
HttpServletResponse response)
{
try
{
//System.out.println("***************** performList ****************");
int offset;
int length = PAGE_LENGTH;
String pageOffset = request.getParameter("pager.offset");
if (pageOffset == null || pageOffset.equals(""))
{
offset = 0;
}
else
{
offset = Integer.parseInt(pageOffset);
}
List AddrBookList = null;
String sUrlParam = "";
String sWhereClause = "";
if (request.getParameter("searchFld") != null
&& !request.getParameter("searchFld").equals(""))
{
String condition = request.getParameter("searchFld");
AddrBookList =
remoteAddrBook.getList(
offset,
length,
"%" + condition + "%");
sWhereClause =
"WHERE abid LIKE '%" + condition + "%' ";
sUrlParam = "?searchFld=" + condition;
}
else
AddrBookList = remoteAddrBook.getList(offset, length);
String[] objKeys = { "AddrBook", "list" };
String objKey = CacheManager.createKey(objKeys);
String url =
request.getContextPath()
+ "/intmsg"
+ mapping.getPath()
+ ".do"
+ sUrlParam;
Integer size = (Integer) SizeCacheManager.getCache(objKey);
if (size == null)
{
size =
new Integer(
remoteAddrBook.getSize(
"ams012_oat_addrbook",
sWhereClause));
SizeCacheManager.putCache(size, objKey, 0); //no cache
}
String pagerHeader =
Pager.generate(offset, size.intValue(), length, url);
request.setAttribute("pagerHeader", pagerHeader);
request.setAttribute("ADDRBOOKS", AddrBookList);
}
catch (Exception e)
{
generalError(request, e);
return mapping.findForward(FAILURE);
}
return mapping.findForward(SUCCESS);
}
private ActionForward performListMailUser(
ActionMapping mapping,
ActionForm actionForm,
HttpServletRequest request,
HttpServletResponse response)
{
try
{
//System.out.println("***************** performList ****************");
int offset;
int length = PAGE_LENGTH;
String pageOffset = request.getParameter("pager.offset");
if (pageOffset == null || pageOffset.equals(""))
{
offset = 0;
}
else
{
offset = Integer.parseInt(pageOffset);
}
List MailUserList = null;
String sUrlParam = "";
String sWhereClause = "and LG_STS='A' ";
String condition = "";
if (request.getParameter("searchFld") != null
&& !request.getParameter("searchFld").equals(""))
{
condition = request.getParameter("searchFld");
MailUserList =
remoteAddrBook.getListMailUser(
offset,
length,
"%" + condition + "%");
sWhereClause = "and abid LIKE '%" + condition + "%' ";
sUrlParam = "?searchFld=" + condition;
}
else
MailUserList = remoteAddrBook.getListMailUser(offset, length,
condition);
String[] objKeys = { "AddrBook", "list" };
String objKey = CacheManager.createKey(objKeys);
String url =
request.getContextPath()
+ "/intmsg"
+ mapping.getPath()
+ ".do"
+ sUrlParam;
Integer size = (Integer) SizeCacheManager.getCache(objKey);
if (size == null)
{
String sql = "SELECT COUNT(*) "+
"FROM "+scheme+".CTR004_LOGIN_ACCOUNT A, "+scheme+".CTR004_USER_INFO
B "+
"WHERE A.USR_ID=B.USR_ID(+) " + sWhereClause;
size = new Integer(remoteAddrBook.getSizeBySql(sql));
SizeCacheManager.putCache(size, objKey, 0); //no cache
}
String pagerHeader =
Pager.generate(offset, size.intValue(), length, url);
request.setAttribute("pagerHeader", pagerHeader);
request.setAttribute("MAILUSERS", MailUserList);
}
catch (Exception e)
{
generalError(request, e);
return mapping.findForward(FAILURE);
}
return mapping.findForward(SUCCESS);
}
private ActionForward performView(
ActionMapping mapping,
ActionForm actionForm,
HttpServletRequest request,
HttpServletResponse response)
{
AddrBookForm form = (AddrBookForm) actionForm;
try
{
String abid = (String) request.getParameter("abId");
AddrBook addrbook = remoteAddrBook.getRec(abid);
if (addrbook == null)
{
ActionErrors aes = new ActionErrors();
aes.add(
aes.GLOBAL_ERROR,
new ActionError("error.object.notfound", "AddrBook"));
saveErrors(request, aes);
if (__log.isErrorEnabled())
{
__log.error(" [ AddrBook ] Object not found");
}
}
else
{
org.apache.commons.beanutils.BeanUtils.populate(
form,
org.apache.commons.beanutils.BeanUtils.describe(addrbook));
}
}
catch (Exception e)
{
generalError(request, e);
return mapping.findForward(FAILURE);
}
return mapping.findForward(SUCCESS);
}
private ActionForward performSave(
ActionMapping mapping,
ActionForm actionForm,
HttpServletRequest request,
HttpServletResponse response)
{
System.out.println("Action, performSave IN");
AddrBookForm form = (AddrBookForm) actionForm;
try
{
AddrBook addrbook = new AddrBook();
org.apache.commons.beanutils.BeanUtils.populate(
addrbook,
org.apache.commons.beanutils.BeanUtils.describe(form));
UserSession usn =
(UserSession) request.getSession().getAttribute(
IAttrName.USER_SESSION);
int strutsAction = form.getStrutsAction();
if (strutsAction == AddrBookForm.ADD)
{
String abid = (String) remoteAddrBook.getNewKeyId("ADDRBOOKID");
if (remoteAddrBook.getRec(abid) == null)
{
addrbook.setAbId(abid);
addrbook.setAbCreDt(System.currentTimeMillis());
addrbook.setAbCreWho(usn.getUserId());
remoteAddrBook.addRec(addrbook);
}
else
{
sqlDuplicateError(request, "AddrBook");
return mapping.findForward(FAILURE);
}
}
else if (strutsAction == AddrBookForm.EDIT)
{
remoteAddrBook.modRec(addrbook);
}
}
catch (Exception e)
{
generalError(request, e);
return mapping.findForward(FAILURE);
}
return mapping.findForward(SUCCESS);
}
private ActionForward performEdit(
ActionMapping mapping,
ActionForm actionForm,
HttpServletRequest request,
HttpServletResponse response)
{
AddrBookForm form = (AddrBookForm) actionForm;
form.setStrutsAction(AddrBookForm.EDIT);
try
{
String abid = (String) request.getParameter("abId");
AddrBook addrbook = remoteAddrBook.getRec(abid);
org.apache.commons.beanutils.BeanUtils.populate(
form,
org.apache.commons.beanutils.BeanUtils.describe(addrbook));
}
catch (Exception e)
{
generalError(request, e);
return mapping.findForward(FAILURE);
}
return mapping.findForward(SUCCESS);
}
private ActionForward performAdd(
ActionMapping mapping,
ActionForm actionForm,
HttpServletRequest request,
HttpServletResponse response)
{
AddrBookForm form = (AddrBookForm) actionForm;
form.setStrutsAction(AddrBookForm.ADD);
return mapping.findForward(SUCCESS);
}
private ActionForward performRemove(
ActionMapping mapping,
ActionForm actionForm,
HttpServletRequest request,
HttpServletResponse response)
{
return performView(mapping, actionForm, request, response);
}
private ActionForward performTrash(
ActionMapping mapping,
ActionForm actionForm,
HttpServletRequest request,
HttpServletResponse response)
{
AddrBookForm form = (AddrBookForm) actionForm;
try
{
String abid = (String) request.getParameter("abId");
PKAddrBook pkAddrBook = new PKAddrBook(abid, scheme);
remoteAddrBook.delRec(pkAddrBook);
}
catch (Exception e)
{
generalError(request, e);
return mapping.findForward(FAILURE);
}
return mapping.findForward(SUCCESS);
}
}
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]