0 Replies Latest reply on Mar 26, 2004 7:12 PM by Iury Lira Ribeiro

    The primary key class must override hashCode when i havecomp

    Iury Lira Ribeiro Newbie

      I use Jboss 3.3.2, but when i am deploing this ejb 1.1 cmp bean, this mesage show me :

      Warning: The primary key class must override hashCode().

      2004-03-26 21:22:17,937 ERROR [org.jboss.deployment.MainDeployer] could not create deployment: file:/C:/Desenvolvimento/jboss-3.2.3/server/default/deploy/InternacaoEquipamentoEEJB.jar
      org.jboss.deployment.DeploymentException: Verification of Enterprise Beans failed, see above for error messages.

      My Code:

      package cesar.datasussisreg.internacaopkg;

      import java.io.*;

      public final class InternacaoEquipamentoPK implements Serializable {

      public long codigoInternacao;
      public int codigoEquipamento;

      /**
      * Construtor da clase
      */
      public InternacaoEquipamentoPK() {
      }

      /**
      * Construtor da clase
      *
      * @param codigoInternacao O código da Internacao
      * @param codigoEquipamento O código do equipamento
      *
      */
      public InternacaoEquipamentoPK(long codigoInternacao, int codigoEquipamento) {
      this.codigoInternacao = codigoInternacao;
      this.codigoEquipamento = codigoEquipamento;
      }


      /**
      * Retorna o código da Internacao
      *
      * @return O código da Internacao
      *
      */
      public long getCodigoInternacao() {
      return this.codigoInternacao;
      }

      /**
      * Seta o código da Internacao
      *
      * @param codigoInternacao O codigo da Internacao
      *
      */
      public void setCodigoInternacao(long codigoInternacao) {
      this.codigoInternacao = codigoInternacao;
      }

      /**
      * Retorna o código do Equipamento
      *
      * @return O código do Equipamento
      *
      */
      public int getCodigoEquipamento() {
      return codigoEquipamento;
      }

      /**
      * Seta o código do Equipamento
      *
      * @param codigoEquipamento O codigo do Equipamento
      *
      */
      public void setCodigoEquipamento(int codigoEquipamento) {
      this.codigoEquipamento = codigoEquipamento;
      }

      /**
      * Informa se este objeto é igual a outro
      *
      * @param obj Objeto a ser comparado
      *
      * @return true caso o objeto seja igual,
      * false caso contrário
      *
      */
      public boolean equals(Object obj) {
      boolean retorno = false;
      if ((obj instanceof InternacaoEquipamentoPK) &&
      (this.codigoInternacao == ((InternacaoEquipamentoPK) obj).getCodigoInternacao()) &&
      (this.codigoEquipamento == ((InternacaoEquipamentoPK) obj).getCodigoEquipamento())) {

      retorno = true;
      }

      return retorno;
      }

      /**
      * Retorna o valor hashcode do objeto
      */
      public int hashCode() {
      StringBuffer buffer = new StringBuffer();
      int hashcode;

      buffer.append(this.codigoInternacao);
      buffer.append(this.codigoEquipamento);

      hashcode = buffer.hashCode();


      return hashcode;
      }


      }

      please

      anybody help me