I tried ommitting that global forward, but then /alert was not found and I got a 404 error.
What should I have done/do?



From: "James Mitchell" <[EMAIL PROTECTED]>
Reply-To: "Struts Users Mailing List" <[EMAIL PROTECTED]>
To: "Struts Users Mailing List" <[EMAIL PROTECTED]>
Subject: Re: URGENT: javax.servlet.ServletException: BeanUtils.populate
Date: Thu, 29 May 2003 14:43:08 -0400

One other thing I noticed, you've got a potential circular reference in
/alert by specifying the input as /alert.do.

--
James Mitchell
Software Developer/Struts Evangelist
http://www.open-tools.org



----- Original Message -----
From: "Mick Knutson" <[EMAIL PROTECTED]>
To: <[EMAIL PROTECTED]>
Sent: Thursday, May 29, 2003 2:26 PM
Subject: URGENT: javax.servlet.ServletException: BeanUtils.populate


> I have an error that I have been working on for 3 solid days. i have
> searched the archives, but can't find my issue resolved anywhere.
> I have an array of objects (ContactDto[]) that I need to display. I
actually
> have the full list I send in (userContacts), and the list of objects
> selected in the alertForm (alertContacts).
> I can display the form for an initial addAlert() just fine. I have not
> gotten any further.
> I do not seem t even get to my add() method ever. And even if I turn the
log
> level to debug, I do not seem to get any more information on the
stacktrace.
>
> Please help me on this as I am very frustrated and confused.
>
>
> StackTrace for alertForm Load, and then submission:
> ==========================================
> 10:59:25,965 INFO [AlertActions] userContacts[] length: 3
> 10:59:25,975 INFO [AlertActions]
> ======================================================================
> 10:59:25,975 INFO [AlertActions] Must be a new alert then....
> 10:59:25,985 INFO [AlertActions]
> ======================================================================
> 10:59:25,985 INFO [AlertActions] alertDto: {alertId= userId=1 subject=
> startDate=null reoccurring= gracePeriodDays= gracePeriodHours=
> endingDate=Thu May 29 10:59:24 CEST 2003 startingLocation=null
> endingLocation=null status= safeConfirm= details= noteToContactees=}
> 10:59:25,995 INFO [AlertActions]
> ======================================================================
> 10:59:45,944 INFO [PropertyMessageResources] Initializing,
> config='org.apache.struts.taglib.html.LocalStrings', returnNull=true
> 10:59:45,944 INFO [PropertyMessageResources] Initializing,
> config='org.apache.struts.taglib.html.LocalStrings', returnNull=true
> 10:59:45,954 INFO [PropertyMessageResources] Initializing,
> config='org.apache.struts.taglib.html.LocalStrings', returnNull=true
> 10:59:45,954 INFO [PropertyMessageResources] Initializing,
> config='org.apache.struts.taglib.html.LocalStrings', returnNull=true
> 10:59:45,984 INFO [PropertyMessageResources] Initializing,
> config='org.apache.struts.taglib.html.LocalStrings', returnNull=true
> 11:00:55,504 INFO [SecurityContextFilter] processing request /alert.do
> 11:00:55,544 ERROR [SecurityContextFilter] Exception
> javax.servlet.ServletException: BeanUtils.populate
> at
> org.apache.struts.util.RequestUtils.populate(RequestUtils.java:1098)
> at
>
org.apache.struts.action.RequestProcessor.processPopulate(RequestProcessor.j
ava:816)
> at
>
org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:254)
> at
> org.apache.struts.action.ActionServlet.process(ActionServlet.java:1420)
> at
>
com.baselogic.yoursos.struts.ExtendedActionServlet.process(ExtendedActionSer
vlet.java:53)
> 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.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:360)
> at
>
org.mortbay.jetty.servlet.WebApplicationHandler$Chain.doFilter(WebApplicatio
nHandler.java:342)
> at
>
com.baselogic.yoursos.security.SecurityContextFilter.doFilter(SecurityContex
tFilter.java:102)
> at
>
org.mortbay.jetty.servlet.WebApplicationHandler$Chain.doFilter(WebApplicatio
nHandler.java:334)
> at
>
com.baselogic.yoursos.user.UserPreferenceFilter.doFilter(UserPreferenceFilte
r.java:46)
> at
>
org.mortbay.jetty.servlet.WebApplicationHandler$Chain.doFilter(WebApplicatio
nHandler.java:334)
> at
>
org.mortbay.jetty.servlet.WebApplicationHandler.dispatch(WebApplicationHandl
er.java:286)
> at
> org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:558)
> at org.mortbay.http.HttpContext.handle(HttpContext.java:1714)
> at
>
org.mortbay.jetty.servlet.WebApplicationContext.handle(WebApplicationContext
.java:507)
> at org.mortbay.http.HttpContext.handle(HttpContext.java:1664)
> at org.mortbay.http.HttpServer.service(HttpServer.java:863)
> at org.jboss.jetty.Jetty.service(Jetty.java:460)
> at
org.mortbay.http.HttpConnection.service(HttpConnection.java:775)
> at
> org.mortbay.http.HttpConnection.handleNext(HttpConnection.java:939)
> at org.mortbay.http.HttpConnection.handle(HttpConnection.java:792)
> at
> org.mortbay.http.SocketListener.handleConnection(SocketListener.java:201)
> at org.mortbay.util.ThreadedServer.handle(ThreadedServer.java:289)
> at org.mortbay.util.ThreadPool$PoolThread.run(ThreadPool.java:455)
>
>
> alertActions.java::add(...): (LookupDispatchAction)
> =========================
> public ActionForward add( ActionMapping mapping
> , ActionForm form
> , HttpServletRequest request
> , HttpServletResponse response
> )
> throws Exception
> {
> log.info( "Process a alert update()" );
>
> if( log.isInfoEnabled() )
> {
> log.info( "==========" );
> log.info( "form: " + form.toString() );
> log.info( "==========" );
> }
>
>
> struts-config.xml mappings:
> ======================
> <form-bean name="alertForm"
> dynamic="true"
> type="org.apache.struts.validator.DynaValidatorForm">
> <form-property name="alertId" type="java.lang.String" />
> <form-property name="userId" type="java.lang.Long" />
>
> <form-property name="subject" type="java.lang.String" />
> <form-property name="startingDate" type="java.util.Date" />
> <form-property name="reoccurring" type="java.lang.String" />
> <form-property name="gracePeriodDays" type="java.lang.String"
/>
> <form-property name="gracePeriodHours" type="java.lang.String"
> />
> <form-property name="endingDate" type="java.util.Date" />
>
> <form-property name="status" type="java.lang.String" />
> <form-property name="safeConfirm" type="java.lang.String" />
> <form-property name="details" type="java.lang.String" />
> <form-property name="noteToContactees" type="java.lang.String"
> />
>
> <form-property name="alertContacts" type="java.lang.String[]"
/>
> <form-property name="userContacts"
> type="com.baselogic.yoursos.contact.ContactDto[]" />
> <!--<form-property name="userContacts"
> type="com.baselogic.yoursos.contact.ContactDto[]" />-->
> <!--<form-property name="alertLocations"
> type="com.baselogic.yoursos.location.LocationDto[]" />-->
> </form-bean>
>
> <forward name="alertAdd" path="/alert.do" />
>
> <action path="/alert"
> input="/alert.do"
> name="alertForm"
> parameter="action"
> scope="request"
> type="com.baselogic.yoursos.alert.AlertActions"
> validate="true"
> >
> <forward name="success" path="/alertList.do" redirect="true" />
> <forward name="error" path=".error" redirect="true" />
> <forward name="add" path=".alertAdd" redirect="true" />
> <forward name="edit" path=".alertEdit" redirect="true" />
> <forward name="view" path=".alertView" redirect="true" />
> </action>
>
>
>
>
>
> alert.jsp:
> =========================
> <%@ page contentType="text/html; charset=utf-8" %>
> <%@ page language="java" %>
> <%@ taglib uri="/WEB-INF/struts-html.tld" prefix="html" %>
> <%@ taglib uri="/WEB-INF/struts-bean.tld" prefix="bean" %>
> <%@ taglib uri="/WEB-INF/struts-logic.tld" prefix="logic" %>
> <%@ taglib uri="/WEB-INF/c.tld" prefix="c" %>
>
> <html:form action="/alert">
>
> <html:hidden property="alertId" />
>
> <table width="100%" border="1" cellspacing="1" cellpadding="1">
> <tr bgcolor="#9966FF">
> <td height="2" colspan="2">
> <img src="/images/spacer.gif" width="8" height="8" alt="" border="0">
> Alert Details
> </td>
> </tr>
> <tr>
> <td><bean:message key="alert.subject"/></td>
> <td><html:text property="subject" size="32" maxlength="32" /></td>
> </tr>
> <tr>
> <td>&nbsp;</td>
> <td>&nbsp;</td>
> </tr>
> <tr bgcolor="#9966FF">
> <td height="2" colspan="2">
> <img src="/images/spacer.gif" width="8" height="8" alt=""
> border="0">Rotations
> </td>
> </tr>
> <tr>
> <td><bean:message key="alert.startDate"/></td>
> <td><html:text property="startingDate" size="32" maxlength="32"
/></td>
> </tr>
> <tr>
> <td><bean:message key="alert.reoccurring"/></td>
> <td>
> <html:select property="reoccurring">
> <html:option value = "" key="form.select"/>
> <html:option value = "1" key="Every Day"/>
> <html:option value = "2" key="Every 2 Days"/>
> <html:option value = "3" key="Every 3 Days"/>
> <html:option value = "4" key="Every 4 Days"/>
> <html:option value = "5" key="Every 5 Days"/>
> <html:option value = "6" key="Every 6 Days"/>
> <html:option value = "7" key="Every Week"/>
> <html:option value = "14" key="Every 2 Weeks"/>
> <html:option value = "30" key="Every Month"/>
> </html:select>
> </td>
> </tr>
> <tr>
> <td><bean:message key="alert.gracePeriodDays"/></td>
> <td>
> <html:select property="gracePeriodDays">
> <html:option value = "1" key="1 Day"/>
> <html:option value = "2" key="2 Day"/>
> <html:option value = "3" key="3 Day"/>
> <html:option value = "4" key="4 Day"/>
> <html:option value = "5" key="5 Day"/>
> <html:option value = "6" key="6 Day"/>
> </html:select>
> </td>
> </tr>
> <tr>
> <td><bean:message key="alert.gracePeriodHours"/></td>
> <td>
> <html:select property="gracePeriodHours">
> <html:option value = "" key="form.select"/>
> <html:option value = "1" key="1 Hour"/>
> <html:option value = "2" key="2 Hour"/>
> <html:option value = "3" key="3 Hour"/>
> <html:option value = "4" key="4 Hour"/>
> <html:option value = "5" key="5 Hour"/>
> <html:option value = "6" key="6 Hour"/>
> <html:option value = "7" key="7 Hour"/>
> <html:option value = "8" key="8 Hour"/>
> <html:option value = "9" key="9 Hour"/>
> <html:option value = "10" key="10 Hour"/>
> <html:option value = "11" key="11 Hour"/>
> <html:option value = "12" key="12 Hour"/>
> <html:option value = "13" key="13 Hour"/>
> <html:option value = "14" key="14 Hour"/>
> <html:option value = "15" key="15 Hour"/>
> <html:option value = "16" key="16 Hour"/>
> <html:option value = "17" key="17 Hour"/>
> <html:option value = "18" key="18 Hour"/>
> <html:option value = "19" key="19 Hour"/>
> <html:option value = "20" key="20 Hour"/>
> <html:option value = "21" key="21 Hour"/>
> <html:option value = "22" key="22 Hour"/>
> <html:option value = "23" key="23 Hour"/>
> </html:select>
> </td>
> </tr>
> <tr>
> <td><bean:message key="alert.endingDate"/></td>
> <td><html:text property="endingDate" size="32" maxlength="32" /></td>
> </tr>
> <tr>
> <td>&nbsp;</td>
> <td>&nbsp;</td>
> </tr>
>
> <tr bgcolor="#9966FF">
> <td height="2" colspan="2"> <img src="/images/spacer.gif" width="8"
> height="8" alt="" border="0">
> Starting Location
> </td>
> </tr>
> <tr>
> <td><bean:message key="alert.starting.location"/></td>
> <td>
> Starting Location select
> </td>
> </tr>
> <tr>
> <td>&nbsp;</td>
> <td>&nbsp;</td>
> </tr>
>
> <tr bgcolor="#9966FF">
> <td height="2" colspan="2"> <img src="/images/spacer.gif" width="8"
> height="8" alt="" border="0">
> Ending Location </td>
> </tr>
> <tr>
> <td><bean:message key="alert.ending.location"/></td>
> <td>
> Ending Location select
> </td>
> </tr>
> <tr>
> <td>&nbsp;</td>
> <td>&nbsp;</td>
> </tr>
>
> <tr bgcolor="#9966FF">
> <td width="7" height="2" colspan="5">
> <img src="/images/spacer.gif" height="8" alt="" border="0">Alert
> Preferences
> </td>
> </tr>
> <tr>
> <td><bean:message key="alert.status"/>&nbsp;</td>
> <td>
> <html:select property="status">
> <html:option value = "" key="form.select"/>
> <html:option value = "active" key="Active"/>
> <html:option value = "pending" key="Pending"/>
> <html:option value = "cancelled" key="Cancelled"/>
> </html:select>
> </td>
> </tr>
> <tr>
> <td><bean:message key="alert.safeConfirm"/>&nbsp;</td>
> <td>
> <html:select property="safeConfirm">
> <html:option value = "" key="form.select"/>
> <html:option value = "finish" key="On finish date"/>
> <html:option value = "reaccur" key="Each Re-Accurence"/>
> <html:option value = "never" key="Never"/>
> </html:select>
> </td>
> </tr>
> <tr>
> <td><bean:message key="alert.contacts"/></td>
> <td colspan="2">
> <html : select property="userContacts" multiple="true" >
> < html : optionsCollection property="userContacts"
> value="contactId"
> label="firstName" />
> </ html : select>
> </td>
> </tr>
> <tr>
> <td><bean:message key="alert.details"/></td>
> <td colspan="2">
> <html:textarea property="details" rows="7" />
> </td>
> </tr>
> <tr>
> <td><bean:message key="alert.noteToContactees"/></td>
> <td colspan="2">
> <html:textarea property="noteToContactees" rows="7" />
> </td>
> </tr>
> <tr>
> <td height="2" colspan="4">
> <img src="/images/spacer.gif" height="8" alt="" border="0">
> <html:submit property="action">
> <bean:message key="button.add"/>
> </html:submit>
> </td>
> </tr>
> <tr bgcolor="#9966FF">
> <td height="2" colspan="2">
> <img src="/images/spacer.gif" width="8" height="8" alt="" border="0">
> </td>
> </tr>
> </table>
> </html:form>
>
> ==================================================
>
> Thanks in advance for you help!
>
> Mick knutson
>
> _________________________________________________________________
> Add photos to your e-mail with MSN 8. Get 2 months FREE*.
> http://join.msn.com/?page=features/featuredemail
>
>
> ---------------------------------------------------------------------
> 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]


_________________________________________________________________
Add photos to your e-mail with MSN 8. Get 2 months FREE*. http://join.msn.com/?page=features/featuredemail



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



Reply via email to