Troca de mensagem EJB

2 respostas
E

Bom dia.

Preciso de implementar no meu sistema uma troca de mensagem com um outro sistema por meio de um ejb.

O meu sistema receberá as mensagens, processá-las e retorná-las.

1-Criei a interface remota:

public interface TratadorMensagens
{
   /**
    * Método responsável por processar uma mensagem e retornar uma resposta do processamento.
    * @param mensagem - Mensagem a ser processada.
    * @return A resposta do processamento.
    * @exception RemoteException
    */
   public String[] processa(String mensagem) throws RemoteException;

}

2-Criei a interface home:

public interface TratadorMensagensHome extends EJBHome
{
   /**
    * Cria uma instância do componente.
    * @return A interface remota do componente.
    * @exception RemoteException
    * @exception CreateException
    */
   public TratadorMensagens create() throws RemoteException, CreateException;
}

3- Criei meu Session Bean:

public class TratadorMensagensClientBean extends AbstractSession
{
   public void ejbCreate() throws CreateException
   {
   }


   public String[] processa(String mensagem)
   {

   }

}

Bem, agora preciso chamar o meu método de negócio. Este método já está pronto numa outra classe mas,
não sei como chamá-lo…

1- Preciso fazer alguma configuração xml ?
2- Preciso gerar o jar com quais classes para colocar no client ?

2 Respostas

Andre_Fonseca

Não seria mais facil você usar um MDB (Message Driven Bean) e não um Session Bean para isso? E você precisa usar EJB 2?? Esse monte de interfaces é uma droga heim??

Veja alguns exemplos

http://www.java2s.com/Code/Java/EJB3/EJBTutorialfromJBossdemoformessagedrivenbean.htm

http://www.java2s.com/Code/Java/EJB3/EJBTutorialfromJBossConsumerproducer.htm

Laubstein_M_cio

Talvez MDB não fosse o mais fácil, mas a melhor ->dessas<- alternativas.

Bem, se essa sua classe de negocio também é um EJB, você pode injeta-la utilizando a anotação @EJB, caso for POJO uttilize JNDI.

Criado 13 de novembro de 2009
Ultima resposta 13 de nov. de 2009
Respostas 2
Participantes 3