Estou montando um projeto web para teste e tentando seguir a linha que é utilizada no mercado.
Fiz um JSP com form que recebe parâmetros, dele submeto para ALGUMA_COISA que deve validar os parâmetros, havendo inconsistências redireciona para a página inicial, estando tudo OK, submete para outro JSP.
Minha é dúvida é justamente esse ALGUMA_COISA, que em alguns casos conterá as regras de negócios, li que devemos evitar excesso de código Java nos JSP’s, então o que deve ser esse ALGUMA_COISA, como monto isso?
Cara, o certo é não escrever nenhum código Java no jsp.
Se vc já estiver mais avontade com o java, recomendo uma apostila muito boa para o desenvolvimento Web. Bem didática e fácil para aprender:
Entre neste site http://www.caelum.com.br/apostilas/ e pegue a apostila FJ-21 de Desenvolvimento Web.
biroska
Obrigado Yoshikichi e Aluisiodsv pelas dicas
Tenho estudado pelas apostilas FJ11 e FJ21 e pelo bom e velho Deitel, tenho uma noção das divisões que terei que fazer: apresentação, negócios e persistência, cada qual com as suas estruturas próprias, minha dúvida está em o que, e como, o JSP vai disparar, ah…é o tal do ALGUMA_COISA do action
Li, na FJ21 que o ideal é não misturar o código Java com Html, mas como ainda não descobri como fazer a comunicação entre o JSP e o ALGUMA_COISA, ainda não consigo extrair todo o código Java do html.
Vocês podem me ajudar nessa parte?
valeu de novo
A
andredecotia
biroska:
Estou montando um projeto web para teste e tentando seguir a linha que é utilizada no mercado.
Fiz um JSP com form que recebe parâmetros, dele submeto para ALGUMA_COISA que deve validar os parâmetros, havendo inconsistências redireciona para a página inicial, estando tudo OK, submete para outro JSP.
Minha é dúvida é justamente esse ALGUMA_COISA, que em alguns casos conterá as regras de negócios, li que devemos evitar excesso de código Java nos JSP’s, então o que deve ser esse ALGUMA_COISA, como monto isso?
Faço uma validação inicial via javascript, mas algumas coisas terei que consistir no banco de dados, para redirecionar as páginas, vi o comando getRequestDispatcher("páginaJSP.jsp");
Pensei em fazer algo do tipo…o ALGUMA_COISA SER UM Servlet e ele via getRequestDispatcher(“páginaJSP.jsp”); me direciona para a página correta, mas se eu tiver campos que mudam de acordo com os parâmetros, ou mesmo se eu quiser exibir os parâmetros, terei que utilizar Scriplet?
Existem comandos para fazer: neste “documento.jsp” substitua $cor$ por ‘Amarela’ e exiba o JSP resultante?
valeu
obrigado pela ajuda
AndreAlves
ALGUMA_COISA pode ser um MONTE_DE_COISA, dependendo da sua arquitetura.
Se você não está utilizando nenhum framework, o ALGUMA_COISA seria um Serlvet mesmo. Mas o ideal seria utilizar algum framework, tipo Struts, JSF, etc.
Ao invés de usar Scriptlet no JSP, dá uma olhada em JSTL e EL.
leandroadacosta
Além de todas as dicas do pessoal, recomendo fortemente o uso do vraptor para fazer o trabalho d MVC, é bem fácil trabalhar com ele, leia a documentação que rapidinho você pega o jeito da coisa.
Obrigado a ajuda de todos.
Conclui o pequeno projeto que estava fazendo utilizando escriplets, acabei adotando diversas más práticas, vou estudar Struts e Raptor para depois iniciar o próximo.
Mais uma vez obrigado a todos
[]'s
P
pbnf
biroska:
Estou montando um projeto web para teste e tentando seguir a linha que é utilizada no mercado.
Fiz um JSP com form que recebe parâmetros, dele submeto para ALGUMA_COISA que deve validar os parâmetros, havendo inconsistências redireciona para a página inicial, estando tudo OK, submete para outro JSP.
Minha é dúvida é justamente esse ALGUMA_COISA, que em alguns casos conterá as regras de negócios, li que devemos evitar excesso de código Java nos JSP’s, então o que deve ser esse ALGUMA_COISA, como monto isso?
valeu
obrigado
Vamos direto ao assunto, o seu ALGUMA_COISA é algum metodo no servidor(ou é um Servlet puro ou uma “action” do seu framework) que com certeza e na pratica vai conter validações e regras de negocio, ponto final ! No JSP vc só tem campos de entrada de dados e exibição, no servidor vc tem toda a manipulação dos dados e nada de misturar codigo Java no JSP ou então é melhor vc continuar com o PHP !!!
PS: Vc lendo as apostilas da Caelum não tem como não aprender o java e as boas praticas de desenvolvimento e os padrões de projeto para desenvolver uma aplicação real de verdade.
kzar.razk
Não existem regras. O uso de scriptlets é desaconselhado pois seus substitutos (geralmente taglibs) tendem a ter menos erros em tempo de execução. Como exemplo pode-se ler um bean com uma tag ou através do getAtribute(***), mas a segunda opções deve-se ter consciência de verificar se a referência é nula. Não confunda ARQUITETURA (algo muito mais ligado a como as coisas estão organizadas) com FRAMEWORK (uma implementação de determinada organização). Na verdade os desenvolvedores que conhecem profundamente scriptlets por fim tem muito mais consciência do que as taglibs estão fazendo, e também o que as frameworks pretendem ajudar a resolver diante do tempo de vida de uma requisição.