Inheritance in hibernate 2

5 respostas
rodrigousp

Pessoal,

Fiz uma interface herdar de Serializable.
Depois, todo ejb implementava esta interface.
Mas… isto não funciona !!!
Por que ???

*/
public interface PojoInterface extends Serializable{

	public boolean isActive();
	public String getId();
}
/**
 * @hibernate.class   
 * @author rodrigo
 * criado em 26/01/2004
 */
public class Requirement implements PojoInterface {
	private String id;
	private boolean active;

	private String number;

	private String text;

// ... (etc, etc, etc)
}

e a mensagem de erro

5 Respostas

rodrigousp

ejb não … durrr… de tanto ler os artigos de ejb aqui no forum eu fiquei com isto na cabeça. Eu quis dizer pojos. Bom, a dúvida continua…

ricardolecheta

isto é quando vc não adicionou a classe no hibernate.cfg.xml ou no Configuration

rodrigousp

Ok … vou dar mais recursos para vcs analizarem.

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE server>

<!-- Arquivo gerado automaticamente - não edite!! -->

<server>
   <mbean code="net.sf.hibernate.jmx.HibernateService" name="jboss.jca:service=Hibernate">
       <depends>jboss.jca:service=RARDeployer</depends>
       <attribute name="MapResources">br/com/imagetec/pag/pojos/Audit.hbm.xml,br/com/imagetec/pag/pojos/Standard.hbm.xml,br/com/imagetec/pag/pojos/InternalAuditReport.hbm.xml,br/com/imagetec/pag/pojos/EnterpriseProcess.hbm.xml,br/com/imagetec/pag/pojos/Requirement.hbm.xml,br/com/imagetec/pag/pojos/ReportNote.hbm.xml,br/com/imagetec/pag/pojos/InspectedProcess.hbm.xml</attribute>
       <attribute name="JndiName">java:/pag/hibernate</attribute>
       <attribute name="Datasource">java:/DefaultDS</attribute>
       <attribute name="Dialect">net.sf.hibernate.dialect.HSQLDialect</attribute>
       <attribute name="UseOuterJoin">true</attribute>
       <attribute name="ShowSql">false</attribute>
       <attribute name="UserTransactionName">UserTransaction</attribute>
       <attribute name="TransactionStrategy">net.sf.hibernate.transaction.JTATransactionFactory</attribute>
       <attribute name="TransactionManagerLookupStrategy">net.sf.hibernate.transaction.JBossTransactionManagerLookup</attribute>
   </mbean>

</server>

e o mapping…

<?xml version="1.0"?>

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

<hibernate-mapping>
    <class
        name="br.com.imagetec.pag.pojos.Requirement"
        dynamic-update="false"
        dynamic-insert="false"
    >

        <id
            name="id"
            column="id"
            type="java.lang.String"
            length="32"
        >
            <generator class="uuid.hex">
            </generator>
        </id>

        <property
            name="number"
            type="java.lang.String"
            update="true"
            insert="true"
            column="number"
            length="10"
            not-null="true"
        />

        <property
            name="text"
            type="java.lang.String"
            update="true"
            insert="true"
            column="text"
        />

        <property
            name="active"
            type="boolean"
            update="true"
            insert="true"
            column="active"
            not-null="true"
        />

        <!--
            To add non XDoclet property mappings, create a file named
                hibernate-properties-Requirement.xml
            containing the additional properties and place it in your merge dir.
        -->

    </class>

</hibernate-mapping>
ricardolecheta

tente isolar o problema, se fizer um testcase bem simples funciona?

isto acontece somente quando vc implementa essa interface?

rodrigousp

Pode crer … mas eu acho que descobri o problema…
O hot deploy do jboss precisa reiniciar o mapping das classes alteradas pelo deploy, senão, não funciona.

Valeu pela força mais uma vez Paulo e Ricardo

Criado 10 de fevereiro de 2004
Ultima resposta 10 de fev. de 2004
Respostas 5
Participantes 2