Yes, you would have to change all references in any class. -----Original Message----- From: Mick Knutson [mailto:[EMAIL PROTECTED] Sent: Saturday, May 31, 2003 1:25 PM To: [EMAIL PROTECTED] Subject: RE: DateUtilities for ActionForms?
I will try that, but would I also have to change my ValueObject as well from java.util.Date to java.sql.Date? Because I _did_ try this with both the VO and the DF as java.sql.Date, and I got the same error: "BeanUtils.populate" When I submitted the form. --- Thanks... Mick Knutson --- >From: "Mark Galbreath" <[EMAIL PROTECTED]> >Reply-To: "Struts Users Mailing List" <[EMAIL PROTECTED]> >To: "'Struts Users Mailing List'" <[EMAIL PROTECTED]> >Subject: RE: DateUtilities for ActionForms? >Date: Sat, 31 May 2003 13:07:43 -0400 > >try changing > ><form-property name="endingDate" type="java.util.Date" /> > >to > ><form-property name="endingDate" type="java.sql.Date" /> > >Mark > >-----Original Message----- >From: Mick Knutson [mailto:[EMAIL PROTECTED] >Sent: Saturday, May 31, 2003 12:35 PM >To: [EMAIL PROTECTED] >Subject: RE: DateUtilities for ActionForms? > > >Here is my JSP: >================ > <tr> > <td><bean:message key="alert.endingDate"/></td> > <td><html:text property="endingDate" size="32" maxlength="32" >/></td> > </tr> > >My DynaForm declaration: >-======================= > <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> > > >My Action Declaration: >======================= > <action path="/alert" > input="/alertList.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> > > >My AlertActions.java default method: ==================================== > public ActionForward defaultMethod( ActionMapping mapping > , ActionForm form > , HttpServletRequest request > , HttpServletResponse response > ) > throws AlertNotFoundException, Exception > { > log.info( "Process a AlertActions.defaultMethod()" ); > > //IUserServices usd = this.getUserService(); > > AlertDto alertDto = new AlertDto(); > > //form = setFormDatesToDate( form ); > BeanUtils.copyProperties( alertDto, form ); > > UserDto userDto = this.getUserService().findUser( >getUserContainer( >request ).getUserLightDto().getUserId() ); > ContactDto[] userContacts = userDto.getUserContacts(); > > log.info( "userContacts[] length: " + userContacts.length ); > > if( alertDto.getAlertId().equals( "" ) ) > { > // Must be a new alert then.... > log.info( "Must be a new alert then...." ); > alertDto.setUserId( userDto.getUserId() ); > log.info( "alertDto: " + alertDto.toString() ); > > ( ( DynaActionForm ) form ).set( >Constants.USER_CONTACTS_KEY, userContacts ); > BeanUtils.copyProperties( form, alertDto ); > //form = setFormDatesToString( form ); > > return ( mapping.findForward( Constants.ADD_FWD ) ); > } > > log.info( "Must be an existing alert then...." ); > > // Get the required AlertDto... > alertDto = this.getAlertService().findAlert( >alertDto.getAlertId() ); > > // Do we need to re-set the 2 dates from Dates, into Strings here? > BeanUtils.copyProperties( form, alertDto ); > > // We need to add the String[] object from our ContactDto[] > > return ( mapping.findForward( Constants.VIEW_FWD ) ); > } > > >My AlertActions.java add method: ==================================== > public ActionForward add( ActionMapping mapping > , ActionForm form > , HttpServletRequest request > , HttpServletResponse response > ) > throws Exception > { > try > { > if( log.isInfoEnabled() ) > { > log.info( "Process a alert add(...)" ); > log.info( "alertForm::add(): " + form.toString() ); > } > > IAlertServices asd = this.getAlertService(); > > UserLightDto userlightDto = getUserContainer( request >).getUserLightDto(); > > // We are forced to take a String as a Date, then reformat >it >to > >a Date when we add or modify it. > form = setFormDatesToDate( form ); > > AlertDto alertDto = new AlertDto(); > BeanUtils.copyProperties( alertDto, form ); > > if( log.isInfoEnabled() ) > { > log.info( "alertUpdate.dto: " + alertDto.toString() ); > } > > if( alertDto.getAlertId().equals( "" ) ) > { > // Must be a new alert then....add it > log.info( "Must be a new alert then....Add it" ); > > // First we need to create the ContactDto objects from >our String[] > String[] alertContacts = (String[])( (DynaActionForm) >form ).get( Constants.ALERT_CONTACTS_KEY ); > > // We first have to create the alert. Then, only after >creation, can we add the contacts. > alertDto = asd.alertCreate( alertDto ); > > log.info( "String[] alertContacts length: " + >alertContacts.length ); > setAlertContactsFromForm( alertDto, alertContacts ); > alertDto = asd.alertUpdate( alertDto ); > return ( mapping.findForward( Constants.SUCCESS_FWD ) ); > } > > // Forward control to the specified success URI > return ( mapping.findForward( Constants.SUCCESS_FWD ) ); > } > catch( Exception e ) > { > log.error( "Exception adding alert; " + e.getMessage(), e ); > throw e; > } > } > > > >My XDoclet Generated ValueObject: =================================== >/* >* Generated file - Do not edit! >*/ >package com.baselogic.yoursos.alert; > >import java.util.*; > >/** >* Value object for Alert. >* >* @xdoclet-generated at 31-05-03 >* @copyright YourSOS >* @author mknutson >* @version xxx >*/ >public class AlertDto > extends java.lang.Object > implements java.io.Serializable >{ > private java.lang.String alertId; > private boolean alertIdHasBeenSet = false; > private java.lang.Long userId; > private boolean userIdHasBeenSet = false; > private java.lang.String subject; > private boolean subjectHasBeenSet = false; > private java.util.Date startDate; > private boolean startDateHasBeenSet = false; > private java.lang.String reoccurring; > private boolean reoccurringHasBeenSet = false; > private java.lang.String gracePeriodDays; > private boolean gracePeriodDaysHasBeenSet = false; > private java.lang.String gracePeriodHours; > private boolean gracePeriodHoursHasBeenSet = false; > private java.util.Date endingDate; > private boolean endingDateHasBeenSet = false; > private java.lang.String startingLocation; > private boolean startingLocationHasBeenSet = false; > private java.lang.String endingLocation; > private boolean endingLocationHasBeenSet = false; > private java.lang.String status; > private boolean statusHasBeenSet = false; > private java.lang.String safeConfirm; > private boolean safeConfirmHasBeenSet = false; > private java.lang.String details; > private boolean detailsHasBeenSet = false; > private java.lang.String noteToContactees; > private boolean noteToContacteesHasBeenSet = false; > private Collection Contacts = new java.util.ArrayList(); > private Collection Locations = new java.util.ArrayList(); > > private java.lang.String pk; > > public AlertDto() > { > } > > public AlertDto( java.lang.String alertId,java.lang.Long >userId,java.lang.String subject,java.util.Date >startDate,java.lang.String reoccurring,java.lang.String >gracePeriodDays,java.lang.String gracePeriodHours,java.util.Date >endingDate,java.lang.String startingLocation,java.lang.String >endingLocation,java.lang.String status,java.lang.String >safeConfirm,java.lang.String details,java.lang.String noteToContactees ) > { > this.alertId = alertId; > alertIdHasBeenSet = true; > this.userId = userId; > userIdHasBeenSet = true; > this.subject = subject; > subjectHasBeenSet = true; > this.startDate = startDate; > startDateHasBeenSet = true; > this.reoccurring = reoccurring; > reoccurringHasBeenSet = true; > this.gracePeriodDays = gracePeriodDays; > gracePeriodDaysHasBeenSet = true; > this.gracePeriodHours = gracePeriodHours; > gracePeriodHoursHasBeenSet = true; > this.endingDate = endingDate; > endingDateHasBeenSet = true; > this.startingLocation = startingLocation; > startingLocationHasBeenSet = true; > this.endingLocation = endingLocation; > endingLocationHasBeenSet = true; > this.status = status; > statusHasBeenSet = true; > this.safeConfirm = safeConfirm; > safeConfirmHasBeenSet = true; > this.details = details; > detailsHasBeenSet = true; > this.noteToContactees = noteToContactees; > noteToContacteesHasBeenSet = true; > pk = this.getAlertId(); > } > > //TODO Cloneable is better than this ! > public AlertDto( AlertDto otherValue ) > { > this.alertId = otherValue.alertId; > alertIdHasBeenSet = true; > this.userId = otherValue.userId; > userIdHasBeenSet = true; > this.subject = otherValue.subject; > subjectHasBeenSet = true; > this.startDate = otherValue.startDate; > startDateHasBeenSet = true; > this.reoccurring = otherValue.reoccurring; > reoccurringHasBeenSet = true; > this.gracePeriodDays = otherValue.gracePeriodDays; > gracePeriodDaysHasBeenSet = true; > this.gracePeriodHours = otherValue.gracePeriodHours; > gracePeriodHoursHasBeenSet = true; > this.endingDate = otherValue.endingDate; > endingDateHasBeenSet = true; > this.startingLocation = otherValue.startingLocation; > startingLocationHasBeenSet = true; > this.endingLocation = otherValue.endingLocation; > endingLocationHasBeenSet = true; > this.status = otherValue.status; > statusHasBeenSet = true; > this.safeConfirm = otherValue.safeConfirm; > safeConfirmHasBeenSet = true; > this.details = otherValue.details; > detailsHasBeenSet = true; > this.noteToContactees = otherValue.noteToContactees; > noteToContacteesHasBeenSet = true; > // TODO Clone is better no ? > this.Contacts = otherValue.Contacts; > // TODO Clone is better no ? > this.Locations = otherValue.Locations; > > pk = this.getAlertId(); > } > > public java.lang.String getPrimaryKey() > { > return pk; > } > > public void setPrimaryKey( java.lang.String pk ) > { > // it's also nice to update PK object - just in case > // somebody would ask for it later... > this.pk = pk; > setAlertId( pk ); > } > > public java.lang.String getAlertId() > { > return this.alertId; > } > > public void setAlertId( java.lang.String alertId ) > { > this.alertId = alertId; > alertIdHasBeenSet = true; > > pk = alertId; > } > > public boolean alertIdHasBeenSet(){ > return alertIdHasBeenSet; > } > public java.lang.Long getUserId() > { > return this.userId; > } > > public void setUserId( java.lang.Long userId ) > { > this.userId = userId; > userIdHasBeenSet = true; > > } > > public boolean userIdHasBeenSet(){ > return userIdHasBeenSet; > } > public java.lang.String getSubject() > { > return this.subject; > } > > public void setSubject( java.lang.String subject ) > { > this.subject = subject; > subjectHasBeenSet = true; > > } > > public boolean subjectHasBeenSet(){ > return subjectHasBeenSet; > } > public java.util.Date getStartDate() > { > return this.startDate; > } > > public void setStartDate( java.util.Date startDate ) > { > this.startDate = startDate; > startDateHasBeenSet = true; > > } > > public boolean startDateHasBeenSet(){ > return startDateHasBeenSet; > } > public java.lang.String getReoccurring() > { > return this.reoccurring; > } > > public void setReoccurring( java.lang.String reoccurring ) > { > this.reoccurring = reoccurring; > reoccurringHasBeenSet = true; > > } > > public boolean reoccurringHasBeenSet(){ > return reoccurringHasBeenSet; > } > public java.lang.String getGracePeriodDays() > { > return this.gracePeriodDays; > } > > public void setGracePeriodDays( java.lang.String gracePeriodDays ) > { > this.gracePeriodDays = gracePeriodDays; > gracePeriodDaysHasBeenSet = true; > > } > > public boolean gracePeriodDaysHasBeenSet(){ > return gracePeriodDaysHasBeenSet; > } > public java.lang.String getGracePeriodHours() > { > return this.gracePeriodHours; > } > > public void setGracePeriodHours( java.lang.String gracePeriodHours ) > { > this.gracePeriodHours = gracePeriodHours; > gracePeriodHoursHasBeenSet = true; > > } > > public boolean gracePeriodHoursHasBeenSet(){ > return gracePeriodHoursHasBeenSet; > } > public java.util.Date getEndingDate() > { > return this.endingDate; > } > > public void setEndingDate( java.util.Date endingDate ) > { > this.endingDate = endingDate; > endingDateHasBeenSet = true; > > } > > public boolean endingDateHasBeenSet(){ > return endingDateHasBeenSet; > } > public java.lang.String getStartingLocation() > { > return this.startingLocation; > } > > public void setStartingLocation( java.lang.String startingLocation ) > { > this.startingLocation = startingLocation; > startingLocationHasBeenSet = true; > > } > > public boolean startingLocationHasBeenSet(){ > return startingLocationHasBeenSet; > } > public java.lang.String getEndingLocation() > { > return this.endingLocation; > } > > public void setEndingLocation( java.lang.String endingLocation ) > { > this.endingLocation = endingLocation; > endingLocationHasBeenSet = true; > > } > > public boolean endingLocationHasBeenSet(){ > return endingLocationHasBeenSet; > } > public java.lang.String getStatus() > { > return this.status; > } > > public void setStatus( java.lang.String status ) > { > this.status = status; > statusHasBeenSet = true; > > } > > public boolean statusHasBeenSet(){ > return statusHasBeenSet; > } > public java.lang.String getSafeConfirm() > { > return this.safeConfirm; > } > > public void setSafeConfirm( java.lang.String safeConfirm ) > { > this.safeConfirm = safeConfirm; > safeConfirmHasBeenSet = true; > > } > > public boolean safeConfirmHasBeenSet(){ > return safeConfirmHasBeenSet; > } > public java.lang.String getDetails() > { > return this.details; > } > > public void setDetails( java.lang.String details ) > { > this.details = details; > detailsHasBeenSet = true; > > } > > public boolean detailsHasBeenSet(){ > return detailsHasBeenSet; > } > public java.lang.String getNoteToContactees() > { > return this.noteToContactees; > } > > public void setNoteToContactees( java.lang.String noteToContactees ) > { > this.noteToContactees = noteToContactees; > noteToContacteesHasBeenSet = true; > > } > > public boolean noteToContacteesHasBeenSet(){ > return noteToContacteesHasBeenSet; > } > > protected Collection addedContacts = new java.util.ArrayList(); > protected Collection removedContacts = new java.util.ArrayList(); > protected Collection updatedContacts = new java.util.ArrayList(); > > public Collection getAddedContacts() { return addedContacts; } > public Collection getRemovedContacts() { return removedContacts; } > public Collection getUpdatedContacts() { return updatedContacts; } > > public void setAddedContacts(Collection addedContacts) > { > this.addedContacts.clear(); > this.addedContacts.addAll(addedContacts); > } > > public void setRemovedContacts(Collection removedContacts) > { > this.removedContacts.clear(); > this.removedContacts.addAll(removedContacts); > } > > public void setUpdatedContacts(Collection updatedContacts) > { > this.updatedContacts.clear(); > this.updatedContacts.addAll(updatedContacts); > } > > public com.baselogic.yoursos.contact.ContactDto[] getContacts() > { > return >(com.baselogic.yoursos.contact.ContactDto[])this.Contacts.toArray(new >com.baselogic.yoursos.contact.ContactDto[Contacts.size()]); > } > > public void setContacts(com.baselogic.yoursos.contact.ContactDto[] >Contacts) > { > this.Contacts.clear(); > for (int i=0; i < Contacts.length; i++) > this.Contacts.add(Contacts[i]); > } > > public void clearContacts() > { > this.Contacts.clear(); > } > > public void addContact(com.baselogic.yoursos.contact.ContactDto added) > { > this.Contacts.add(added); > if ( ! this.addedContacts.contains(added)) > this.addedContacts.add(added); > } > > public void removeContact(com.baselogic.yoursos.contact.ContactDto >removed) > { > this.Contacts.remove(removed); > this.removedContacts.add(removed); > if (this.addedContacts.contains(removed)) > this.addedContacts.remove(removed); > if (this.updatedContacts.contains(removed)) > this.updatedContacts.remove(removed); > } > > public void updateContact(com.baselogic.yoursos.contact.ContactDto >updated) > { > if ( !this.updatedContacts.contains(updated) && >!this.addedContacts.contains(updated)) > this.updatedContacts.add(updated); > } > > public void cleanContact(){ > this.addedContacts = new java.util.ArrayList(); > this.removedContacts = new java.util.ArrayList(); > this.updatedContacts = new java.util.ArrayList(); > } > > public void copyContactsFrom(com.baselogic.yoursos.alert.AlertDto from) > { > // TODO Clone the List ???? > this.Contacts = from.Contacts; > } > protected Collection addedLocations = new java.util.ArrayList(); > protected Collection removedLocations = new java.util.ArrayList(); > protected Collection updatedLocations = new java.util.ArrayList(); > > public Collection getAddedLocations() { return addedLocations; } > public Collection getRemovedLocations() { return removedLocations; } > public Collection getUpdatedLocations() { return updatedLocations; > } > > public void setAddedLocations(Collection addedLocations) > { > this.addedLocations.clear(); > this.addedLocations.addAll(addedLocations); > } > > public void setRemovedLocations(Collection removedLocations) > { > this.removedLocations.clear(); > this.removedLocations.addAll(removedLocations); > } > > public void setUpdatedLocations(Collection updatedLocations) > { > this.updatedLocations.clear(); > this.updatedLocations.addAll(updatedLocations); > } > > public com.baselogic.yoursos.location.LocationDto[] getLocations() > { > return >(com.baselogic.yoursos.location.LocationDto[])this.Locations.toArray(ne >w >com.baselogic.yoursos.location.LocationDto[Locations.size()]); > } > > public void >setLocations(com.baselogic.yoursos.location.LocationDto[] >Locations) > { > this.Locations.clear(); > for (int i=0; i < Locations.length; i++) > this.Locations.add(Locations[i]); > } > > public void clearLocations() > { > this.Locations.clear(); > } > > public void addLocation(com.baselogic.yoursos.location.LocationDto >added) > { > this.Locations.add(added); > if ( ! this.addedLocations.contains(added)) > this.addedLocations.add(added); > } > > public void >removeLocation(com.baselogic.yoursos.location.LocationDto >removed) > { > this.Locations.remove(removed); > this.removedLocations.add(removed); > if (this.addedLocations.contains(removed)) > this.addedLocations.remove(removed); > if (this.updatedLocations.contains(removed)) > this.updatedLocations.remove(removed); > } > > public void >updateLocation(com.baselogic.yoursos.location.LocationDto >updated) > { > if ( !this.updatedLocations.contains(updated) && >!this.addedLocations.contains(updated)) > this.updatedLocations.add(updated); > } > > public void cleanLocation(){ > this.addedLocations = new java.util.ArrayList(); > this.removedLocations = new java.util.ArrayList(); > this.updatedLocations = new java.util.ArrayList(); > } > > public void copyLocationsFrom(com.baselogic.yoursos.alert.AlertDto >from) > { > // TODO Clone the List ???? > this.Locations = from.Locations; > } > > public String toString() > { > StringBuffer str = new StringBuffer("{"); > > str.append("alertId=" + getAlertId() + " " + "userId=" + >getUserId() + " >" + "subject=" + getSubject() + " " + "startDate=" + getStartDate() + " >" + "reoccurring=" + getReoccurring() + " " + "gracePeriodDays=" + >getGracePeriodDays() + " " + "gracePeriodHours=" + >getGracePeriodHours() + >" > >" + "endingDate=" + getEndingDate() + " " + "startingLocation=" + >getStartingLocation() + " " + "endingLocation=" + getEndingLocation() + >" " >+ "status=" + getStatus() + " " + "safeConfirm=" + getSafeConfirm() + " >+ " + >"details=" + getDetails() + " " + "noteToContactees=" + >getNoteToContactees()); > str.append('}'); > > return(str.toString()); > } > > /** > * A Value object have an identity if its attributes making its Primary >Key > * has all been set. One object without identity is never equal to any >other > * object. > * > * @return true if this instance have an identity. > */ > protected boolean hasIdentity() > { > return alertIdHasBeenSet; > } > > public boolean equals(Object other) > { > if (this == other) > return true; > if ( ! hasIdentity() ) return false; > if (other instanceof AlertDto) > { > AlertDto that = (AlertDto) other; > if ( ! that.hasIdentity() ) return false; > boolean lEquals = true; > if( this.alertId == null ) > { > lEquals = lEquals && ( that.alertId == null ); > } > else > { > lEquals = lEquals && this.alertId.equals( >that.alertId ); > } > > lEquals = lEquals && isIdentical(that); > > return lEquals; > } > else > { > return false; > } > } > > public boolean isIdentical(Object other) > { > if (other instanceof AlertDto) > { > AlertDto that = (AlertDto) other; > boolean lEquals = true; > if( this.userId == null ) > { > lEquals = lEquals && ( that.userId == null ); > } > else > { > lEquals = lEquals && this.userId.equals( that.userId >); > } > if( this.subject == null ) > { > lEquals = lEquals && ( that.subject == null ); > } > else > { > lEquals = lEquals && this.subject.equals( >that.subject ); > } > if( this.startDate == null ) > { > lEquals = lEquals && ( that.startDate == null ); > } > else > { > lEquals = lEquals && this.startDate.equals( >that.startDate ); > } > if( this.reoccurring == null ) > { > lEquals = lEquals && ( that.reoccurring == null ); > } > else > { > lEquals = lEquals && this.reoccurring.equals( that.reoccurring ); > } > if( this.gracePeriodDays == null ) > { > lEquals = lEquals && ( that.gracePeriodDays == null >); > } > else > { > lEquals = lEquals && this.gracePeriodDays.equals( >that.gracePeriodDays ); > } > if( this.gracePeriodHours == null ) > { > lEquals = lEquals && ( that.gracePeriodHours == null >); > } > else > { > lEquals = lEquals && this.gracePeriodHours.equals( >that.gracePeriodHours >); > } > if( this.endingDate == null ) > { > lEquals = lEquals && ( that.endingDate == null ); > } > else > { > lEquals = lEquals && this.endingDate.equals( >that.endingDate ); > } > if( this.startingLocation == null ) > { > lEquals = lEquals && ( that.startingLocation == null >); > } > else > { > lEquals = lEquals && this.startingLocation.equals( >that.startingLocation >); > } > if( this.endingLocation == null ) > { > lEquals = lEquals && ( that.endingLocation == null >); > } > else > { > lEquals = lEquals && this.endingLocation.equals( >that.endingLocation ); > } > if( this.status == null ) > { > lEquals = lEquals && ( that.status == null ); > } > else > { > lEquals = lEquals && this.status.equals( that.status >); > } > if( this.safeConfirm == null ) > { > lEquals = lEquals && ( that.safeConfirm == null ); > } > else > { > lEquals = lEquals && this.safeConfirm.equals( >that.safeConfirm ); > } > if( this.details == null ) > { > lEquals = lEquals && ( that.details == null ); > } > else > { > lEquals = lEquals && this.details.equals( >that.details ); > } > if( this.noteToContactees == null ) > { > lEquals = lEquals && ( that.noteToContactees == null >); > } > else > { > lEquals = lEquals && this.noteToContactees.equals( >that.noteToContactees >); > } > if( this.getContacts() == null ) > { > lEquals = lEquals && ( that.getContacts() == null ); > } > else > { > lEquals = lEquals && >java.util.Arrays.equals(this.getContacts() , >that.getContacts()) ; > } > if( this.getLocations() == null ) > { > lEquals = lEquals && ( that.getLocations() == null >); > } > else > { > lEquals = lEquals && >java.util.Arrays.equals(this.getLocations() , >that.getLocations()) ; > } > > return lEquals; > } > else > { > return false; > } > } > > public int hashCode(){ > int result = 17; > result = 37*result + ((this.alertId != null) ? >this.alertId.hashCode() > >: 0); > > result = 37*result + ((this.userId != null) ? >this.userId.hashCode() >: > >0); > > result = 37*result + ((this.subject != null) ? >this.subject.hashCode() > >: 0); > > result = 37*result + ((this.startDate != null) ? >this.startDate.hashCode() : 0); > > result = 37*result + ((this.reoccurring != null) ? >this.reoccurring.hashCode() : 0); > > result = 37*result + ((this.gracePeriodDays != null) ? >this.gracePeriodDays.hashCode() : 0); > > result = 37*result + ((this.gracePeriodHours != null) ? >this.gracePeriodHours.hashCode() : 0); > > result = 37*result + ((this.endingDate != null) ? >this.endingDate.hashCode() : 0); > > result = 37*result + ((this.startingLocation != null) ? >this.startingLocation.hashCode() : 0); > > result = 37*result + ((this.endingLocation != null) ? >this.endingLocation.hashCode() : 0); > > result = 37*result + ((this.status != null) ? >this.status.hashCode() >: > >0); > > result = 37*result + ((this.safeConfirm != null) ? >this.safeConfirm.hashCode() : 0); > > result = 37*result + ((this.details != null) ? >this.details.hashCode() > >: 0); > > result = 37*result + ((this.noteToContactees != null) ? >this.noteToContactees.hashCode() : 0); > > result = 37*result + ((this.getContacts() != null) ? >this.getContacts().hashCode() : 0); > result = 37*result + ((this.getLocations() != null) ? >this.getLocations().hashCode() : 0); > return result; > } > >} > >_________________________________________________________________ >The new MSN 8: advanced junk mail protection and 2 months FREE* >http://join.msn.com/?page=features/junkmail > > >--------------------------------------------------------------------- >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] > _________________________________________________________________ The new MSN 8: advanced junk mail protection and 2 months FREE* http://join.msn.com/?page=features/junkmail --------------------------------------------------------------------- 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]

