Mentawai - Template: “Bloqueando” chamada a JSP
Java, Mentawai March 4th, 2008Como já leram aqui no blog, escolhi o Mentawai para desenvolver um projeto em Java. Mas, como nem tudo são flores, meses atrás eu tive um problema com a utilização de “template” no menta. Por acreditar que outras pessoas já passaram pelo mesmo problema, vou passar adiante uma dica que o felipowsky me passou lá no fórum.
Para conhecer como funciona o recurso de template, basta acessar o site aqui. O próprio site do mentawai explica passo a passo, portanto, não mostrarei aqui como criar um template simples.
O PROBLEMA
Quando se trabalha com “template” no mentawai é permitido configurar a extensão dos arquivos e a forma como serão acessados (Desde que não seja “jsp”, senão ele lança exceção).
Ao acessar uma página com a extensão que foi definida, o recurso de template do framework incluirá a página dentro das tags definidas. Porém, se o usuário renomear na barra de endereço a extensão, passando “.JSP”, o arquivo será acessado e exibido sem qualquer formatação de layout.
A SOLUÇÃO
Tentei de “n” maneiras resolver este problema, e como sou marinheiro de primeira viagem não tive muito sucesso.
A idéia passada pelo felipowsky foi a seguinte:
Cria-se uma classe que estende ConventionController, chame-a de CustomConventionController:
{
@Override
{
return "/WEB-INF/Administracao";
}
}
E, no TemplateManager, ao invés de chamar ConventionController, chama-se a classe customizada ConventionControllerCustom:
{
private static final String WEBINF_FOLDER = "/WEB-INF/";
private static final String DEFAULT_JSP_FOLDER = WEBINF_FOLDER + "Administracao/";
{
Page page = new Page("Administracao/.*", DEFAULT_JSP_FOLDER + "home.jsp", CustomConventionController.class);
add(page);
}
}
Está foi a solução que utilizei no meu projeto, e funciona perfeitamente.
Valeu felipowsky!
March 4th, 2008 at 6:30 pm
Queria aprender Java, parece ser bom, mas mesmo tendo noções de web parece ser grego pra mim.
Indo com calma no PHP e depois me arrisco além mar.
March 5th, 2008 at 9:13 am
Olá Erik..
Java não é coisa de outro mundo. O que o torno “complexo” é a quantidade de “coisas” que você tem que aprender para desenvolver na linguagem. Já que existem N frameworks que visam te auxiliar no processo de desenvolvimento.
Se o seu interesse é fazer apenas ’sites simples’, talvez o PHP te atenda, mas se o seu desejo é partir para sistemas mais complexos, JAVA pode ser uma melhor escolha.
Nem tudo é aconselhável desenvolver em JAVA. Por exemplo, você precisa fazer um site institucional com poucas coisas gerenciáveis. Para que desenvolvê-lo em JAVA? Não a necessidade de matar uma formiga com um canhão, entende!?
Abraços