有人能帮助我。这里是我的问题:用jms接收对象java
我尝试发送的对象与JMS(这部分作品),并与JMS接受它。 我的对象很简单。 3个字符串,3个int和一个布尔值。
这是没有问题的connexion或类似的东西。我收到这个东西,但好像我一个接一个地收到了所有东西。
这里是我的消息监听:
MessageListener listner = new MessageListener() {
public void onMessage(Message message) {
ObectToSend yo=null;
try {
if (message instanceof ObjectMessage) {
ObjectMessage myMessage = (ObjectMessage) message;
System.err.println("test");
yo = (ObectToSend) myMessage.getObject();
System.err.println("test2");
System.err.println(yo.entite + " " + yo.error + " " + yo.idGloreg + " " + yo.indPerso + " " + yo.nom + " " + yo.prenom + " " + yo.nom);
}
} catch (JMSException e) {
System.out.println("Caught:" + e);
e.printStackTrace();
}
}
};
,我的发送部分:
Serializable ObectTest = new ObectToSend("pro", "enc", 134, 10, true, "yayaya", 0);
MessageProducer producer = session.createProducer(topic);
producer.setDeliveryMode(DeliveryMode.PERSISTENT);
ObjectMessage message = session.createObjectMessage();
message.setObject(ObectTest);
connection.start();
producer.send(message);
最后在这里我想送(在receiver.java和sender.java)什么:
public static class ObectToSend implements Serializable{
private static final long serialVersionUID = 1L;
String prenom;
String nom;
int idGloreg;
int indPerso;
boolean ok;
String entite;
int error;
ObectToSend(String prenomP, String nomP, int idGloregP, int indPersoP, boolean okP, String entiteP, int errorP){
prenom = prenomP ;
nom= nomP;
idGloreg = idGloregP;
indPerso = indPersoP;
ok = okP;
entite= entiteP;
error = errorP;
}
}
我的控制台:
test
test
test
test
test
test
test
如果有人能告诉我什么问题会很好。我不明白。我的主题/队列/同步/异步的textmessage工作得很好。它来对象和.... 看来问题在这里: yo =(ObectToSend)myMessage.getObject(); 但.....
看起来你正在抛出一个'RuntimeException'回到JMS容器。抓住并记录堆栈跟踪。 –
Thx为您的帮助,但我发现我的错误。 –