Várias dúvidas Struts

Olá pessoal, estou começando a brincar com struts e comecei a fazer um sisteminha. Procurei vários tutoriais pela internet mas nem sempre encontro o que preciso neles e tem coisas que talvez por serem fáceis de se fazer o pessoal não põe nos tutoriais e eu como não sei nada de struts fico na mesma.

Bom vamos lá…
Fiz uma página JSP com dois forms de Login, uma para administrador e um para usuário normal. No meu ActionFormBean eu trato esses dois forms. Devo fazer um ActionFormBean para cada Form?
No meu Action, eu faço a consulta no banco de dados e redireciono para a página de cadastro, caso não seja cadastrado, e se cadastrado eu mando para a página inicial. Aí está o problema…Como eu mostro na página Inicial o nome do usuário que está logado?

Mais uma, depois de logado, eu vou ter uma página permitindo upload de arquivo e inserção de alguns dados (cadastro de informações sobre o arquivo). Depois de cadastrado, eu quero mostrar uma tabela com alguns dados de todos os arquivos que eu enviei, na página inicial de cada usuário.

Por enquanto é só e desde já obrigado!

Bom, supunho q voce esteja usando o struts 1.x

1 - Pra cada form vc deve fazer um actionForm, é a forma mais simples de se usar o struts (sim, isto eh um saco!).

2 - Bom, voce ta colocando o usuario na sessao ? Se tiver, basta usar as custom tags do struts, ou preferivelmente da jstl (<c:out … >) para imprimir o nome do usuario.

[/code]

Opa!!! Obrigado pela ajuda…
Estou usando a versão 1.2.9 que vem no netbeans 5.5
Estou até usando o netbeans 5.5 pra ajudar a fazer, pq a lógica por trás do XML eu já entendi e acaba sendo muito trabalhoso ficar fazendo tudo na mão.

Eu fiz um teste aqui, de tratamento de erro de validação no formulário de login e realmente vai ser preciso um Bean para cada Form, se não ele apresenta erros até de quem não tem nada a ver com a história na hora da execução de um determinado form.
Realmente é um pé no saco, mas até que deixa o código mais organizado. Você acaba sabendo o que cada um tem a ver com o outro.

Quanto a sessão eu não estava usando e vou colocar pra ver como fica.

Agora mais uma coisinha. Se eu quero imprimir na página, resultados de consultas do banco de dados, como faço isso usando Struts?
Tipo, na minha classe eu vou no banco faço a minha consulta pego o que eu quero, até aí tudo bem, mas e pra enviar pra página JSP como que eu faço?

Muitíssimo obrigado pela ajuda!

Utilize JSTL, é mais simples e prático.

Envie seus dados da Action/Servlet para a JSP através do objeto request.

Por acaso vc tem um exemplo de como fazer isso pra me passar?
É que eu estou meio perdido.
Alguns códigos que eu encontrei só de olhar eu entendo o funcionamento, mas tem outros que não vai nem com reza!

Valew!

Listar os dados na tela:

&lt;c&#58;forEach items=&quot;$&#123;suaLista&#125;&quot; var=&quot;nomeQualquer&quot;&gt;
                      $&#123;nomeQualquer&#125;                     
 &lt;/c&#58;forEach&gt;

Action:

public ActionForward nomeQualquer&#40;parâmetros...&#41; &#123;

    request.setAttribute&#40;&quot;suaLista&quot;,suaLista&#41;;

&#125;

Valew!!!
Era isso mesmo que eu precisava.
Muito obrigado!

Editando…

Agora funcionou…só que estou com outro pequeno problema.

Mapeei o form de uma JSP, com o FormBean e o Action, tudo direitinho.
No Action eu preciso pegar o nome do usuário da sessão.
Como eu faço isso?? Tentei utilizar o session.getAttribute mas ele vem como null…

Mais uma vez obrigado!

Mas como salvo no request com Struts2???

No Struts2 tem como você obter o objeto request, porém a melhor forma é trabalhar com a sua action mesmo, pois ela é um POJO. Então se você colocar uma propriedade na sua action consequentemente ela estará na requisição.

Blz esse esquema eu conheço no Struts dois mas se eu quiser pegar o ip de quem estiver acessando por exemplo so com o request. Então se der pra me dizer como acesso o request e aproveitando a oportunidade como eu trabalho com Session com o Struts2 para poder fazer controle de login com sessão por exemplo, e kra to precisando mexer com request e session.

Esqueleto

Utilize a classe ServletActionContext.

Kra valeu resolveu o meu problema 10!!!

Esqueleto

kra a ultima pergunta tem como desabilitar o botão la no jsp com Strusts2?? Tipo depois q salva desabilitar o <s:submit>?? Se não tiver como me avisa por favor senão vou ficar doido.

Esqueleto.

Acredito que do jeito que você está querendo não tem como.

Uma maneira de fazer: coloque uma variável do tipo boolean em EL no atributo disabled da tag e na action envie essa variável depois que salvar, daí ela poderá desabilitar o botão.