Recuperar los datos de una sesion
Publicado por David (15 intervenciones) el 19/05/2018 11:27:44
Buenos días:
Os comento, tengo algún problema al recuperar los datos, Lo que necesito es que No se cambie de sesion y recuperar los datos mediante esa sesion. Os copio lo que tengo hasta ahora a ver y al final del todo os dejo lo que pide el ejercicio.
En la clase almacen, en el metodo recuperar y almacenar, cuando intento poner sesion.getAttribute("almacen"); me da error y no se como recuperar sino esa sesion.
Tambien decir que no se si estoy haciendo bien el
@WebServelt(name="....." urlPatterns = {"/delegados/Almacen"} porque al no ser un JSP no se si con url puede valir.
Un saludo y gracias de antemano:
Esto es el enunciado del ejercicio:
En una aplicación web se ha creado la siguiente clase para almacenar datos:
CUESTIÓN 1. Completa el método almacenar() para que se almacenen los datos (producto y cantidad) en la sesión dentro de un HashMap<String, Double>. Completa el método recuperar() para retornar el mapa con los datos, de forma que si todavía no hay ningún dato almacenado se devuelva un HashMap vacío.
CUESTIÓN 2 . Se quiere crear una página JSP que utilice la clase Utilidad. La página debe incluir la siguiente tabla:
Agrega el código necesario para que se muestren en la tabla una fila por cada productos almacenado. Utiliza solamente etiquetas JSP, sin ninguna instrucción de Java.
Os comento, tengo algún problema al recuperar los datos, Lo que necesito es que No se cambie de sesion y recuperar los datos mediante esa sesion. Os copio lo que tengo hasta ahora a ver y al final del todo os dejo lo que pide el ejercicio.
En la clase almacen, en el metodo recuperar y almacenar, cuando intento poner sesion.getAttribute("almacen"); me da error y no se como recuperar sino esa sesion.
Tambien decir que no se si estoy haciendo bien el
@WebServelt(name="....." urlPatterns = {"/delegados/Almacen"} porque al no ser un JSP no se si con url puede valir.
Un saludo y gracias de antemano:
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
33
34
35
36
37
38
public class Almacen {
private HttpSession sesion;
public Almacen() {
}
public void setSesion(HttpSession sesion) {
this.sesion = sesion;
}
public void almacenar(String producto, Double cantidad) {
sesion.getAttribute("almacen");
HashMap<String, Double> hm = new HashMap<>();
hm.put(producto, cantidad);
}
public Map<String, Double> recuperar() {
sesion.getAttribute("almacen");
HashMap<String, Double> map = new HashMap<>();
return map;
}
}
@WebServlet(name = "ServletAlmacen", urlPatterns = {"/delegados/Almacen"})
public class ServletAlmacen extends HttpServlet {
protected void processRequest(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html;charset=UTF-8");
HttpSession misession= request.getSession(true);
Almacen almacen= new Almacen();
misession.setAttribute("almacen",almacen);
}
Esto es el enunciado del ejercicio:
En una aplicación web se ha creado la siguiente clase para almacenar datos:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
package delegados;
public class Almacen {
private HttpSession sesion;
public Almacen() {
}
public void setSesion(HttpSession sesion) {
this.sesion = sesion;
}
public void almacenar(String producto, Double cantidad) {
// ... COMPLETAR CÓDIGO
}
public Map<String, Double> recuperar() {
// ... COMPLETAR CÓDIGO
}
}
CUESTIÓN 1. Completa el método almacenar() para que se almacenen los datos (producto y cantidad) en la sesión dentro de un HashMap<String, Double>. Completa el método recuperar() para retornar el mapa con los datos, de forma que si todavía no hay ningún dato almacenado se devuelva un HashMap vacío.
CUESTIÓN 2 . Se quiere crear una página JSP que utilice la clase Utilidad. La página debe incluir la siguiente tabla:
1
2
3
4
5
<body>
<table border="1">
<tr><th>Producto</th><th>Cantidad</th></tr>
</table>
</body>
Agrega el código necesario para que se muestren en la tabla una fila por cada productos almacenado. Utiliza solamente etiquetas JSP, sin ninguna instrucción de Java.
Valora esta pregunta
0