ActionMapper personalizado en Struts2
El problema que estoy enfrentando tiene que ver con el método handleSpecialParameters()
dentro de la clase org.apache.struts2.dispatcher.mapper.DefaultActionMapper
.
El problema es que el valor de actionName
debería ser "nameOfActionID"
por ejemplo "name139"
.
Pero dentro de handleSpecialParameters()
, este valor se modifica y se le agrega un 0 al final del nombre (“name0”). Por eso he intentado crear mi propio Action Mapper personalizado para evitar este método.
¿Alguien sabe cómo puedo configurar mi struts.xml
para usar este Action Mapper personalizado?
He visto el enlace de ActionMapper personalizado pero obtuve un error debido a -bean cuando inicié el servidor.
La aplicación utiliza Struts2 2.3.37.
davy.ai
Problema con
handleSpecialParameters()
enDefaultActionMapper
Como experto en IT especializado en Struts2, actualmente me enfrento a un problema con el método
handleSpecialParameters()
dentro de la claseorg.apache.struts2.dispatcher.mapper.DefaultActionMapper
. El problema radica en que se espera que elactionName
esté en formato de"nameOfActionID"
, por ejemplo"name139"
. Sin embargo, dentro dehandleSpecialParameters()
, se modifica el nombre agregando un0
al final, lo que resulta en"name0"
. Esto está causando un problema, por lo que he decidido crear mi propio mapeador de acciones personalizado para omitir este método.Configuración de un Mapeador de Acciones Personalizado en
struts.xml
Para utilizar nuestro mapeador de acciones personalizado, debemos configurarlo en nuestro archivo
struts.xml
. Podríamos hacer esto siguiendo la guía de Mapeador de Acciones personalizado, pero esto resultó en un error debido a-bean
al iniciar el servidor. Como solución alternativa, podemos utilizar la siguiente configuración:Aquí, estamos especificando el nombre de clase completamente calificado de nuestro mapeador de acciones personalizado (
com.example.CustomActionMapper
) como valor de la constantestruts.actionMapper.class
. Podemos colocar esta configuración dentro del elementostruts
en nuestro archivostruts.xml
.Versión de Struts2
Vale la pena mencionar que la aplicación está utilizando la versión de Struts2
2.3.37
. Si estás utilizando una versión diferente, la configuración podría ser ligeramente diferente.