All,

I have been strugling with this for a while.  I looked at the archive and found 
similar questions but no answers there.

I have a form that has two fields - a bean and a String field.
My jsp displays the two fields.  I was able to get to the JSP by calling 
ssoXref.do?operation=showSsoXref.  But when I click on look up button on the page.  It 
throws the exception --javax.servlet.ServletException: BeanUtils.populate.  

My action and struts-config are attached below.  THANKS FOR ANY INSIGHT ON THIS...  
Charlene
<action path="/ssoXref" parameter="operation" type="com.tl.tln.action.SsoXrefAction" 
name="ssoXrefForm" input="/ssoXrefEdit.jsp" scope="session">      
      <forward name="showSsoXref" path="/ssoXrefEdit.jsp"/>
    </action>
=========================================================
public class SsoXrefForm extends TlnActionForm
{
  private TlnSsoXref tlnSsoXref = new TlnSsoXref();

  private String searchSwbId = "";

  public String getSearchSwbId()
  {
    return searchSwbId;
  }

  public void setSearchSwbId(String newSearchSwbId)
  {
    searchSwbId = newSearchSwbId;
  }

  public TlnSsoXref getTlnSsoXref()
  {
    return tlnSsoXref;
  }

  public void setTlnSsoXref(TlnSsoXref newTlnSsoXref)
  {
    tlnSsoXref = newTlnSsoXref;
  }
}
========================================================
<%@ taglib uri="/WEB-INF/struts-html.tld" prefix="html" %>
<%@ include file="/include/incPageStart.jsp" %>
<bean:define id="crumbName" type="java.lang.String" name="ssoXrefForm" 
property="crumbName" />
<bean:define id="crumbID" type="java.lang.String" name="ssoXrefForm" 
property="crumbID" />
<bean:define id="crumbAction" type="java.lang.String" name="ssoXrefForm" 
property="crumbAction" />
<html>
<head>
<meta http-equiv="Content-Language" content="en-us">
<meta http-equiv="content-type" content="text/html;charset=iso-8859-1">
<title><%=crumbName%></title>
<link rel="stylesheet" type="text/css" href="includes/styles.css">

<script language="Javascript" src="includes/floating-toolbar.js" 
type="text/javascript"></script>
<script language="Javascript" type="text/javascript">
function handleSubmit(action) {
    document.forms[0].operation.value=action;
    alert("operation is " + document.forms[0].operation.value);
    return true;
  }
</script>
<base target="contents">
</head>

<body onload="setFocus()">
<html:form method="post" action="/ssoXref.do">
<input type="hidden" name="operation" value="" />

<div id="taskarea">
        <div class="breadcrumb">
          <bc:breadcrumb showCrumbs="true"
            crumbAction="<%=crumbAction%>"
            crumbName="<%=crumbName%>"
            crumbID="<%=crumbID%>" />
        </div>
        <div class="taskbar" align="right">
        </div>
</div>
<div id="taskareaspacer">
</div>
<html:errors/>
<table cellpadding="0" cellspacing="0" border="0" width="100%">
<tr>
        <td width="20"><img src="images/spacer.gif" height="1" width="20" alt="" 
border="0"></td>
        <td width="100%">
                <!-- Content Begin -->
        <table cellpadding="0" cellspacing="0" border="0">
        <tr>
                <td colspan="3"><img class="field-divider" alt="" src="" /></td>
        </tr>
    <tr class="columnheadings">
          <td colspan=3><span class="resultstitle"><%=crumbName%></span></td>
    </tr>
        <tr>
                <td colspan="3"><img class="field-divider" src="" alt="" /></td>
        </tr>  
        <tr>
                <td class="field-name" width="20%">Swb ID:&nbsp;*</td>
                <td class="vdivider" width="1" ><img class="spacer" src="" alt="" 
/></td>
                <td class="field-text" width="80%">
                <html:text name="ssoXrefForm" property="searchSwbId" size="54" 
maxlength="200" />                 
    &nbsp;&nbsp;&nbsp; <div class="actions"><input type="submit" name="action" 
value="Look up" onClick="javascript:handleSubmit('lookup');"></div></td>
        </tr>
  <tr>
                <td colspan="3"><html:errors/></td>
        </tr>  
        <tr>
                <td class="field-name" width="20%">Swb ID:&nbsp;*</td>
                <td class="vdivider" width="1" ><img class="spacer" src="" alt="" 
/></td>
                <td class="field-text" width="80%">
    
                        <html:text name="ssoXrefForm" property="tlnSsoXref.swbId" 
size="54" maxlength="200" />
                </td>
        </tr>
  <tr>
                <td colspan="3"><img class="field-divider" src="" alt="" /></td>
        </tr>
        <tr>
                <td class="field-name" width="20%" valign="top">Auth Class:&nbsp;*</td>
                <td class="vdivider" width="1" ><img class="spacer" src="" alt="" 
/></td>
                <td class="field-text" width="80%"><html:text name="ssoXrefForm" 
property="tlnSsoXref.authClass" size="54"/></td>
        </tr>
  <tr>
                <td colspan="3"><img class="field-divider" src="" alt="" /></td>
        </tr>
  <tr>
                <td class="field-name" width="20%" valign="top">Expiration 
Date:&nbsp;*</td>
                <td class="vdivider" width="1" ><img class="spacer" src="" alt="" 
/></td>
                <td class="field-text" width="80%"><html:text name="ssoXrefForm" 
property="tlnSsoXref.expirationDt" size="54"/></td>
        </tr>
        <tr>
                <td colspan="3"><img class="field-divider" src="" alt="" /></td>
        </tr>
  <tr>
                <td class="field-name" width="20%" valign="top">Maintained 
By:&nbsp;*</td>
                <td class="vdivider" width="1" ><img class="spacer" src="" alt="" 
/></td>
                <td class="field-text" width="80%"><html:text name="ssoXrefForm" 
property="tlnSsoXref.maintainedBy" size="54"/></td>
        </tr>
        <tr>
                <td class="actions" colspan="3">
                        <input type="submit" name="action" value="Reset" 
onClick="javascript:handleSubmit('reset');"> 
                        <input type="submit" name="action" value="Save" 
onClick="javascript:handleSubmit('store');"> 
      <input type="submit" name="action" value="Delete" 
onClick="javascript:handleSubmit('delete');">
                </td>
        </tr>
        </table>
                <!-- Content End -->
        </td>
        <td width="20"><img src="images/spacer.gif" height="1" width="20" alt="" 
border="0"></td>
</tr>
</table>

</html:form>
<%@ include file="/include/incPageEnd.jsp" %>
</body>

</html>
=====================================================

public class SsoXrefAction extends TlnAction
{
  private DateFormat formatter = 
DateFormat.getDateInstance(java.text.DateFormat.MEDIUM);
  
  public SsoXrefAction()
  {
  }

  public ActionForward showSsoXref(ActionMapping mapping,
                                 ActionForm form,
                                 HttpServletRequest request,
                                 HttpServletResponse response) {
         System.out.println("Inside showSsoXref");
    SsoXrefForm ssoXrefForm = (SsoXrefForm) form;
    return mapping.findForward("showSsoXref");
      
   }

   public ActionForward lookup(ActionMapping mapping,
                        ActionForm form,
                        HttpServletRequest request,
                        HttpServletResponse response)
        {    
    System.out.println("Am I here?");
                SsoXrefForm ssoXrefForm = (SsoXrefForm) form;
                try
                {
                        TlnSsoXref tlnSsoXref = 
getTlnSsoXref(ssoXrefForm.getSearchSwbId(), "");
                        if(tlnSsoXref != null) {
                                ssoXrefForm.setTlnSsoXref(tlnSsoXref);
                        } else {
                                ssoXrefForm.setTlnSsoXref(new TlnSsoXref());
                                setErrors(request, "error.ssoXref.norFound"); 
                        }    

                } catch (Throwable t) {
                        t.printStackTrace();
                        return mapping.findForward("error");
                }
                return mapping.findForward("lookupSsoXref");
        }

  private TlnSsoXref getTlnSsoXref(String swbId, String customerId)
                throws Throwable
        {
                TlnSsoXref tlnSsoXref = null;;
                Criteria criteria = new Criteria();
                criteria.addEqualTo("swbId", swbId);
    criteria.addEqualTo("customerId", customerId);
                Query query = QueryFactory.newQuery(TlnSsoXref.class, criteria);
                try
                {
                        PersistenceBroker broker = getBroker();
                        tlnSsoXref = (TlnSsoXref)broker.getObjectByQuery(query);
                } catch (Throwable t) {
                        throw t;
                }
                return tlnSsoXref;
        }

  private void setErrors(HttpServletRequest request, String err) {
    ActionErrors errors = new ActionErrors();
    errors.add(ActionErrors.GLOBAL_ERROR, new ActionError(err));
    saveErrors(request, errors);
  }
}
=========================================================================
javax.servlet.ServletException: BeanUtils.populate
at org.apache.struts.util.RequestUtils.populate(RequestUtils.java:1098)
at org.apache.struts.action.RequestProcessor.processPopulate(RequestProcessor.java:816)
at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:254)
at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1420)
at 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.internalDoFilter(ApplicationFilterChain.java:247)
at 
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:193)
at com.tl.tln.servlet.LoginFilter.doFilter(LoginFilter.java:49)
at 
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:213)
at 
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:193)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:243)
at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:566)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:472)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:190)
at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:566)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:472)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943)
at org.apache.catalina.core.StandardContext.invoke(StandardContext.java:2347)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:180)
at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:566)
at 
org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherValve.java:170)
at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:564)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:170)
at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:564)
at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:468)
at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:564)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:472)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:174)
at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:566)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:472)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943)
at org.apache.catalina.connector.http.HttpProcessor.process(HttpProcessor.java:1027)
at org.apache.catalina.connector.http.HttpProcessor.run(HttpProcessor.java:1125)
at java.lang.Thread.run(Thread.java:484)

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

Reply via email to