Recentemente precisei mudar em um projeto a extensão do mapeamento
default(.html)
do projeto com struts 2 gerado pelo
Appfuse decidi usar uma extensão
.anototudo
. Então segue um passo a passo do que foi necessário.
- Editei o arquivo struts.xml do projeto e mudei a constante:
constant name="struts.action.extension" value="html"
mudei para:
constant name="struts.action.extension" value="anototudo"
- Editei o arquivo StaticFilter que é um filtro do appfuse na definição:
private final static String DEFAULT_INCLUDES = "*.html";
mudei para:
private final static String DEFAULT_INCLUDES = "*.anototudo";
neste mesmo arquivo no método
doFilterInternal
mudei a entrada:
path.contains(".html")
para:
path.contains(".anototudo")
- Na pagina header.jsp mudar a entrada:
c:url value='/editProfile.html'
para
c:url value='/editProfile.anototudo'
- Em todas as páginas jsp com referências como:
onclick="location.href='mainMenu.html'"
, ou seja, todas as chamadas em página que disparem alguma action utilizando extensão .html . Fiz uma busca textual nos arquivos para isso.
- 2 ocorrencias no arquivo urlrewrite.xml
- varias ocorrencias no arquivo security.xml
- varias ocorrencias no menu-config.xml
- ocorrencias no decorators.xml (estas ocorrências existiam para nao aplicar template do sitemesh nas requisições vindas de celular existentes no sistema que estou desenvolvendo.
- ocorrencias nos filter mappins no web.xml no gzipfilter e exportfilter
- Algumas ocorrencias nos testes das actions e filter (SignupActionTest, UserActionTest, StaticFilterTest
- Uma dica importante para não ter problemas com a geração automática do appfuse posteriormente é baixar os templates velocity do appfuse e mudar a extensão nos templates:
list-view.ftl, web-tests.ftl, menu-config.ftl
- Varias ocorrencias no arquivo web-tests.xml
É isto, após todas estas alterações o sistema voltou a funcionar sem erros e respondendo com a extensão desejada (anototudo).
[]s
Nenhum comentário:
Postar um comentário