Struts2 OGNL 字符串自定义转化对象细节

要使用Struts2的自定义对象转化,需要几个要点:

1.要有继承DefaultTypeConverter的实现类,要重写convertValue,并且参数value转化而来的String是String[],一般取第一个String,而不是String。这和Struts2为保证兼容性的机制有关。

2.在Action中一定要有需要转化的对象以及对应的get和set方法

3.如果是局部转化的话,在Action累所在的目录中需要配置对应的 properties文件

4.在前台jsp页面中,使用OGNL标签的时候,需要的textfield标签中的name属性一定要是对象的名字!而不是精确到对象属性!比如:

   <s:textfield name="user" label="用户名(single)"/> 

   user是Action中同名的对象实例的名字,不能写成:

  <s:textfield name="user.name" label="用户名(single)"/> 

   如果这样写的话,Struts2框架不会触发转换器。

   所以如果把字符串自定义转化为对象的话,textfield中name必须写成希望转化的对象实例名称!

posted @ 2016-10-18 17:18  大C  阅读(231)  评论(0编辑  收藏  举报