Pergunta

Eu quero escrever uma tag struts2 personalizado, que tem uma classe de ação separada para si, e pode ser chamado a partir de diferentes páginas JSP.

Algo como:

<s:writetext type="aaa" parentid="xxx" parentname ="yyy" height ="50" width ="125" />

É possível? Por favor, ajuda, eu sou muito novo para isso e pesquisando sobre isso não ajuda.

Obrigado, Aditya

Foi útil?

Solução

Esta questão de idade tornou-se também relevante para mim esta semana ao rever algum código existente. Além de de tbruyelle resposta , este foi para mim a referência mais útil:

http://bodez.wordpress.com/ 2009/03/13 / personalizando-struts2-jsp-tags /

Em resumo (1) ,

  1. Estender uma tag existente (por exemplo, org.apache.struts2.views.jsp.ui.TextFieldTag)
  2. Amplie seu comportamento (por exemplo, org.apache.struts2.components.TextField)
  3. Definir tema novo e modelos (por exemplo, copiar e editar a partir de um tema já existente no /core/src/main/resources/template)
  4. Gerar o novo TLD para a versão personalizada do taglib
  5. implantá-lo em uma aplicação web

O struts 2 API também poderia ser útil.

Infelizmente (e surpreendentemente), há muito pouca documentação sobre como fazer isso, eo javadoc para os componentes do Struts existentes é "um pouco escasso" e enganosa. Talvez não se destina a ser usado dessa maneira?


Notas

(1) Eu editei esta resposta de alguns anos após o post original para adicionar este resumo, alinhando a resposta com as diretrizes assim. Infelizmente, tem sido um longo tempo sem trabalhar com código semelhante, e eu posso não ser a certeza de ter mantido a essência do blog vinculado, por favor consulte o link se ele ainda funciona.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top