Senhores,
Estou tentando chamar uma pagina JSP por outra pagina, passando o parâmetro que vem de um list, mas não consigo pegar o valor do Id:
[code]<%@page contentType=“text/html” pageEncoding=“UTF-8”%>
<%@taglib uri=“http://java.sun.com/jsp/jstl/core” prefix=“c”%>
<%@taglib prefix=“sql” uri=“http://java.sun.com/jsp/jstl/sql” %>
Categorias
Categorias
<sql:query dataSource="${conexao}" var="consulta">
select idcategorias, categoria from categorias order by categoria
</sql:query>
<td><a href="incluircategorias.jsp">Incluir nova Categoria</a></td>
<table>
<c:forEach var="linha" items="${consulta.rows}">
<tr>
<td><a href="mantercategorias.jsp"><c:out value="${linha.categoria}"/></a></td>
<c:set var="id" value="${linha.idcategorias}"></c:set> //Preciso passar o valor desse id para poder deletar
<% String codigo = request.getParameter("id"); %>
<td><a href="delete.jsp?id=<%= codigo %>"><c:out value="excluir"/></a></td>
</tr>
</c:forEach>
</table>
</body>
[/code]
Obs: precisa ser com JSTL, não pode ser com JavaScript
<c:set var="id" value="${linha.idcategorias}"></c:set> //Preciso passar o valor desse id para poder deletar
<% String codigo = request.getParameter("id"); %>
<td><a href="delete.jsp?id=<%= codigo %>">
Meu, gambiarra é pouco, não?
Se está utilizando JSTL por que encher de scriptlet no código? Coisa feia e ridícula.
Isso tudo ali de cima por ser substituído por
<c:out value="<a href=\"delete.jsp?id=\"${linha.idcategorias}\">Excluir</a>"/>
Amigo, obrigado pela ajuda!
Na verdade estou estudando melhor essa parte de JSTL, por isso estou testando algumas coisas.
De qualquer forma agradeço a ajuda!
Porem tá aparecendo assim no browser:
Categorias
Incluir nova Categoria
categoria1 <a href="delete.jsp?id="1">Excluir</a>
Ops, fazer 3001 coisas ao mesmo tempo não dá certo.
Veja quão simples isso pode ficar:
<c:out value="<a href=\"delete.jsp?id=\"${linha.idcategorias}\">Excluir</a>"/>
Se torna
<a href="delete.jsp?id=${linha.idcategorias}">Excluir</a>
A EL (aquilo que começa com ${ e termina em }) é interpretada por completo, independente de estar em uma tag JSTL.
Aliás, é possível utilizar EL sem nenhuma linha ou taglib referenciando JSTL.
Cara muito obrigado pela ajuda e atenção!
Outra dica, após estudar essa parte de conexão com o banco, esqueça que é possível acessar banco de dados diretamente da JSP.
A função da JSP é exibir e receber informações oriundas ou que serão utilizadas para o processamento.
Consultas são feitas em classes específicas.
[quote=drsmachado]Outra dica, após estudar essa parte de conexão com o banco, esqueça que é possível acessar banco de dados diretamente da JSP.
A função da JSP é exibir e receber informações oriundas ou que serão utilizadas para o processamento.
Consultas são feitas em classes específicas.[/quote]
Ok! Isso eu sei! É como eu te disse estou apenas estudando e vendo os recursos que posso utilizar!
Mas de qualquer forma obrigado por reforçar e valeu a dica!