Bien, muchas gracias a los dos.
Veremos si con virtual empieza a funcionar este tipo de herencia.

Muchas gracias.

On 9 jun, 14:25, Edgar Ramos <[email protected]> wrote:
> Gracias José no encontraba el link para enviarselo a Eddie
>
> saludos
>
> El día 9 de junio de 2010 12:14, José F. Romaniello
> <[email protected]> escribió:
>
>
>
> > Esta en la documentación:
> >http://nhforge.org/doc/nh/en/index.html#persistent-classes-poco-sealed
> > Para que nhibernate puede hacer proxies de tus clases, (los proxies se usan
> > para el mecanismo de lazyload), tus propiedades y metodos deben ser publicos
> > y tu clases no deben ser sealed.
> > Ademas la misma excepción lo dice.
>
> > El 9 de junio de 2010 14:01, Eddie <[email protected]> escribió:
>
> >> No he probado poner las propiedades como "virtual".
>
> >> Viendo ejemplos, no he visto que en ningun lado se utilice virtual.
> >> Por eso queria saber si tal vez tenga algun otro tipo de problema de
> >> configuración.
>
> >> On 9 jun, 12:52, José F. Romaniello <[email protected]> wrote:
> >> > muy bien Edgar!
>
> >> > El 9 de junio de 2010 12:50, Edgar Ramos <[email protected]>
> >> > escribió:
>
> >> > > Has probado declarar como virtual tus propiedades, tal cual te lo
> >> > > sugiere el mensaje de error ?
>
> >> > > El día 9 de junio de 2010 07:03, Eddie <[email protected]>
> >> > > escribió:
> >> > > > Obtengo el siguiente error al iniciar la aplicación.
>
> >> > > > "
> >> > > > Error creating context 'spring.root': The following types may not be
> >> > > > used as proxies:
> >> > > > Domain.Medico: method get_Matricula should be 'public/protected
> >> > > > virtual' or 'protected internal virtual'
> >> > > > Domain.Medico: method set_Matricula should be 'public/protected
> >> > > > virtual' or 'protected internal virtual'
> >> > > > .
> >> > > > .
> >> > > > .
> >> > > > "
>
> >> > > > La situacion es la siguiente: tengo dos clases Persona y Medico.
>
> >> > > >    public class Persona : Entity
> >> > > >    {
> >> > > >        private string _nombre;
> >> > > >        private DateTime _fechaNacimiento;
> >> > > >        public string Nombre
> >> > > >        {
> >> > > >            get { return _nombre; }
> >> > > >            set { _nombre = value; }
> >> > > >        }
> >> > > >        public DateTime FechaNacimiento
> >> > > >        {
> >> > > >            get { return _fechaNacimiento; }
> >> > > >            set { _fechaNacimiento = value; }
> >> > > >        }
> >> > > >    }
>
> >> > > >    public class Medico : Persona
> >> > > >    {
> >> > > >        private string _matricula;
> >> > > >        public string Matricula
> >> > > >        {
> >> > > >            get { return _matricula; }
> >> > > >            set { _matricula = value; }
> >> > > >        }
> >> > > >    }
>
> >> > > > El archivo de mapeo de NHibernate es el siguiente.
>
> >> > > > <hibernate-mapping xmlns="urn:nhibernate-mapping-2.2">
> >> > > >  <class name="Domain.Persona, Domain" table="Personas" lazy="false"
>
> >> > > >    <id name="ID" type="Int32" unsaved-value="0">
> >> > > >      <column name="Id" sql-type="int" not-null="true" unique="true"
> >> > > > index="PK_Personas"/>
> >> > > >      <generator class="native" />
> >> > > >    </id>
> >> > > >    <property name="Nombre" type="String">
> >> > > >      <column name="nombre" length="50" sql-type="varchar" not-
> >> > > > null="true" />
> >> > > >    </property>
> >> > > >    <property name="FechaNacimiento" type="DateTime">
> >> > > >      <column name="fechanac" sql-type="datetime" />
> >> > > >    </property>
>
> >> > > >    <joined-subclass name="Domain.Medico, Domain"
> >> > > > table="Profesionales" >
> >> > > >      <key column="id_persona"/>
> >> > > >      <property name="Matricula" column="matricula" type="String" />
> >> > > >    </joined-subclass>
>
> >> > > >  </class>
> >> > > > </hibernate-mapping>
>
> >> > > > Si elimino el tag <joined-subclass> todo anda bien y puedo manejar
> >> > > > Persona normalmente.
> >> > > > Como deberia agregar la definicion de la clase Medico??
>
> >> > > > Gracias
>
> >> > > > --
> >> > > > Para escribir al Grupo, hágalo a esta dirección:
> >> > > [email protected]
> >> > > > Para más, visite:http://groups.google.com/group/NHibernate-Hispano
>
> >> > > --
> >> > > Para escribir al Grupo, hágalo a esta dirección:
> >> > > [email protected]
> >> > > Para más, visite:http://groups.google.com/group/NHibernate-Hispano
>
> >> --
> >> Para escribir al Grupo, hágalo a esta dirección:
> >> [email protected]
> >> Para más, visite:http://groups.google.com/group/NHibernate-Hispano
>
> > --
> > Para escribir al Grupo, hágalo a esta dirección:
> > [email protected]
> > Para más, visite:http://groups.google.com/group/NHibernate-Hispano

-- 
Para escribir al Grupo, hágalo a esta dirección: 
[email protected]
Para más, visite: http://groups.google.com/group/NHibernate-Hispano

Responder a