struts2中如何实现在struts.xml配置文件的action标签中加入自定义属性?
2008-01-11 17:54
417 查看
这是一个struts2中struts.xml配置文件的action标签: <action name="test" class="test"> ,如果我要加入
一个自定义的属性例如: <action name="test" class="test" mytype="haha"> , 显然应用程序启动时会异常,
如何来实现呢?
package com.opensymphony.xwork2.config.entities下的ActionConfig类,定义了action的:
protected List <InterceptorMapping> interceptors;
protected Map <String, Object> params;
protected Map <String, ResultConfig> results;
protected List <ExceptionMappingConfig> exceptionMappings;
protected String className;
protected String methodName;
protected String packageName;
我想做的就是在这里加上一个String mytype,我用自己的类继承了ActionConfig类做了扩展.
然后呢,几个使用到这个ActionConfig的类,我也用自己的类了.问题现在出现在这里:
package org.apache.struts2.config 包下的class Settings中的这个方法:
private static Settings getDefaultInstance() {
if (defaultImpl == null) {
// Create bootstrap implementation
defaultImpl = new DefaultSettings();
// Create default implementation
try {
String className = get(StrutsConstants.STRUTS_CONFIGURATION);
if (!className.equals(defaultImpl.getClass().getName())) {
try {
// singleton instances shouldn't be built accessing request or session-specific context data
defaultImpl = (Settings) ObjectFactory.getObjectFactory().buildBean(Thread.currentThread().getContextClassLoader().loadClass(className), null);
} catch (Exception e) {
LOG.error("Settings: Could not instantiate the struts.configuration object, substituting the default implementation.", e);
}
}
} catch (IllegalArgumentException ex) {
// ignore
}
}
return defaultImpl;
}
问题在这里:
defaultImpl = (Settings) ObjectFactory.getObjectFactory().buildBean(Thread.currentThread().getContextClassLoader().loadClass(className), null);
类型转换错误,defaultImpl为settings,后面一个到底要怎搞啊?
一个自定义的属性例如: <action name="test" class="test" mytype="haha"> , 显然应用程序启动时会异常,
如何来实现呢?
package com.opensymphony.xwork2.config.entities下的ActionConfig类,定义了action的:
protected List <InterceptorMapping> interceptors;
protected Map <String, Object> params;
protected Map <String, ResultConfig> results;
protected List <ExceptionMappingConfig> exceptionMappings;
protected String className;
protected String methodName;
protected String packageName;
我想做的就是在这里加上一个String mytype,我用自己的类继承了ActionConfig类做了扩展.
然后呢,几个使用到这个ActionConfig的类,我也用自己的类了.问题现在出现在这里:
package org.apache.struts2.config 包下的class Settings中的这个方法:
private static Settings getDefaultInstance() {
if (defaultImpl == null) {
// Create bootstrap implementation
defaultImpl = new DefaultSettings();
// Create default implementation
try {
String className = get(StrutsConstants.STRUTS_CONFIGURATION);
if (!className.equals(defaultImpl.getClass().getName())) {
try {
// singleton instances shouldn't be built accessing request or session-specific context data
defaultImpl = (Settings) ObjectFactory.getObjectFactory().buildBean(Thread.currentThread().getContextClassLoader().loadClass(className), null);
} catch (Exception e) {
LOG.error("Settings: Could not instantiate the struts.configuration object, substituting the default implementation.", e);
}
}
} catch (IllegalArgumentException ex) {
// ignore
}
}
return defaultImpl;
}
问题在这里:
defaultImpl = (Settings) ObjectFactory.getObjectFactory().buildBean(Thread.currentThread().getContextClassLoader().loadClass(className), null);
类型转换错误,defaultImpl为settings,后面一个到底要怎搞啊?
相关文章推荐
- struts2中struts.xml中的action标签的method属性配置为"{1}"的时候是什么意味
- Struts2学习笔记之与struts.xml配置和Action有关的属性
- struts.xml文件中 result标签的 type 属性为redirectAction时URL参数与值的获得
- struts2——为Action配置Method属性,实现同一文件,多个Action
- struts.xml配置文件的各个 标签/属性 解析(转)
- Struts2中struts.xml的Action配置详解(一)===》 struts2.0中struts.xml配置文件详解 (二)==》Struts2_struts.xml配置及例程三
- struts-config.xml文件中的action标签中的attributr属性详解
- struts2 的web.xml 配置文件报错org.apache.struts2.impl.StrutsActionProxy.getErrorMessage(StrutsActionProxy.java:69)
- 如何在struts2配置文件xml的action中传参数
- S4.1_Struts2_ActionAdvance 在action动作类里定义增删改方法,在struts.xml中的action method属性如何设置?
- struts2 中 struts.xml文件属性配置
- Struts2中如何加载多个struts.xml配置文件
- struts2在struts.xml文件中获取或设置action中的属性
- struts2--为Action配置Method属性,实现同一文件,多个Action
- struts2中的配置文件的<constant>标签(struts.xml自动加载)
- 【Struts2文件下载】struts.xml文件中配置action,访问路径问题
- 如何在struts2配置文件xml的action中传参数
- Struts2学习笔记之与struts.xml配置和Action有关的属性
- Struts2中struts.xml的Action、namespace配置详解
- struts.xml配置文件(package,namespace,action)