-->
These old forums are deprecated now and set to read-only. We are waiting for you on our new forums!
More modern, Discourse-based and with GitHub/Google/Twitter authentication built-in.

All times are UTC - 5 hours [ DST ]



Forum locked This topic is locked, you cannot edit posts or make further replies.  [ 5 posts ] 
Author Message
 Post subject: Criteria : could not resolve property
PostPosted: Wed May 18, 2005 7:14 am 
Beginner
Beginner

Joined: Wed Mar 30, 2005 5:41 am
Posts: 40
Hibernate version:
3.0.2

Salut,

Je suis en train d'implémenter une fonctionnalité de recherche dans mon application J2EE et je trouve que l'API Criteria est vraiment fantastique.

J'ai cependant un problème avec un critère sur une table liée.

Je manipule un objet Worker (cf mapping et code ci-dessous) qui a certaines disponibilités : lundi matin, vacances d'été etc.

Dans la base, j'ai une table t_workerdisponibility avec les champs "mondayMorningYN", "summerYN" etc.

Dans mon action submit, je fais ceci :
Code:
Criteria criteria = session.createCriteria( Worker.class );

//récupérer les disponibilités
Criteria disponibilitiesCriteria = criteria.createCriteria( "disponibilities" );
if ( form.getDisponibilities().isMondayMorning() )
   disponibilitiesCriteria.add( Restrictions.eq("mondayMorning", new Boolean( true )) );


et je lorsque dans mon formulaire je coche la case correspondant au lundi matin, je reçois l'erreur ci-dessous.

Pourtant, j'ai pu faire quelque chose de similaire qui marche très bien pour la commune :
Code:
//récupérer la commune
Integer cityId = form.getCityId();
Criteria addressCriteria = null;
if ( cityId != null && cityId.intValue() > 0 )
{
   City city = CitiesDAO.instance().getCityById( cityId );
   addressCriteria = criteria.createCriteria( "contactPoints" );
   addressCriteria.add( Restrictions.eq("city", city) );
}


La différence entre les deux, c'est que pour la commune, il s'agit d'une collection de "contactPoints" qui sont les moyens de contacter la personne (adresse, téléphone, email, mobile) et dans le cas des disponibilités, il s'agit d'une table liée.

Je ne vois pas d'où vient le problème, j'espère que quelqu'un pourra m'éclairer.

Merci d'avance
Lilian

Mapping documents:
Worker.hbm.xml :
Code:
<?xml version="1.0" encoding="UTF-8"?>

<!DOCTYPE hibernate-mapping PUBLIC
   "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
   "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd" >

<hibernate-mapping>
   <subclass
      name="bab.admin.model.persistent.Worker"
      discriminator-value="worker"
      extends="bab.admin.model.persistent.IParty" >
      
      <!--<property
         name="workedHours"
         formula="( SELECT (HOUR(p.endDate)-HOUR(p.startDate)) FROM t_period p where p.periodId = periodId )" />-->
      
      <!--<property name="workedJobs"
         formula="( SELECT COUNT(mission.serviceWorkerId) FROM t_serviceworker mission
                WHERE mission.partyId = partyId )" />-->
               
        <set
         name="specialities"
         table="t_workerspeciality"
         lazy="true"
         cascade="save-update"
         sort="unsorted" >

         <key column="partyId"></key>

         <many-to-many
            class="bab.admin.model.persistent.Speciality"
            column="specialityId"
            outer-join="auto" />

      </set>
      
      <set
         name="jobsWorker"
         inverse="true" >
      
         <key column="partyId" />
         
         <one-to-many
            class="bab.admin.model.persistent.JobWorker" />
      
      </set>
      
      <join table="t_avs">
      
         <key column="partyId" />
         
         <component name="avs">

            <property name="cotise" column="cotiseYN" type="java.lang.Boolean"/>
            <property name="number" column="avsNumber" />
            <property name="requestDate" />
            <property name="expeditionDate" />
            <property name="receptionDate" />
            
         </component>
      </join>
      
      <join table="t_person">
      
         <key column="partyId" />
         
         <property name="sex" />
         <property name="title" />
         <property name="maritalStatus" column="maritalStatusCode" />
         <property name="birthdate" />
         <property name="accountInfo" />
         
         <component
            name="fullname"
            class="bab.admin.model.persistent.Fullname" >
            <property name="firstname" />
            <property name="lastname" />
         </component>
      </join>
      
      <join table="t_worker">
      
         <key column="partyId" />

         <property name="enabled" type="java.lang.Boolean" update="true"
            insert="true" access="property" column="enabledYN" not-null="false"
            unique="false" />
   
         <property name="critic" type="java.lang.String" update="true"
            insert="true" access="property" column="critic" not-null="false"
            unique="false" />
   
         <property name="compliment" type="java.lang.String"
            update="true" insert="true" access="property" column="compliment"
            not-null="false" unique="false" />
   
         <property name="motivationCode" type="java.lang.String"
            update="true" insert="true" access="property" column="motivationCode"
            not-null="true" unique="false" />
   
         <property name="motivationShortCode" type="java.lang.String"
            update="true" insert="true" access="property"
            column="motivationShortCode" not-null="true" unique="false" />
   
         <property name="affiliationDate" type="java.util.Date"
            update="true" insert="true" access="property"
            column="affiliationDate" not-null="true" unique="false" />
   
         <property name="lastReactivationDate" type="java.util.Date"
            update="true" insert="true" access="property"
            column="lastReactivationDate" not-null="false" unique="false" />
   
         <property name="workPermitCode" type="java.lang.String"
            update="true" insert="true" access="property" column="workPermitCode"
            not-null="true" unique="false" />
   
         <property name="authorizationExpirationDate"
            type="java.util.Date" update="true" insert="true" access="property"
            column="authorizationExpirationDate" not-null="false" unique="false" />
   
         <property name="source" type="java.lang.Boolean" update="true"
            insert="true" access="property" column="sourceYN" not-null="false"
            unique="false" />
            
         <many-to-one
            name="activity"
            column="activityId"  />
      </join>
      
      <join table="t_workerDisponibility" >
         <key column="partyId" />
         
         <component
            name="disponibilities"
            class="bab.admin.model.persistent.Disponibility" >
         
            <property name="mondayMorning" column="mondayMorningYN" />
            <property name="mondayAfternoon" column="mondayAfternoonYN" />
            <property name="mondayNight" column="mondayNightYN" />
            <property name="tuesdayMorning" column="tuesdayMorningYN" />
            <property name="tuesdayAfternoon" column="tuesdayAfternoonYN" />
            <property name="tuesdayNight" column="tuesdayNightYN" />
            <property name="wednesdayMorning" column="wednesdayMorningYN" />
            <property name="wednesdayAfternoon" column="wednesdayAfternoonYN" />
            <property name="wednesdayNight" column="wednesdayNightYN" />
            <property name="thursdayMorning" column="thursdayMorningYN" />
            <property name="thursdayAfternoon" column="thursdayAfternoonYN" />
            <property name="thursdayNight" column="thursdayNightYN" />
            <property name="fridayMorning" column="fridayMorningYN" />
            <property name="fridayAfternoon" column="fridayAfternoonYN" />
            <property name="fridayNight" column="fridayNightYN" />
            <property name="saturdayMorning" column="saturdayMorningYN" />
            <property name="saturdayAfternoon" column="saturdayAfternoonYN" />
            <property name="saturdayNight" column="saturdayNightYN" />
            <property name="sundayMorning" column="sundayMorningYN" />
            <property name="sundayAfternoon" column="sundayAfternoonYN" />
            <property name="sundayNight" column="sundayNightYN" />
            
            <property name="february" column="februaryYN" />
            <property name="paques" column="paquesYN" />
            <property name="summer" column="summerYN" />
            <property name="autumn" column="autumnYN" />
            <property name="noel" column="noelYN" />
            <property name="jeunegenevois" column="jeunegenevoisYN" />
            <property name="ascension" column="ascensionYN" />
            <property name="pentecote" column="pentecoteYN" />
         </component>
      </join>
   </subclass>

</hibernate-mapping>


Worker.java
Code:
/*
* Créé le 4 avr. 2005
*/
package bab.admin.model.persistent;

import java.util.*;
import java.util.Date;

import org.apache.commons.logging.*;

import bab.admin.web.action.jobs.*;

/**
* Jeune à qui la BAB fournit du travail
* Par défaut :
* <ul>
*    <li>les jeunes sont activés</li>
*    <li>le "motivationCode" des jeunes est "worker.motivation.normal"</li>
*    <li>le "motivationShortCode" des jeunes est "worker.motivation.short.normal"</li>
* </ul>
*
* hibernate.subclass !!!DECLARER MANUELLEMENT !!!!!
* @hibernate.joined-subclass table="t_worker" extends="bab.admin.model.persistent.IParty"
*
* @uml.dependency supplier="bab.admin.model.persistent.Evaluation"
* @uml.dependency supplier="bab.admin.model.persistent.Speciality"
*/
public class Worker implements IPerson, IParty
{
   Log log = LogFactory.getLog( this.getClass() );
   
   /** Le jeune attend qu'on lui propose une mission */
   public static final String WAITING_FOR_A_JOB = "worker.status.waiting";
   /** Le jeune est affecté à une mission et attend que le travail commence */
   public static final String AFFECTED = "worker.status.affected";
   /** Le jeune est en cours de mission */
   public static final String WORKING = "worker.status.working";
   //----------------------------------------------------------------------------------------------

   //----------------------------------------------------------------------------------------------
   /** Le jeune est très motivé */
   public static final String MOTIVATION_PLUSPLUS = "worker.motivation.plusplus";
   public static final String MOTIVATION_PLUSPLUS_SHORT = "worker.motivation.plusplus.short";
   /** Le jeune est motivé */
   public static final String MOTIVATION_PLUS = "worker.motivation.plus";
   public static final String MOTIVATION_PLUS_SHORT = "worker.motivation.plus.short";
   /** Le jeune est normal */
   public static final String MOTIVATION_NORMAL = "worker.motivation.normal";
   public static final String MOTIVATION_NORMAL_SHORT = "worker.motivation.normal.short";
   /** Le jeune n'est pas motivé */
   public static final String MOTIVATION_LESS = "worker.motivation.less";
   public static final String MOTIVATION_LESS_SHORT = "worker.motivation.less.short";
   /** Le jeune n'est pas du tout motivé */
   public static final String MOTIVATION_LESSLESS = "worker.motivation.lessless";
   public static final String MOTIVATION_LESSLESS_SHORT = "worker.motivation.lessless.short";
   //----------------------------------------------------------------------------------------

   //----------------------------------------------------------------------------------------
   /** Le jeune est imposé à la source */
   public static final String SOURCE_YES = "worker.tax.source";
   /** Le jeune est imposé normalement */
   public static final String SOURCE_NO = "worker.tax.normal";
   //----------------------------------------------------------------------------------------

   //----------------------------------------------------------------------------------------
   /** Le jeune a un permis valable */
   public static final String WORK_PERMIT_C = "worker.permit.valid";
   /** Le jeune est Suisse */
   public static final String WORK_PERMIT_CH = "worker.permit.ch";
   /** Le jeune doit demander une authorization pour travailler */
   public static final String WORK_PERMIT_AUTHORIZATION = "worker.permit.authorization";
   /** On ne connais pas le permis du jeune */
   public static final String WORK_PERMIT_UNKNOWN = "worker.permit.unknown";

   //----------------------------------------------------------------------------------------

   //----------------------------------------------------------------------------------------
   
   /** Age minimum des jeunes inscrits */
   public static final int MINIMUM_AGE = 15;   //TODO à vérifier
   /** Age maximum des jeunes inscrits */
   public static final int MAXIMUM_AGE = 20;
   
   //----------------------------------------------------------------------------------------

   //----------------------------------------------------------------------------------------

   /**
    *
    * @uml.property name="id"
    */
   private Integer id, id2;
   /**
    *
    * @uml.property name="person"
    * @uml.associationEnd inverse=":bab.admin.model.persistent.Person"
    */
   private PersonData person = new PersonData();
   /**
    *
    * @uml.property name="avs"
    * @uml.associationEnd inverse=":bab.admin.model.persistent.AVS"
    */
   private AVS avs = new AVS();
   /** @uml.property name="contactPoints" */
   private Collection contactPoints = new HashSet();
   /**
    *
    * @uml.property name="activity"
    * @uml.associationEnd inverse=":bab.admin.model.persistent.Activity"
    */
   private Activity activity;
   /**
    *
    * @uml.property name="enabled"
    */
   private boolean enabled = true;
   /**
    *
    * @uml.property name="comment"
    */
   private String comment = new String();
   /**
    *
    * @uml.property name="critic"
    */
   private String critic = new String();
   /**
    *
    * @uml.property name="compliment"
    */
   private String compliment = new String();
   /**
    *
    * @uml.property name="motivationCode"
    */
   private String motivationCode = MOTIVATION_NORMAL;
   /**
    *
    * @uml.property name="motivationShortCode"
    */
   private String motivationShortCode = MOTIVATION_NORMAL_SHORT;
   /**
    *
    * @uml.property name="affiliationDate"
    */
   private Date affiliationDate;
   /**
    *
    * @uml.property name="lastReactivationDate"
    */
   private Date lastReactivationDate;
   /**
    *
    * @uml.property name="workPermitCode"
    */
   private String workPermitCode;
   /**
    *
    * @uml.property name="authorizationExpirationDate"
    */
   private Date authorizationExpirationDate;
   /**
    *
    * @uml.property name="source"
    */
   private Boolean source;
   /**
    *
    * @uml.property name="specialities"
    */
   private Collection specialities = new HashSet();
   /** @uml.property name="disponibilities" */
   private Disponibility disponibilities = new Disponibility();
   /**
    *
    * @uml.property name="evaluations"
    */
   private String partyType = "worker";

   /** @uml.property name="accountInfo" */
   private String accountInfo;
   
   private Collection jobsWorker = new HashSet();
   
   private Collection comments = new HashSet();

   //----------------------------------------------------------------------------------------------
   //----------------------------------------------------------------------------------------------
   /**
    * @uml.property name="id"
    * hibernate.id generator-class="assigned" type="java.lang.Integer" column="partyId"
    * */
   public Integer getId()
   {
      return id;
   }

   /** @uml.property name="id" */
   public void setId( Integer value )
   {
      this.id = value;
   }

   /**
    * @uml.property name="enabled"
    * @hibernate.property name="getEnabled" column="enabledYN" type="java.lang.Boolean" not-null="false" unique="false"
    *
    * @return java.
    * @return true si le jeune est actif, false si il est désactivé
    */
   public boolean isEnabled()
   {
      return enabled;
   }

   /**
    * @uml.property name="enabled"
    * @param enabled true si le jeune est actif, false si il est désactivé
    */
   public void setEnabled( boolean enabled )
   {
      this.enabled = enabled;
   }

   /**
    * @uml.property name="comment"
    * hibernate.property name="getComment" column="comment" type="java.lang.String" not-null="false" unique="false"
    * TODO voir comment faire pour le comment
    * @return java.lang.String
    * @return
    */
   public String getComment()
   {
      return comment;
   }

   /**
    * @uml.property name="comment"
    * @return Un évcntuel commentaire au sujet du jeune
    */
   public void setComment( String comment )
   {
      this.comment = comment;
   }

   /**
    * @uml.property name="critic"
    * @hibernate.property name="getCritic" column="critic" type="java.lang.String" not-null="false" unique="false"
    *
    * @return java.lang.String
    * @return Une éventuelle critique au sujet du jeune
    */
   public String getCritic()
   {
      return critic;
   }

   /**
    * @uml.property name="critic"
    * @param critic Une éventuelle critique au sujet du jeune
    */
   public void setCritic( String critic )
   {
      this.critic = critic;
   }

   /**
    * @uml.property name="compliment"
    * @hibernate.property name="getCompliment" column="compliment" type="java.lang.String" not-null="false" unique="false"
    *
    * @return java.lang.String
    * @return Un éventuel compliment concernant le jeune
    */
   public String getCompliment()
   {
      return compliment;
   }

   /**
    * @uml.property name="compliment"
    * @param compliment Un éventuel compliment concernant le jeune
    */
   public void setCompliment( String compliment )
   {
      this.compliment = compliment;
   }

   /**
    * @uml.property name="motivationCode"
    * @hibernate.property name="getMotivationCode" column="motivationCode" type="java.lang.String" not-null="true" unique="false"
    *
    * @return java.lang.String
    * @return par ex. MOTIVATION_PLUSPLUS = worker.motivation.plusplus
    */
   public String getMotivationCode()
   {
      return motivationCode;
   }

   /**
    * @uml.property name="motivationCode"
    * @param motivationCode par ex. MOTIVATION_PLUSPLUS = worker.motivation.plusplus
    */
   public void setMotivationCode( String motivationCode )
   {
      this.motivationCode = motivationCode;
      this.motivationShortCode = getMotivationShortCode( motivationCode );
   }

   /**
    * @uml.property name="motivationShortCode"
    * @hibernate.property name="getMotivationShortCode" column="motivationShortCode" type="java.lang.String" not-null="true" unique="false"
    *
    * @return java.lang.String
    * @return par ex. MOTIVATION_PLUSPLUS = worker.motivation.plusplus
    */
   public String getMotivationShortCode()
   {
      return motivationShortCode;
   }

   /**
    * @uml.property name="motivationShortCode"
    * @param motivationCode par ex. MOTIVATION_PLUSPLUS = worker.motivation.plusplus
    */
   public void setMotivationShortCode( String motivationShortCode )
   {
      this.motivationShortCode = motivationShortCode;
      this.motivationCode = getMotivationCode( motivationShortCode );
   }
   
   /**
    *
    * @param motivationShortCode
    * @return motivationCode correspondant au motivationShortCode
    */
   public String getMotivationCode( String motivationShortCode )
   {
      if ( motivationShortCode.equals(MOTIVATION_PLUSPLUS_SHORT) )
         return MOTIVATION_PLUSPLUS;
      else if ( motivationShortCode.equals(MOTIVATION_PLUS_SHORT) )
         return MOTIVATION_PLUS;
      else if ( motivationShortCode.equals(MOTIVATION_NORMAL_SHORT) )
         return MOTIVATION_NORMAL;
      else if ( motivationShortCode.equals(MOTIVATION_LESS_SHORT) )
         return MOTIVATION_LESS;
      else if ( motivationShortCode.equals(MOTIVATION_LESSLESS_SHORT) )
         return MOTIVATION_LESSLESS;
      
      log.error( "On aurait pas du arriver là" );
      return "";
   }
   
   /**
    *
    * @param motivationCode
    * @return motivationShortCode correspondant au motivationCode
    */
   public String getMotivationShortCode( String motivationCode )
   {
      if ( motivationCode.equals(MOTIVATION_PLUSPLUS) )
         return MOTIVATION_PLUSPLUS_SHORT;
      else if ( motivationCode.equals(MOTIVATION_PLUS) )
         return MOTIVATION_PLUS_SHORT;
      else if ( motivationCode.equals(MOTIVATION_NORMAL) )
         return MOTIVATION_NORMAL_SHORT;
      else if ( motivationCode.equals(MOTIVATION_LESS) )
         return MOTIVATION_LESS_SHORT;
      else if ( motivationCode.equals(MOTIVATION_LESSLESS) )
         return MOTIVATION_LESSLESS_SHORT;
      
      log.error( "On aurait pas du arriver là" );
      return "";
   }

   /**
    * @uml.property name="affiliationDate"
    * @hibernate.property name="getAffiliationDate" column="affiliationDate" type="java.util.Date" not-null="true" unique="false"
    *
    * @return java.lang.Date
    * @return Date à laquelle le jeune s'est inscrit à la BAB
    */
   public Date getAffiliationDate()
   {
      return affiliationDate;
   }

   /**
    * @uml.property name="affiliationDate"
    * @param date Date à laquelle le jeune s'est inscrit à la BAB
    */
   public void setAffiliationDate( Date date )
   {
      this.affiliationDate = date;
   }

   /**
    * @uml.property name="lastReactivationDate"
    * @hibernate.property name="getLastReactivationDate" column="lastReactivationDate" type="java.util.Date" not-null="false" unique="false"
    *
    * @return java.util.Date
    * @return Date à laquelle le jeune a été réactivé
    */
   public Date getLastReactivationDate()
   {
      return lastReactivationDate;
   }

   /**
    * @uml.property name="affiliationDate"
    * @param date Date à laquelle le jeune s'est inscrit à la BAB
    */
   public void setLastReactivationDate( Date date )
   {
      this.lastReactivationDate = date;
   }

   /**
    * @uml.property name="workPermitCode"
    * @hibernate.property name="getWorkPermitCode" column="workPermitCode" type="java.lang.String" not-null="true" unique="false"
    *
    * @return java.lang.String
    * @return par ex. WORK_PERMIT_C = worker.permit.c
    */
   public String getWorkPermitCode()
   {
      return workPermitCode;
   }

   /**
    * @uml.property name="workPermitCode"
    * @param permitCode par ex. WORK_PERMIT_C = worker.permit.c
    */
   public void setWorkPermitCode( String workPermitCode )
   {
      this.workPermitCode = workPermitCode;
   }

   /**
    * @uml.property name="authorizationExpirationDate"
    * @hibernate.property name="getAuthorizationExpirationDate" column="authorizationExpirationDate" type="java.util.Date" not-null="false" unique="false"
    *
    * @return java.util.Date
    * @return Date d'expiration de la dernière demande d'authorization
    */
   public Date getAuthorizationExpirationDate()
   {
      return authorizationExpirationDate;
   }

   /**
    * @uml.property name="authorizationExpirationDate"
    * @param date Date d'expiration de la dernière demande d'authorization
    */
   public void setAuthorizationExpirationDate( Date date )
   {
      this.authorizationExpirationDate = date;
   }

   /**
    * @hibernate.property name="getSource" column="sourceYN" type="java.lang.Boolean" not-null="false" unique="false"
    *
    * @return java.lang.Boolean
    * @uml.property name="source"
    */
   public Boolean getSource()
   {
      return source;
   }

   /**
    * @uml.property name="source"
    */
   public void setSource( Boolean source )
   {
      this.source = source;
   }

   /**
    * @return <ul><li>SOURCE_YES = worker.tax.source</li><li>SOURCE_NO = worker.tax.normal</li></ul>
    * TODO a tester
    * @uml.property name="source"
    */
   public String getSourceStatus()
   {
      if ( source != null )   //le type d'imposition a été défini explicitement
      {
         if ( source.booleanValue() )
            return SOURCE_YES;
         else
            return SOURCE_NO;
      }
      
      //le type d'imposition doit être calculé en fonction de l'âge
      if ( isAdult() )
         return SOURCE_NO;
      else
         return SOURCE_YES;
   }
   
   /**
    * Est considéré comme adulte, tout jeune dont le 1er janvier
    * suivant le 17ème anniversaire est déjà passé.
    * TODO à tester
    * @return true si le jeune est considéré comme un adult.
    */
   public boolean isAdult()
   {
      int age = getAge();
      if ( age < 17 )
         return false;
      
      if ( age >= 18 )
         return true;
      
      Date today, seventeenBirthday, firstJanuaryNextToSeventeenBirthday;
      
      today = new Date();
      
      GregorianCalendar calendar = new GregorianCalendar();
      calendar.setTime( getBirthdate() );
      calendar.add( Calendar.YEAR, 17 );
      seventeenBirthday = calendar.getTime();
      
      calendar.setTime( today );
      if ( (calendar.get(Calendar.MONTH) + 1) > Calendar.JANUARY )
         calendar.add( Calendar.YEAR, 1 );
      calendar.set( Calendar.DATE, 1 );
      calendar.set( Calendar.MONTH, Calendar.JANUARY );
      firstJanuaryNextToSeventeenBirthday = calendar.getTime();
      
      if ( firstJanuaryNextToSeventeenBirthday.after(today) )
         return true;
      return false;
   }

   /**
    * @return Collection de Speciality
    * @uml.property name="specialities"
    * @hibernate.set name="getSpecialities" table="t_workerspeciality" cascade="save-update" inverse="true" lazy="true"
    * @hibernate.collection-key column="partyId"
    * @hibernate.collection-many-to-many class="bab.admin.model.persistent.Speciality" column="specialityId"
    * @return Collection
    */
   public Collection getSpecialities()
   {
      return specialities;
   }

   /**
    * @param specialities Collection de Speciality
    * @uml.property name="specialities"
    */
   public void setSpecialities( Collection specialities )
   {
      this.specialities = specialities;
   }
   
   /**
    * @uml.property name="disponibilities"
    * @return Collection de Disponibility's
    * */
   public Disponibility getDisponibilities()
   {
      return disponibilities;
   }
   
   /**
    * @uml.property name="disponibilities"
    * @param disponibilities Collection de Disponibility's
    * */
   public void setDisponibilities( Disponibility disponibilities )
   {
      this.disponibilities = disponibilities;
   }

   /**
    * @uml.property name="avs"
    * @hibernate.one-to-one
    */
   public AVS getAvs()
   {
      return avs;
   }
   
   /**
    * Status AVS du jeune.
    * <br><br>
    * Si cotise est null, on calcule en fonction de l'âge.
    * Si cotise est false, le jeune ne cotise pas : NO_AVS.
    * <br>
    * Si avsNumber, requestDate et expeditionDate sont null, la carte ne figure pas dans le dossier : CARD_MISSING
    * <br>
    * Si avsNumber n'est pas null et expeditionDate est null, la carte n'a pas été timbrée : CARD_NOT_SENT
    * <br>
    * Si avsNumber n'est pas null, requestDate est null et expeditionDate est null, la carte est timbrée et présente dans le dossier : CARD_OK
    * <br>
    * Si avsNumber est null, requestDate n'est pas null, le jeune vient de demander une carte : CARD_REQUESED
    * <br>
    * Si avsNumber et expeditionDate ne sont pas null, la carte du jeune a été envoyée pour être timbrée : CARD_SENT.
    * TODO a tester
    */
   public String getAvsStatus()
   {
      if ( getAvs().getCotise() == null )   //on doit calculer en fonction de l'âge
      {
         if ( !isAdult() )
            return AVS.NO_AVS;
      }
      return getAvs().getStatus();
   }

   /**
    * @uml.property name="avs"
    */
   public void setAvs( AVS avs )
   {
      //if ( avs == null )   //TODO à voir, hibernate initialise à false...
         //return;
      this.avs = avs;
   }

   /** @uml.property name="birthdate" */
   public Date getBirthdate()
   {
      return getPerson().getBirthdate();
   }
   
   //TODO à tester
   public int getAge()
   {
      if ( getBirthdate() == null )
      {
         return -1;
      }
      
      Calendar today = Calendar.getInstance();
      Calendar bd = Calendar.getInstance();
      bd.setTime( getBirthdate() );
      
      int age = today.get( Calendar.YEAR ) - bd.get( Calendar.YEAR );
      if ( (today.get( Calendar.MONTH ) - bd.get( Calendar.MONTH )) < 0 )
      {
         age--;
      }
      if ( (today.get( Calendar.MONTH) - bd.get( Calendar.MONTH )) == 0 && bd.get(Calendar.DATE) < 0 )
      {
         age--;
      }
      
      return age;
   }

   /** @uml.property name="birthdate" */
   public void setBirthdate( Date birthdate )
   {
      getPerson().setBirthdate( birthdate );
   }

   /** @uml.property name="maritalStatus" */
   public String getMaritalStatus()
   {
      return getPerson().getMaritalStatus();
   }

   /** @uml.property name="maritalStatus" */
   public void setMaritalStatus( String status )
   {
      getPerson().setMaritalStatus( status );
   }

   /** @uml.property name="sex" */
   public String getSex()
   {
      return getPerson().getSex();
   }

   /** @uml.property name="sex" */
   public void setSex( String sex )
   {
      getPerson().setSex( sex );
   }

   /** @uml.property name="title" */
   public String getTitle()
   {
      return getPerson().getTitle();
   }

   /**
    * @uml.property name="title"
    */
   public void setTitle( String title )
   {
      getPerson().setTitle( title );
   }

   /**
    * uml.property name="evaluations"
    * @return Returns the evaluations.
    */
   /*public Collection getEvaluations()
    {
    return evaluations;
    }*/

   /**
    * uml.property name="evaluations"
    * @param evaluations The evaluations to set.
    */
   /*public void setEvaluations( Collection evaluations )
    {
    this.evaluations = evaluations;
    }*/

   /**
    * 
    * @uml.property name="fullname"
    *
    */
   public Fullname getFullname()
   {
      return getPerson().getFullname();
   }

   /**
    * 
    * @uml.property name="fullname"
    *
    */
   public void setFullname( Fullname fullname )
   {
      getPerson().setFullname( fullname );
   }

   /**
    * @return Returns the person.
    * @uml.property name="person"
    * hibernate.one-to-one cascade="none"
    */
   public PersonData getPerson()
   {
      return person;
   }

   /**
    * @param person The person to set.
    * @uml.property name="person"
    */
   public void setPerson( PersonData person )
   {
      this.person = person;
   }

   /**
    * @return Returns the partyType.
    * @uml.property name="partyType"
    */
   public String getPartyType()
   {
      return partyType;
   }

   /**
    * @param partyType The partyType to set.
    * @uml.property name="partyType"
    */
   public void setPartyType( String partyType )
   {
      this.partyType = partyType;
   }

   /**
    * @uml.property name="activity"
    * @return Returns the activity.
    */
   public Activity getActivity()
   {
      return activity;
   }

   /**
    * @uml.property name="activity"
    * @param activity The activity to set.
    */
   public void setActivity( Activity activity )
   {
      this.activity = activity;
   }

   
   /** @uml.property name="contactPoints" */
   public Collection getContactPoints()
   {
      return contactPoints;
   }
   

   
   /** @uml.property name="contactPoints" */
   public void setContactPoints( Collection contactPoints )
   {
      this.contactPoints = contactPoints;
   }
   
   public void addContactPoint( ContactPoint contactPoint )
   {
      contactPoint.setParty( this );
      contactPoints.add( contactPoint );
   }

   /**
    * @uml.property name="accountInfo"
    */
   public String getAccountInfo()
   {
      return this.accountInfo;
   }

   /**
    * @uml.property name="accountInfo"
    */
   public void setAccountInfo( String info )
   {
      this.accountInfo = info;
   }
   
   //TODO à tester
   //TODO à optimiser
   public MailContactPoint getAddress()
   {
      for ( Iterator iter = getContactPoints().iterator(); iter.hasNext(); )
      {
         ContactPoint contactPoint = (ContactPoint)iter.next();
         if ( contactPoint instanceof MailContactPoint )
         {
            MailContactPoint mailContactPoint = (MailContactPoint)contactPoint;
            return mailContactPoint;
         }
      }
      return null;
   }
   
   /**
    * Définit l'adress du jeune.
    * Si address est null, l'adresse actuelle est supprimée.
    * @param address
    */
   public void setAddress( MailContactPoint address )
   {
      if ( address == null )
      {
         getContactPoints().remove( getAddress() );
         return;
      }
      MailContactPoint currentAddress = getAddress();
      if ( currentAddress != null )
      {
         currentAddress.setStreet( address.getStreet() );
         currentAddress.setStreetNumber( address.getStreetNumber() );
         currentAddress.setHosted( address.getHosted() );
         currentAddress.setCity( address.getCity() );
         currentAddress.setQuartier( address.getQuartier() );
         return;
      }
      addContactPoint( address );
   }
   
   
   //TODO à tester
   //TODO à optimiser
   //TODO créer un objet ContactPoints pour encapsuler les contactPoints d'un party et ainsi supprimer le code redondant dans les objets Worker, Contact et Client
   public PhoneContactPoint getPhone1()
   {
      for ( Iterator iter = getContactPoints().iterator(); iter.hasNext(); )
      {
         ContactPoint contactPoint = (ContactPoint)iter.next();
         if ( contactPoint instanceof PhoneContactPoint )
         {
            PhoneContactPoint phoneContactPoint = (PhoneContactPoint)contactPoint;
            return phoneContactPoint;
         }
      }
      return null;
   }
   /**
    * Définit le numéro de téléphone principaldu jeune.
    * Si le numéro est nul ou une chaîne vide, le jeune n'a pas
    * pas de téléphone et un éventuel n° est supprimé
    */
   public void setPhone1( String phoneNumber )
   {
      if ( phoneNumber == null || phoneNumber.length() < 1 )
      {
         getContactPoints().remove( getPhone1() );
         return;
      }
      PhoneContactPoint phone1 = getPhone1();
      if ( phone1 != null )
      {
         phone1.setPhoneNumber( phoneNumber );
         return;
      }
      phone1 = new PhoneContactPoint( phoneNumber );
      addContactPoint( phone1 );
   }
   
   //TODO à tester
   //TODO à optimiser
   public PhoneContactPoint getPhone2()
   {
      for ( Iterator iter = getContactPoints().iterator(); iter.hasNext(); )
      {
         ContactPoint contactPoint = (ContactPoint)iter.next();
         if ( contactPoint instanceof PhoneContactPoint && contactPoint != getPhone1() )
         {
            PhoneContactPoint phoneContactPoint = (PhoneContactPoint)contactPoint;
            return phoneContactPoint;
         }
      }
      return null;
   }
   
   //TODO à tester
   //TODO à optimiser
   public EmailContactPoint getEmail()
   {
      for ( Iterator iter = getContactPoints().iterator(); iter.hasNext(); )
      {
         ContactPoint contactPoint = (ContactPoint)iter.next();
         if ( contactPoint instanceof EmailContactPoint )
         {
            EmailContactPoint emailContactPoint = (EmailContactPoint)contactPoint;
            return emailContactPoint;
         }
      }
      return null;
   }
   
   /**
    * Définit l'adresse email du jeune.
    * Si l'adresse email est nulle ou une chaîne vide, le jeune n'a pas
    * pas d'adresse email et une éventuelle addresse email existante est supprimée
    */
   public void setEmail( String emailAddress )
   {
      if ( emailAddress == null || emailAddress.length() < 1 )
      {
         getContactPoints().remove( getEmail() );
         return;
      }
      EmailContactPoint email = getEmail();
      if ( email != null )
      {
         email.setAddress( emailAddress );
         return;
      }
      email = new EmailContactPoint( emailAddress );
      addContactPoint( email );
   }
   
//   TODO à tester
   //TODO à optimiser
   public MobileContactPoint getMobile()
   {
      for ( Iterator iter = getContactPoints().iterator(); iter.hasNext(); )
      {
         ContactPoint contactPoint = (ContactPoint)iter.next();
         if ( contactPoint instanceof MobileContactPoint )
         {
            MobileContactPoint mobileContactPoint = (MobileContactPoint)contactPoint;
            return mobileContactPoint;
         }
      }
      return null;
   }
   /**
    * Définit l'adresse email du jeune.
    * Si l'adresse email est nulle ou une chaîne vide, le jeune n'a pas
    * pas d'adresse email et une éventuelle addresse email existante est supprimée
    */
   public void setMobile( String mobileNumber )
   {
      if ( mobileNumber == null || mobileNumber.length() < 1 )
      {
         getContactPoints().remove( getMobile() );
         return;
      }
      MobileContactPoint mobile = getMobile();
      if ( mobile != null )
      {
         mobile.setMobileNumber( mobileNumber );
         return;
      }
      mobile = new MobileContactPoint( mobileNumber );
      addContactPoint( mobile );
   }
   
   /**
    * Situation actuelle du jeune : en attente d'un job, affecté à une mission ou actuellement au travail
    * <ol>
    *    <li>
    *       <u>WAITING_FOR_A_JOB = "worker.status.waiting"</u>
    *       <br>
    *       Le jeune n'est affecté à aucun job dont le status est NEGOTIATING,
    *       WAITING_FOR_JOB ou JOB_IN_PROGRESS
    *    </li>
    *   <li>
    *      <u>AFFECTED = "worker.status.affected"</u>
    *      <br>
    *      Le jeune est affecté à un job dont le statut est NEGOTIATING ou WAITING_FOR_JOB
    *   </li>
    *   <li>
    *      <u>WORKING = "worker.status.working"</u>
    *      <br>
    *      Le jeune est affecté à un job dont le statut est JOB_IN_PROGRESS et dont
    *      la date du jour est postérieure à la date de début et antérieure à la date de fin d'une période
    *      à laquelle il est affecté
    *   </li>
    * </ol>
    * TODO à tester
    * TODO actuellement si le jeune est affecté à plusieurs job on ne peut pas connaître les différents status
    * RG worker status
    */
   public String getStatus()
   {
      Collection jobs = getJobs();
      if ( jobs == null || jobs.size() < 1 )
      {
         return WAITING_FOR_A_JOB;
      }
      
      for ( Iterator iter = jobs.iterator(); iter.hasNext(); )
      {
         Job job = (Job)iter.next();
         String status = job.getStatus();
         
         if ( status.equals(Job.NEGOTIATING) || status.equals(Job.WAITING_FOR_JOB) )
         {
            return AFFECTED;
         }
         if ( status.equals(Job.JOB_IN_PROGRESS) )
         {
            //TODO implémenter
            return WORKING;
         }
      }
      return WAITING_FOR_A_JOB;
   }
   
   /**
    * Retourne le job auquel le jeune est associé
    * TODO actuellement si le jeune est affecté à plusieurs job on ne peut en connaître qu'un
    * @return
    */
   public Collection getJobs()
   {
      return null;
   }
   
   /**
    * @return Returns the jobsWorker.
    */
   public Collection getJobsWorker()
   {
      return jobsWorker;
   }

   
   /**
    * @param jobsWorker The jobsWorker to set.
    */
   public void setJobsWorker( Collection jobsWorker )
   {
      this.jobsWorker = jobsWorker;
   }
   
   /**
    * Retourne les objets "JobWorkerPeriods" (encapsulations des associations du jeune aux jobs) dont
    * job.status = terminated
    * @return
    */
   public Collection getHistory()
   {
      ArrayList history = new ArrayList();
      for ( Iterator iter = getJobsWorker().iterator(); iter.hasNext(); )
      {
         JobWorker jw = (JobWorker)iter.next();
         Date endDate = jw.getJob().getLastPeriod().getEnd();
         //if ( jw.getJob().getLastPeriod().getEnd().before(new Date()) )
         if ( jw.getJob().getStatus().equals(Job.TERMINATED) )
            history.add( new JobWorkerPeriods(jw) );
      }
      return history;
   }

   
   /**
    * Nombre de missions effectuées par le jeune (lorsque job.status = terminated)
    * @return
    */
   public int getWorkedJobs()
   {
      return getHistory().size();
   }
   
   public int getWorkedHours()
   {
      int total = 0;
      Collection workedJobs = getHistory();
      for ( Iterator iter = workedJobs.iterator(); iter.hasNext(); )
      {
         JobWorkerPeriods jw = (JobWorkerPeriods)iter.next();
         total += jw.getWorkedHours();
      }
      return total;
   }

   /**
    *
    */
   public Collection getComments()
   {
      return comments;
   }

   /**
    *
    */
   public void setComments( Collection comments )
   {
      this.comments = comments;
   }
   
   public void addComment( Comment comment )
   {
      getComments().add( comment );
   }
}



Full stack trace of any exception that occurs:
Code:
org.hibernate.QueryException: could not resolve property: mondayMorning of: bab.admin.model.persistent.Worker
   at org.hibernate.persister.entity.AbstractPropertyMapping.throwPropertyException(AbstractPropertyMapping.java:43)
   at org.hibernate.persister.entity.AbstractPropertyMapping.toType(AbstractPropertyMapping.java:37)
   at org.hibernate.persister.entity.BasicEntityPersister.getSubclassPropertyTableNumber(BasicEntityPersister.java:1110)
   at org.hibernate.persister.entity.BasicEntityPropertyMapping.toColumns(BasicEntityPropertyMapping.java:33)
   at org.hibernate.persister.entity.BasicEntityPersister.toColumns(BasicEntityPersister.java:1086)
   at org.hibernate.loader.criteria.CriteriaQueryTranslator.getColumns(CriteriaQueryTranslator.java:402)
   at org.hibernate.loader.criteria.CriteriaQueryTranslator.getColumnsUsingProjection(CriteriaQueryTranslator.java:368)
   at org.hibernate.criterion.SimpleExpression.toSqlString(SimpleExpression.java:42)
   at org.hibernate.loader.criteria.CriteriaQueryTranslator.getWhereCondition(CriteriaQueryTranslator.java:313)
   at org.hibernate.loader.criteria.CriteriaLoader.<init>(CriteriaLoader.java:94)
   at org.hibernate.impl.SessionImpl.list(SessionImpl.java:1236)
   at org.hibernate.impl.CriteriaImpl.list(CriteriaImpl.java:299)
   at bab.admin.model.dao.DefaultDAO.search(DefaultDAO.java:100)
   at bab.admin.web.action.workers.SearchSubmitAction.execute(SearchSubmitAction.java:133)
   at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:421)
   at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:226)
   at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1164)
   at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:415)
   at javax.servlet.http.HttpServlet.service(HttpServlet.java:709)
   at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
   at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
   at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
   at bab.admin.web.filter.HibernateFilter.doFilter(HibernateFilter.java:51)
   at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
   at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
   at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
   at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
   at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
   at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
   at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
   at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
   at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:856)
   at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:744)
   at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
   at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80)
   at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684)
   at java.lang.Thread.run(Thread.java:595)



Name and version of the database you are using:
MySQL 4.1


Top
 Profile  
 
 Post subject: could not resolve property
PostPosted: Fri May 20, 2005 8:32 am 
Beginner
Beginner

Joined: Fri Jan 07, 2005 2:47 pm
Posts: 45
Il ne peut pas exécuter ta requête puisqu'il ne voit pas ton getter and setter pour ta propriété mondayMorning dans ta classe Worker.


Top
 Profile  
 
 Post subject: Re: could not resolve property
PostPosted: Fri May 20, 2005 9:11 am 
Beginner
Beginner

Joined: Wed Mar 30, 2005 5:41 am
Posts: 40
dfini wrote:
Il ne peut pas exécuter ta requête puisqu'il ne voit pas ton getter and setter pour ta propriété mondayMorning dans ta classe Worker.


Merci pour ta réponse,

Dans ma classe Worker, j'ai
Code:
public Disponibility getDisponibilities()
{
   return disponibilities;
}
   
public void setDisponibilities( Disponibility disponibilities )
{
   this.disponibilities = disponibilities;
}


et la propriété mondayMorning se trouve dans mon objet Disponibility (cf code ci-dessous).

Comment faire pour qu'il puisse y accéder ?

Merci d'avance
Lilian

Code:
/*
* Créé le 7 avr. 2005
*/
package bab.admin.model.persistent;

/**
* Disponibilités d'une personne
*/
public class Disponibility
{
   private boolean mondayMorning, mondayAfternoon, mondayNight;
   private boolean tuesdayMorning, tuesdayAfternoon, tuesdayNight;
   private boolean wednesdayMorning, wednesdayAfternoon, wednesdayNight;
   private boolean thursdayMorning, thursdayAfternoon, thursdayNight;
   private boolean fridayMorning, fridayAfternoon, fridayNight;
   private boolean saturdayMorning, saturdayAfternoon, saturdayNight;
   private boolean sundayMorning, sundayAfternoon, sundayNight;
   private boolean february;
   private boolean paques;
   private boolean summer;
   private boolean autumn;
   private boolean noel;
   private boolean jeunegenevois;
   private boolean ascension;
   private boolean pentecote;
   
   
   public void clear()
   {
      mondayMorning = false;
      mondayAfternoon = false;
      mondayNight = false;
      tuesdayMorning = false;
      tuesdayAfternoon = false;
      tuesdayNight = false;
      wednesdayMorning = false;
      wednesdayAfternoon = false;
      wednesdayNight = false;
      thursdayMorning = false;
      thursdayAfternoon = false;
      thursdayNight = false;
      fridayMorning = false;
      fridayAfternoon = false;
      fridayNight = false;
      saturdayMorning = false;
      saturdayAfternoon = false;
      saturdayNight = false;
      sundayMorning = false;
      sundayAfternoon = false;
      sundayNight = false;
      february = false;
      paques = false;
      summer = false;
      autumn = false;
      noel = false;
      jeunegenevois = false;
      ascension = false;
      pentecote = false;
   }
   
   /**
    * @return Returns the ascension.
    */
   public boolean isAscension()
   {
      return ascension;
   }
   


   
   /**
    * @param ascension The ascension to set.
    */
   public void setAscension( boolean ascension )
   {
      this.ascension = ascension;
   }
   


   
   /**
    * @return Returns the autumn.
    */
   public boolean isAutumn()
   {
      return autumn;
   }
   


   
   /**
    * @param autumn The autumn to set.
    */
   public void setAutumn( boolean autumn )
   {
      this.autumn = autumn;
   }
   


   
   /**
    * @return Returns the february.
    */
   public boolean isFebruary()
   {
      return february;
   }
   


   
   /**
    * @param february The february to set.
    */
   public void setFebruary( boolean february )
   {
      this.february = february;
   }
   


   
   /**
    * @return Returns the jeunegenevois.
    */
   public boolean isJeunegenevois()
   {
      return jeunegenevois;
   }
   


   
   /**
    * @param jeunegenevois The jeunegenevois to set.
    */
   public void setJeunegenevois( boolean jeunegenevois )
   {
      this.jeunegenevois = jeunegenevois;
   }
   


   
   /**
    * @return Returns the mondayMorning.
    */
   public boolean isMondayMorning()
   {
      return mondayMorning;
   }
   


   
   /**
    * @param mondayMorning The mondayMorning to set.
    */
   public void setMondayMorning( boolean mondayMorning )
   {
      this.mondayMorning = mondayMorning;
   }
   


   
   /**
    * @return Returns the mondayNight.
    */
   public boolean isMondayNight()
   {
      return mondayNight;
   }
   


   
   /**
    * @param mondayNight The mondayNight to set.
    */
   public void setMondayNight( boolean mondayNight )
   {
      this.mondayNight = mondayNight;
   }
   


   
   /**
    * @return Returns the noel.
    */
   public boolean isNoel()
   {
      return noel;
   }
   


   
   /**
    * @param noel The noel to set.
    */
   public void setNoel( boolean noel )
   {
      this.noel = noel;
   }
   


   
   /**
    * @return Returns the paques.
    */
   public boolean isPaques()
   {
      return paques;
   }
   


   
   /**
    * @param paques The paques to set.
    */
   public void setPaques( boolean paques )
   {
      this.paques = paques;
   }
   


   
   /**
    * @return Returns the pentecote.
    */
   public boolean isPentecote()
   {
      return pentecote;
   }
   


   
   /**
    * @param pentecote The pentecote to set.
    */
   public void setPentecote( boolean pentecote )
   {
      this.pentecote = pentecote;
   }
   


   
   /**
    * @return Returns the summer.
    */
   public boolean isSummer()
   {
      return summer;
   }
   


   
   /**
    * @param summer The summer to set.
    */
   public void setSummer( boolean summer )
   {
      this.summer = summer;
   }
   


   
   /**
    * @return Returns the tuesdayAfternoon.
    */
   public boolean isTuesdayAfternoon()
   {
      return tuesdayAfternoon;
   }
   


   
   /**
    * @param tuesdayAfternoon The tuesdayAfternoon to set.
    */
   public void setTuesdayAfternoon( boolean tuesdayAfternoon )
   {
      this.tuesdayAfternoon = tuesdayAfternoon;
   }
   


   
   /**
    * @return Returns the tuesdayMorning.
    */
   public boolean isTuesdayMorning()
   {
      return tuesdayMorning;
   }
   


   
   /**
    * @param tuesdayMorning The tuesdayMorning to set.
    */
   public void setTuesdayMorning( boolean tuesdayMorning )
   {
      this.tuesdayMorning = tuesdayMorning;
   }
   


   
   /**
    * @return Returns the tuesdayNight.
    */
   public boolean isTuesdayNight()
   {
      return tuesdayNight;
   }
   


   
   /**
    * @param tuesdayNight The tuesdayNight to set.
    */
   public void setTuesdayNight( boolean tuesdayNight )
   {
      this.tuesdayNight = tuesdayNight;
   }
   


   /**
    * @return Returns the mondayAfternoon.
    */
   public boolean isMondayAfternoon()
   {
      return mondayAfternoon;
   }
   
   
   /**
    * @param mondayAfternoon The mondayAfternoon to set.
    */
   public void setMondayAfternoon( boolean mondayAfternoon )
   {
      this.mondayAfternoon = mondayAfternoon;
   }




   
   /**
    * @return Returns the fridayAfternoon.
    */
   public boolean isFridayAfternoon()
   {
      return fridayAfternoon;
   }
   




   
   /**
    * @param fridayAfternoon The fridayAfternoon to set.
    */
   public void setFridayAfternoon( boolean fridayAfternoon )
   {
      this.fridayAfternoon = fridayAfternoon;
   }
   




   
   /**
    * @return Returns the fridayMorning.
    */
   public boolean isFridayMorning()
   {
      return fridayMorning;
   }
   




   
   /**
    * @param fridayMorning The fridayMorning to set.
    */
   public void setFridayMorning( boolean fridayMorning )
   {
      this.fridayMorning = fridayMorning;
   }
   




   
   /**
    * @return Returns the fridayNight.
    */
   public boolean isFridayNight()
   {
      return fridayNight;
   }
   




   
   /**
    * @param fridayNight The fridayNight to set.
    */
   public void setFridayNight( boolean fridayNight )
   {
      this.fridayNight = fridayNight;
   }
   




   
   /**
    * @return Returns the saturdayAfternoon.
    */
   public boolean isSaturdayAfternoon()
   {
      return saturdayAfternoon;
   }
   




   
   /**
    * @param saturdayAfternoon The saturdayAfternoon to set.
    */
   public void setSaturdayAfternoon( boolean saturdayAfternoon )
   {
      this.saturdayAfternoon = saturdayAfternoon;
   }
   




   
   /**
    * @return Returns the saturdayMorning.
    */
   public boolean isSaturdayMorning()
   {
      return saturdayMorning;
   }
   




   
   /**
    * @param saturdayMorning The saturdayMorning to set.
    */
   public void setSaturdayMorning( boolean saturdayMorning )
   {
      this.saturdayMorning = saturdayMorning;
   }
   




   
   /**
    * @return Returns the saturdayNight.
    */
   public boolean isSaturdayNight()
   {
      return saturdayNight;
   }
   




   
   /**
    * @param saturdayNight The saturdayNight to set.
    */
   public void setSaturdayNight( boolean saturdayNight )
   {
      this.saturdayNight = saturdayNight;
   }
   




   
   /**
    * @return Returns the sundayAfternoon.
    */
   public boolean isSundayAfternoon()
   {
      return sundayAfternoon;
   }
   




   
   /**
    * @param sundayAfternoon The sundayAfternoon to set.
    */
   public void setSundayAfternoon( boolean sundayAfternoon )
   {
      this.sundayAfternoon = sundayAfternoon;
   }
   




   
   /**
    * @return Returns the sundayMorning.
    */
   public boolean isSundayMorning()
   {
      return sundayMorning;
   }
   




   
   /**
    * @param sundayMorning The sundayMorning to set.
    */
   public void setSundayMorning( boolean sundayMorning )
   {
      this.sundayMorning = sundayMorning;
   }
   




   
   /**
    * @return Returns the sundayNight.
    */
   public boolean isSundayNight()
   {
      return sundayNight;
   }
   




   
   /**
    * @param sundayNight The sundayNight to set.
    */
   public void setSundayNight( boolean sundayNight )
   {
      this.sundayNight = sundayNight;
   }
   




   
   /**
    * @return Returns the thursdayAfternoon.
    */
   public boolean isThursdayAfternoon()
   {
      return thursdayAfternoon;
   }
   




   
   /**
    * @param thursdayAfternoon The thursdayAfternoon to set.
    */
   public void setThursdayAfternoon( boolean thursdayAfternoon )
   {
      this.thursdayAfternoon = thursdayAfternoon;
   }
   




   
   /**
    * @return Returns the thursdayMorning.
    */
   public boolean isThursdayMorning()
   {
      return thursdayMorning;
   }
   




   
   /**
    * @param thursdayMorning The thursdayMorning to set.
    */
   public void setThursdayMorning( boolean thursdayMorning )
   {
      this.thursdayMorning = thursdayMorning;
   }
   




   
   /**
    * @return Returns the thursdayNight.
    */
   public boolean isThursdayNight()
   {
      return thursdayNight;
   }
   




   
   /**
    * @param thursdayNight The thursdayNight to set.
    */
   public void setThursdayNight( boolean thursdayNight )
   {
      this.thursdayNight = thursdayNight;
   }
   




   
   /**
    * @return Returns the wednesdayAfternoon.
    */
   public boolean isWednesdayAfternoon()
   {
      return wednesdayAfternoon;
   }
   




   
   /**
    * @param wednesdayAfternoon The wednesdayAfternoon to set.
    */
   public void setWednesdayAfternoon( boolean wednesdayAfternoon )
   {
      this.wednesdayAfternoon = wednesdayAfternoon;
   }
   




   
   /**
    * @return Returns the wednesdayMorning.
    */
   public boolean isWednesdayMorning()
   {
      return wednesdayMorning;
   }
   




   
   /**
    * @param wednesdayMorning The wednesdayMorning to set.
    */
   public void setWednesdayMorning( boolean wednesdayMorning )
   {
      this.wednesdayMorning = wednesdayMorning;
   }
   




   
   /**
    * @return Returns the wednesdayNight.
    */
   public boolean isWednesdayNight()
   {
      return wednesdayNight;
   }
   




   
   /**
    * @param wednesdayNight The wednesdayNight to set.
    */
   public void setWednesdayNight( boolean wednesdayNight )
   {
      this.wednesdayNight = wednesdayNight;
   }
   
   
}



Top
 Profile  
 
 Post subject: Could not resolve property
PostPosted: Fri May 20, 2005 9:25 am 
Beginner
Beginner

Joined: Fri Jan 07, 2005 2:47 pm
Posts: 45
Je ne suis pas une experte concernant Hibernate et j'apprend aussi comment m'en servir. Toutefois essaie de lui donner le chemin tel que:

"this.disponibilities.mondayMorning"

Ma réponse n'est pas à 100% sure mais j'ai utilisé ce procéder lors d'une requête et ça fonctionné. ::))

Bonne chance


Top
 Profile  
 
 Post subject: Re: Could not resolve property
PostPosted: Fri May 20, 2005 10:43 am 
Beginner
Beginner

Joined: Wed Mar 30, 2005 5:41 am
Posts: 40
dfini wrote:
Je ne suis pas une experte concernant Hibernate et j'apprend aussi comment m'en servir. Toutefois essaie de lui donner le chemin tel que:

"this.disponibilities.mondayMorning"

Ma réponse n'est pas à 100% sure mais j'ai utilisé ce procéder lors d'une requête et ça fonctionné. ::))

Bonne chance


En fait j'ai trouvé, le code corrigé est
Code:
if ( form.getDisponibilities().isMondayMorning() )
         criteria.add( Restrictions.eq("disponibilities.mondayMorning", new Boolean( true )) );


A+Lilian


Top
 Profile  
 
Display posts from previous:  Sort by  
Forum locked This topic is locked, you cannot edit posts or make further replies.  [ 5 posts ] 

All times are UTC - 5 hours [ DST ]


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum

Search for:
© Copyright 2014, Red Hat Inc. All rights reserved. JBoss and Hibernate are registered trademarks and servicemarks of Red Hat, Inc.