You are viewing a plain text version of this content. The canonical link for it is here.
Posted to ojb-user@db.apache.org by Fernando Queiroz Fonseca <fe...@eletrica.ufu.br> on 2004/02/26 02:38:31 UTC
many-to-one relation : help
Hi Armin thank's for the previous aid, now functions, using to advantage the
email would like to know as it makes to inside map an object of a
class-descriptor, I until then used hibernate and in it it used the
following code in the describer:
<many-to-one name="usuario"
class="br.com.fernandoqueiroz.sgbd.negocio.Usuario" not-null="true">
<column name="id_usuario"/>
</many-to-one>
I am thankful since already Obliged !
----- Original Message -----
From: "Armin Waibel" <ar...@apache.org>
To: "OJB Users List" <oj...@db.apache.org>
Sent: Wednesday, February 25, 2004 9:05 PM
Subject: Re: Full Stack for : Can not init Identity for given object
> Hi Fernando,
>
> the exception message says what's going wrong
>
> > Caused by:
> org.apache.ojb.broker.metadata.ClassNotPersistenceCapableException:
> org.apache.ojb.broker.util.sequence.HighLowSequence not found in OJB
> Repository
> >
>
> If you use the SequenceManagerHighLowImpl for key generation, you need:
>
> a) org.apache.ojb.broker.util.sequence.HighLowSequence class-descriptor
> in your repository file
> b) an table
> CREATE TABLE OJB_HL_SEQ
> (
> TABLENAME VARCHAR (175),
> FIELDNAME VARCHAR (70),
> MAX_KEY BIGINT,
> GRAB_SIZE integer,
> VERSION integer,
> PRIMARY KEY(TABLENAME,FIELDNAME)
> );
> >>><!-- The mappings for the tutorial classes are placed here to make it
> >>> easier to find them for OJB newbies.
> >>> Please remove them if you don't need them in your environment. -->
> >>>
> >>><class-descriptor class="br.com.fernandoqueiroz.sgbd.negocio.Usuario"
table="TUSUARIO">
> >>> <field-descriptor sequence-name="MAX" name="id_usuario"
column="id_usuario" jdbc-type="INTEGER" primarykey="true"
autoincrement="true"/>
> >>> <field-descriptor name="usuario" column="usuario"
jdbc-type="VARCHAR"/>
> >>> <field-descriptor name="senha" column="senha" jdbc-type="VARCHAR"/>
> >>> <field-descriptor name="email" column="email" jdbc-type="VARCHAR"/>
> >>> <field-descriptor name="cpf" column="cpf" jdbc-type="VARCHAR"/>
> >>></class-descriptor>
> >>><class-descriptor
class="br.com.fernandoqueiroz.sgbd.negocio.DadoPessoal"
table="TDADO_PESSOAL">
> >>> <field-descriptor name="id" column="ID_DADO_PESSOAL"
jdbc-type="INTEGER" primarykey="true" autoincrement="true"/>
> >>> <field-descriptor name="nome" column="nome" jdbc-type="VARCHAR"/>
> >>> <field-descriptor name="sobrenome" column="sobrenome"
jdbc-type="VARCHAR"/>
> >>> <field-descriptor name="nacionalidade" column="nacionalidade"
jdbc-type="VARCHAR"/>
> >>> <field-descriptor name="cidade_nascimento"
column="CIDADE_NASCIMENTO" jdbc-type="VARCHAR"/>
> >>> <field-descriptor name="cpf" column="cpf" jdbc-type="VARCHAR"/>
> >>> <field-descriptor name="data_nascimento" column="data_nascimento"
jdbc-type="VARCHAR"/>
> >>> <field-descriptor name="sexo" column="sexo" jdbc-type="VARCHAR"/>
> >>> <field-descriptor name="rg" column="rg" jdbc-type="VARCHAR"/>
> >>> <field-descriptor name="rg_orgao" column="rg_orgao"
jdbc-type="VARCHAR"/>
> >>> <field-descriptor name="rg_uf" column="rg_uf" jdbc-type="VARCHAR"/>
> >>> <field-descriptor name="rg_data_emissao" column="rg_data_emissao"
jdbc-type="VARCHAR"/>
> >>> <field-descriptor name="nro_passaporte" column="nro_passaporte"
jdbc-type="VARCHAR"/>
> >>> <field-descriptor name="nome_pai" column="nome_pai"
jdbc-type="VARCHAR"/>
> >>> <field-descriptor name="nome_mae" column="nome_mae"
jdbc-type="VARCHAR"/>
> >>> <field-descriptor name="titulo_eleitor" column="titulo_eleitor"
jdbc-type="VARCHAR"/>
> >>> <field-descriptor name="secao_eleitor" column="secao_eleitor"
jdbc-type="VARCHAR"/>
> >>> <field-descriptor name="zona_eleitor" column="zona_eleitor"
jdbc-type="VARCHAR"/>
> >>> <field-descriptor name="nome_citacao" column="NOME_CITACAO"
jdbc-type="VARCHAR"/>
> >>> <reference-descriptor name="usuario"
class-ref="br.com.fernandoqueiroz.sgbd.negocio.Usuario">
> >>> <foreignkey field-ref="id_usuario"/>
> >>> </reference-descriptor>
> >>></class-descriptor>
> >>>
> >>>-------------------------------------------------------
> >>>Fernando Queiroz Fonseca
> >>>Analista e Programador Java/J2EE
> >>>Uberlândia - MG - Brasil
> >>>+55-0xx34-8801-9072
> >>>www.fernandoqueiroz.com.br
> >>>contato@fernandoqueiroz.com.br
> >>>-------------------------------------------------------
---------------------------------------------------------------------
To unsubscribe, e-mail: ojb-user-unsubscribe@db.apache.org
For additional commands, e-mail: ojb-user-help@db.apache.org
Re: many-to-one relation : help
Posted by Armin Waibel <ar...@apache.org>.
Hi Fernando,
I'm not an expert in the mapping stuff, so others can help more.
OJB don't have an extra element for many-to-one, you can solve this by
using a one to many reference (collection-descriptor) and one to one
reference (reference-descriptor).
I never used Hibernate, what's the different between many-to-one
reference from Many to Usuario and a one-to-one reference from Many to
Usuario? In both cases you ask for many.getUsuario() - or I'm wrong?
regards,
Armin
Fernando Queiroz Fonseca wrote:
> Hi Armin thank's for the previous aid, now functions, using to advantage the
> email would like to know as it makes to inside map an object of a
> class-descriptor, I until then used hibernate and in it it used the
> following code in the describer:
>
> <many-to-one name="usuario"
> class="br.com.fernandoqueiroz.sgbd.negocio.Usuario" not-null="true">
> <column name="id_usuario"/>
> </many-to-one>
>
> I am thankful since already Obliged !
>
>
> ----- Original Message -----
> From: "Armin Waibel" <ar...@apache.org>
> To: "OJB Users List" <oj...@db.apache.org>
> Sent: Wednesday, February 25, 2004 9:05 PM
> Subject: Re: Full Stack for : Can not init Identity for given object
>
>
>
>>Hi Fernando,
>>
>>the exception message says what's going wrong
>>
>> > Caused by:
>>org.apache.ojb.broker.metadata.ClassNotPersistenceCapableException:
>>org.apache.ojb.broker.util.sequence.HighLowSequence not found in OJB
>>Repository
>> >
>>
>>If you use the SequenceManagerHighLowImpl for key generation, you need:
>>
>>a) org.apache.ojb.broker.util.sequence.HighLowSequence class-descriptor
>>in your repository file
>>b) an table
>>CREATE TABLE OJB_HL_SEQ
>>(
>> TABLENAME VARCHAR (175),
>> FIELDNAME VARCHAR (70),
>> MAX_KEY BIGINT,
>> GRAB_SIZE integer,
>> VERSION integer,
>> PRIMARY KEY(TABLENAME,FIELDNAME)
>>);
>
>
>
>>>>><!-- The mappings for the tutorial classes are placed here to make it
>>>>> easier to find them for OJB newbies.
>>>>> Please remove them if you don't need them in your environment. -->
>>>>>
>>>>><class-descriptor class="br.com.fernandoqueiroz.sgbd.negocio.Usuario"
>
> table="TUSUARIO">
>
>>>>> <field-descriptor sequence-name="MAX" name="id_usuario"
>
> column="id_usuario" jdbc-type="INTEGER" primarykey="true"
> autoincrement="true"/>
>
>>>>> <field-descriptor name="usuario" column="usuario"
>
> jdbc-type="VARCHAR"/>
>
>>>>> <field-descriptor name="senha" column="senha" jdbc-type="VARCHAR"/>
>>>>> <field-descriptor name="email" column="email" jdbc-type="VARCHAR"/>
>>>>> <field-descriptor name="cpf" column="cpf" jdbc-type="VARCHAR"/>
>>>>></class-descriptor>
>>>>><class-descriptor
>
> class="br.com.fernandoqueiroz.sgbd.negocio.DadoPessoal"
> table="TDADO_PESSOAL">
>
>>>>> <field-descriptor name="id" column="ID_DADO_PESSOAL"
>
> jdbc-type="INTEGER" primarykey="true" autoincrement="true"/>
>
>>>>> <field-descriptor name="nome" column="nome" jdbc-type="VARCHAR"/>
>>>>> <field-descriptor name="sobrenome" column="sobrenome"
>
> jdbc-type="VARCHAR"/>
>
>>>>> <field-descriptor name="nacionalidade" column="nacionalidade"
>
> jdbc-type="VARCHAR"/>
>
>>>>> <field-descriptor name="cidade_nascimento"
>
> column="CIDADE_NASCIMENTO" jdbc-type="VARCHAR"/>
>
>>>>> <field-descriptor name="cpf" column="cpf" jdbc-type="VARCHAR"/>
>>>>> <field-descriptor name="data_nascimento" column="data_nascimento"
>
> jdbc-type="VARCHAR"/>
>
>>>>> <field-descriptor name="sexo" column="sexo" jdbc-type="VARCHAR"/>
>>>>> <field-descriptor name="rg" column="rg" jdbc-type="VARCHAR"/>
>>>>> <field-descriptor name="rg_orgao" column="rg_orgao"
>
> jdbc-type="VARCHAR"/>
>
>>>>> <field-descriptor name="rg_uf" column="rg_uf" jdbc-type="VARCHAR"/>
>>>>> <field-descriptor name="rg_data_emissao" column="rg_data_emissao"
>
> jdbc-type="VARCHAR"/>
>
>>>>> <field-descriptor name="nro_passaporte" column="nro_passaporte"
>
> jdbc-type="VARCHAR"/>
>
>>>>> <field-descriptor name="nome_pai" column="nome_pai"
>
> jdbc-type="VARCHAR"/>
>
>>>>> <field-descriptor name="nome_mae" column="nome_mae"
>
> jdbc-type="VARCHAR"/>
>
>>>>> <field-descriptor name="titulo_eleitor" column="titulo_eleitor"
>
> jdbc-type="VARCHAR"/>
>
>>>>> <field-descriptor name="secao_eleitor" column="secao_eleitor"
>
> jdbc-type="VARCHAR"/>
>
>>>>> <field-descriptor name="zona_eleitor" column="zona_eleitor"
>
> jdbc-type="VARCHAR"/>
>
>>>>> <field-descriptor name="nome_citacao" column="NOME_CITACAO"
>
> jdbc-type="VARCHAR"/>
>
>>>>> <reference-descriptor name="usuario"
>
> class-ref="br.com.fernandoqueiroz.sgbd.negocio.Usuario">
>
>>>>> <foreignkey field-ref="id_usuario"/>
>>>>> </reference-descriptor>
>>>>></class-descriptor>
>>>>>
>>>>>-------------------------------------------------------
>>>>>Fernando Queiroz Fonseca
>>>>>Analista e Programador Java/J2EE
>>>>>Uberlândia - MG - Brasil
>>>>>+55-0xx34-8801-9072
>>>>>www.fernandoqueiroz.com.br
>>>>>contato@fernandoqueiroz.com.br
>>>>>-------------------------------------------------------
>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: ojb-user-unsubscribe@db.apache.org
> For additional commands, e-mail: ojb-user-help@db.apache.org
>
>
>
---------------------------------------------------------------------
To unsubscribe, e-mail: ojb-user-unsubscribe@db.apache.org
For additional commands, e-mail: ojb-user-help@db.apache.org