[Dúvida] Form (HTML) + Parâmetros (JSP)

4 respostas
Nicolas_Fernandes

Olá, pessoal do GUJ!

Tudo beleza??

Estou com uma dúvida aqui…

Eu tenho lá minha JSP, com um botão para pesquisar a partir do que o usuário escrever no input. Só que eu queria passar vários parâmetros além do texto da input. Só que não vai. Olha o que estou fazendo:

<form action="/DigiDoc/DocumentoReadAction?id=${usuarioLogado.cliente}">
        <h3 id="lista">Nome do documento: <input name="nomedocumento" type="text"/> <input name="pesquisa" type="submit" value="Pesquisar"/></h3>
</form>

O intuito era que o link fosse:

/DigiDoc/DocumentoReadAction?id=(um número qualquer)&nomedocumento=(valor digitado)

Só que o link se torna isso:

/DigiDoc/DocumentoReadAction?nomedocumento=a&pesquisa=Pesquisar

Eu preciso muito daquele ${usuarioLogado.cliente}, definido ali em cima… Poderiam me ajudar?

Desde já, muito agradecido!

[]s

4 Respostas

P

Evite de passar parâmetros pelo action!

<form action="/DigiDoc/DocumentoReadAction">
         <input name="id" type="hidden" value="${usuarioLogado.cliente}"/>
        <h3 id="lista">Nome do documento: <input name="nomedocumento" type="text"/> <input name="pesquisa" type="submit" value="Pesquisar"/></h3>   
</form>
Nicolas_Fernandes

Opa, plic_ploc!

Valeu, cara, deu certinho!!

Nicolas_Fernandes

Aproveitando o tópico…

Se, por exemplo, na minha Servlet, eu passo um Map<String, Object> pelo request…
E dentro dele tem uma Lista de um objeto e um outro objeto qualquer…

Como faço para manipulá-lo (o mapa) na minha JSP??

[]'s

P

segue um exemplo:

Servlet:

map.put( "lista", lst );
map.put( "objeto", objeto );
request.setAttribute( "nome", map );

jsp

<html>
  <body>
    ...
    ${nome}
    ...
  </body>
</htm>

ou

<html>
  <body>
    <%
        Map map = (Map)request.getAttribute( "nome" );
        List lista = (List)map.get( "lista" );
        Object objeto = map.get( "objeto" );
        ...
    %>
  </body>
</htm>

No seu caso seria melhor assim:

Servlet

request.setAttribute( "objeto", objeto );
request.setAttribute( "lista", objList );

jsp

<html>
  <body>
   ...
   ${objeto}
   ${lista}
   ...
  </body>
</htm>

desse modo você pode usar o jsf, displaytag entre outros.

Criado 21 de outubro de 2009
Ultima resposta 21 de out. de 2009
Respostas 4
Participantes 2