Lister le resultat d'une requête
Bonjour,
je découvre les ejb3 je peux écrire dans les tables comme je le souhaite avec ejb3 via un servlet ou une page JSF mais j'accroche pas vraiment sur la manière de lister des résultats d'une requète ejb-ql
donc je vous met le code de mon ejb session statefull
la methode qui permet d'introduire des données et qui fonctionne parfaitement
pour vous indiqué que je n'ai pas de soucis de configuration avec mes entitys
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28
| public boolean addadresse(String vville, String vrue, String vnumrue, String vpays, String vcp) {
EntityManagerFactory emf = Persistence.createEntityManagerFactory("netbrain-ejbPU");
EntityManager em = emf.createEntityManager();
Pays p = new Pays();
p.setPays(vpays);
Ville cpv = new Ville();
cpv.setVille(vville);
cpv.setIdpays(p);
Adresse adr = new Adresse();
adr.setBp(vnumrue);
adr.setIdville(cpv);
adr.setRue(vrue);
em.getTransaction().begin();
em.persist(p);
em.persist(cpv);
em.persist(adr);
em.getTransaction().commit();
em.close();
emf.close();
return true;
} |
======= Voici la methode que j'utilise pour retourné un generic d'object =====
Code:
1 2 3 4 5 6 7 8 9 10
| public List<Object[]> selectadresse() {
EntityManagerFactory emf = Persistence.createEntityManagerFactory("netbrain-ejbPU");
EntityManager em = emf.createEntityManager();
String texteRequête = "SELECT * FROM Adresse AS Adresse";
Query requete = em.createQuery(texteRequête);
List<Object[]> resultat = requete.getResultList();
return resultat;
} |
=======
et pour finir voici le code de ma servlet
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32
| protected void processRequest(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html;charset=UTF-8");
PrintWriter out = response.getWriter();
List<Object[]> varadr;
try {
//* TODO output your page here
out.println("<html>");
out.println("<head>");
out.println("<title>Servlet gaetan</title>");
out.println("</head>");
out.println("<body>");
out.println("<h1>Servlet gaetan at " + request.getContextPath () + "</h1>");
// out.println("activeconnDB status : " + adresseBean.activeconnDB());
out.println("addadress status : " + adresseBean.addadresse("dupuid", "chaussee", "178", "Russiell", "7800"));
varadr = adresseBean.selectadresse();
for(Object[] unadresse: varadr)
{
out.println("adresse 2 listing" + (String) unadresse[2]+ "<br/>");
out.println("adresse 3 Listing" + (String) unadresse[3] + "<br/>");
}
//
out.println("</body>");
out.println("</html>");
//*/
// adresseBean.activeconnDB();
// adresseBean.addadresse("dupuid", "rue de bruxelles", "178", "Russie", "7800");
// adresseBean.closeconnDB();
} finally {
out.close();
} |
Je vous remercie d'avance pour votre aide.