Spring JMS com ActiveMQ

3 respostas
A

Estou desenvolvendo uma aplicação J2EE com o Spring JMS Template mais o ActiveMQ message broker.
Consiste em enviar uma mensagem de string para um servidor ActiveMQ. Este recebe a mensagem em um spring bean e exibe-a no console.

Os fontes Java e o application_context.xml estão abaixo, só preciso que alguém me dê uma help em como implementar numa pagina index.jsp o envio por um formulário da string citada para o provedor JMS.

// SimpleJmsListener.java

import javax.jms.JMSException;

import javax.jms.Message;

import javax.jms.MessageListener;

import javax.jms.TextMessage;

public class SimpleJmsListener implements MessageListener {

public void onMessage(Message message) {

if (message instanceof TextMessage) {

try {

System.out.println(((TextMessage) message).getText());

} catch (JMSException ex) {

throw new RuntimeException(ex);

}

} else {

throw new IllegalArgumentException(Message must be of type TextMessage);

}

}

}
// SimpleJmsSender.java

import javax.jms.<em>;

import org.springframework.jms.core.</em>;

public class SimpleJmsSender {

private JmsTemplate jmsTemplate;
private Destination destination;

public void sendMessage() {

jmsTemplate.convertAndSend(Example Message);

}
public JmsTemplate getTemplate() {

return jmsTemplate;

}
public void setTemplate(JmsTemplate jmsTemplate) {

this.jmsTemplate = jmsTemplate;

}
public Destination getDestination() {

return destination;

}
public void setDestination(Destination destination) {

this.destination = destination;

}

}

application context.XML :

- - - - - - - - - - - -
Obrigado

atlantico.

3 Respostas

Luca

Olá

Conheço JMS e mensagens. Nada sei do Spring JMS. Mas uso o ActiveMQ. Tentei entender seu problema e não consegui.

Sinto muito, código sem identação é muito difícil de ler.

[]s
Luca

Kenobi

Cara, para trabalhar com jsp, eu sugiro que você utilize o módulo MVC do Spring.

Assim você pode criar seu controller, um SimpleFormController, já que vai trabalhar com formulário e neste você faz DI do seu serviço.

Vai pegar o objeto Command que vem da tela, um bean que você defininu que encapsulará todos os detalhes do formulário.

Get a propriedade e seta no seu serviço JMS.

Simples e rápido. Se tiver dificuldade com o MVC dá um tok

[]´s

L

Prezados, aproveitando um gancho vou explicar o meu problema.

Estou pensando em uma arquitetura para resolver o meu problema, preciso criar um sistema que interaja com outro sistema desenvolvido em C++, este sistema em C++, enviará para o meu sistema uma mensagem de texto, eu preciso capturar esta mensagem de texto em meu application server e transmitir esta mensagens para os clientes do meu sistema, detalhando melhor, eu preciso enviar esta mensagem que veio do sistema de terceiro para os meus clientes que estão usando o sistema neste momento e atualizar um mapa que é exibido na tela do cliente, quase que em tempo real, estes mapas no cliente será utilizado a ferramenta da autodesk mapguide enterprise 2010.

Eu pensei no ActiveMQ para tratar as mensagens, spring, jms e dwr para fazer o envio para os clientes via ajax reverso, caso o ActiveMQ não disponha esta funcionalidade.

Alguém sugeria algo melhor, ou poderia me explicar melhor se isto que estou pensando funcionará?

Até breve

Criado 22 de setembro de 2006
Ultima resposta 9 de jul. de 2009
Respostas 3
Participantes 4