esercizio e test usando jms e mdb

This commit is contained in:
2015-05-31 21:15:23 +02:00
parent b4e795d64a
commit 620edb5049
15 changed files with 517 additions and 3 deletions

40
exercise2/MDBBook.java Normal file
View File

@@ -0,0 +1,40 @@
package exercise2;
import javax.ejb.MessageDriven;
import javax.inject.Inject;
import javax.jms.JMSException;
import javax.jms.Message;
import javax.jms.MessageListener;
import java.util.Iterator;
import java.util.List;
import java.util.logging.Logger;
/**
* Created by Giovanni on 31/05/2015.
*/
@MessageDriven(mappedName = "jms/javaee7/Topic")
public class MDBBook implements MessageListener {
@Inject
Logger l;
@Inject
EJBBook e;
public void onMessage(Message message) {
try {
BookMessage m = message.getBody(BookMessage.class);
l.info("Messaggio: " + m.getIsbn() + " " + m.getPrice());
List<Book> lb = e.findbyisbn(m.getIsbn());
Iterator<Book>ib = lb.iterator();
if (ib.hasNext()){
Book b = ib.next();
b.setPrice(m.getPrice());
e.update_book(b);
}
} catch (JMSException e) {
e.printStackTrace();
}
}
}