Java for Dinner

Um repositório sobre Java e tudo que gira ao redor dele.

  • Arquivos

  • Top Clicks

    • Nenhum

Mudando o local default dos arquivos no Apache Wicket

Posted by Danilo Barsotti em 28 janeiro, 2008

Como foi falado no artigo anterior, quando criamos uma classe que representa uma pagina ( estende WebPage ) o arquivo .html deve estar no mesmo package da classe por default, mas isso nem sempre ( na maioria das vezes ) é algo muito bom de se fazer, pois um projeto pode ter diversos packages, imagine varios deles com arquivos .html, imagens, .js entre outros, não ficaria algo muito agradavel de se trabalhar e organizar.

Como não gostava disso fui dar uma pesquisada e descobri que quando se quer configurar como o wicket usa os recursos ( .html, .css, .js entre outros ) basta estender a classe ResourceStreamLocator, vejam como essa classe é feita:

import org.apache.wicket.util.resource.IResourceStream;
import org.apache.wicket.util.resource.locator.ResourceStreamLocator;

public class PathStripperLocator extends ResourceStreamLocator{

    public PathStripperLocator() {
    }

    public IResourceStream locate(final Class clazz, final String path) {
        IResourceStream located = super.locate(clazz, trimFolders(path));
        if (located != null) {
            return located;
        }
        return super.locate(clazz, path);
    }

    private String trimFolders(String path) {
        return path.substring(path.lastIndexOf(“/”) + 1);
    }
}

E para usala, é só chamar no método init() da classe que estende WebApplication que no nosso caso é a classe JavaForDinnerApplication ( caso você não esteja acompanhado os artigos, recomendo a leitura do artigo Começando com o Apache Wicket ) como é mostrado abaixo:

    @Override
    protected void init() {
        super.init();
        this.configResourceFolder();
    }
    private void configResourceFolder(){
        IResourceSettings resourceSettings = getResourceSettings();
        resourceSettings.addResourceFolder(“/WEB-INF/”); // O local onde os arquivos .html,imagens e todo o restante vão estar.
        resourceSettings.setResourceStreamLocator(new PathStripperLocator());       
    }

Como podem ver, configurei para os arquivos .html, .css, .js e todos os outros necessarios vão ser encontrados na pasta WEB-INF.

Até a proxima!!!

About these ads

4 Respostas to “Mudando o local default dos arquivos no Apache Wicket”

  1. Mudando o local default dos arquivos no Apache Wicket « Java for Dinner

    Mais um artigo do Java for Dinner onde é mostrado como mudar o local default dos arquivos utilizados pelo Apache Wicket

  2. matrixkaus said

    Existe alguma previsão de portarem o Wicket para outras plataformas/linguagens, ou por enquanto apenas Java?

    Abs!

  3. Olá Matrixkaus, não existe uma previsão e provavelmente nunca existira um wicket para .net ou qualquer outra linguagem, só Java mesmo.
    Você consegue algo muito parecido com ROR ( Ruby on Rails ) pois foi do ROR que vieram algumas idéias do wicket.

    Abraços!!! ate + ;)

  4. Daniel said

    Parabéns pelos dois posts sobre o wicket.
    No aguardo de mais conteúdo.

Deixe um comentário

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s

 
Seguir

Obtenha todo post novo entregue na sua caixa de entrada.

%d blogueiros gostam disto: