Struts urgente

7 respostas
D

Boa noite,
bom estou com um problema de logica feio.
Como posso fazer para chamar uma action usando tiles. É assim eu crio um menu que traz as informacoes do banco de dados e quando eu chamo o index.jsp ele cria usando o tiles bonitinho menos o menu. e se eu coloco um onload no index entra em loop. Alguem poderia me ajudar?

meu Struts.xml:

menu2

meu tiles.xml

menu1.jsp

menu2.jsp

7 Respostas

Jair_Rillo_Junior

Não entendi bem a sua dúvida, mas uma sugestão para o menu dinámico seria:

  • Crie uma taglib para a construção do menu (ela pode receber alguns parametros e etc). Assim fica fácil para carregar os dados, assim como fazer algum controle de segurança.
D

Jair,meu problema é o seguinte. para montar o menu eu preciso chamar uma action queria saber como faco isso com tiles, para que na hora que ele entrar na index.jsp ele ja monte a pagina com o menu.

Jair_Rillo_Junior

De duas uma:

  • Ou faz a taglib como eu disse
  • Ou ao invés de chamar o index.jsp direto, chama uma Action (que irá montar o menu) e ela sim faz um dispatch para o index.jsp (ou outra jsp). Esse inclusive é o jeito que muita gente faz. Na verdade, existe um index.jsp que faz um jsp:forward para uma Action e essa sim monta o menu e chama outro JSP que é a página principal
D

Hum interessante, deixa eu ver se entendi, voce diz chamar uma action que monta o menu e esse dá um forward para o tiles que monta o layout ?

Jair_Rillo_Junior

dncam:
Hum interessante, deixa eu ver se entendi, voce diz chamar uma action que monta o menu e esse dá um forward para o tiles que monta o layout ?

Yes sir.

Na verdade você pode deixar um index.jsp que faz um forward automatico (usando o jsp:forward) para sua action. Ela vai construir o MENU e chamar o tiles para montar o layoyut.

D

Meu amigo, sou meio novato nesse negocio de tiles e sei que é pedi demais, mas ficaria assim entao ?

index.jsp:

<jsp:forward page=“menu.action” />

struts.xml:

/menu.jsp
tiles.layoutClassic

tiles.xml






Outra duvida quando eu for mudar o “aplicacao” por exemplo eu teria de chamar toda vez o tiles.layoutClassic com o menu.action?
Valeu.

Jair_Rillo_Junior

A idéia é por ai.

Criado 19 de agosto de 2009
Ultima resposta 20 de ago. de 2009
Respostas 7
Participantes 2