Meu problema é o seguinte…estou fazendo uma manutenção em um sistema antigo, que anteriormente era legado a outro. No momento ele é único e preciso forçar as Paginas JSP a retornarem ao Menu inicial. Eu setei todas, uma a uma com o caminho da Pagina de Menu…mas para futura manutenção ou alteração isso é péssimo. Gostaria de chamar esse caminho de um único lugar…para caso eu tenha de alterá-lo…faça apenas em um único lugar para todas as Paginas. Meu amigo me disse que posso colocar o caminho em uma interface e chamá-la nas JSPs…mas estou com dificuldades. Como chamo uma interface a partir de uma pagina JSP? Interfaces podem ter caminhos de paginas JSP?
No momento o código está assim:
voce pode criar um atributo em uma interface e depois chamar o mesmo, ou criar um enum para seus caminhos(veja o que eh melhor para voce)
Ex
public interface Home(){
String home = "caminho";
}
public class Teste(){
System.out.println(Home.home);
}
Lembrando que o atributo sera public final;
Mais cara voce tambem pode usar internacionalizacao para isso, pode criar um arquivo de properties aonde nele contem os seus caminhos e la usar alguma taglib para recuperar o valor do arquivo ex(<fmt:message key=“valor”/>)
porem nao sei se com scriptlet eh uma boua(ou se funciona)
Então cara…se fosse uma aplicação recente e criada do zero…mas é antiga e muita coisa eu não compreendo…mas com certeza mesmo usando interface ainda não chega a ser ideal não é mesmo?
eh eu realmente acho que voce estaria misturando muito a sua camada de visao com a sua camada de aplicacao(ao usar scriptlet voce ja acaba fazendo isso) porem se nao tem jeito restam essas alternativas. O que voce pode fazer tambem e usar o atributo init parameter para setar um valor mais voce nao esta usando servlet entao fica complicado.
Acho que o melhor jeito eh criar atributos final para isso(ENUM) ou uma interface caso voce prefira porem interface tem um intuito diferente do que setar um valor constante.entao acho melhor criar um enum para isso(Se for java 5 claro).
assim cara. voce tem suas classes que extendem httpServlet estou certo? (Voce usa servlet puro neh? nao framework mvc tipo struts)
ai o que voce precisa fazer eh na sua classe que extende httpServlet voce recupera o parametro que voce colocou na configuracao e ai utiliza ele em seu sistema, entendeu?
entao nessa classe voce faria mais ou menos assim
String home = getServletConfig().getInitParameter(“home”);
apartir do momento que voce fez isso, o valor que voce setou no web.xml (no seu caso a home que eh a sua necessidade) eh na verdade sua String home e ai voce pode utilizar ela como preferir.
entendeu?
Da uma olhada sobre initParameters na internet caso voce nao tenha entendido nada. ou posta ae de novo que agente ajuda cara