`
kfc_davy
  • 浏览: 178479 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

STRUTS2 使用泛型有点问题,HELP

阅读更多
public abstract class BaseCacheAction<T extends CacheData> extends BaseAction {
	public abstract void setData(T data);
	
	public abstract T getData();

	public String execute(){return SUCCESS;}
}

public class ServiceLevelAction extends BaseCacheAction<ServiceLevelData>{
	
	private ServiceLevelData data ;

	@Override
	public ServiceLevelData getData() {
		return data;
	}

	@Override
	public void setData(ServiceLevelData data) {
		this.data = data;
	}

	
}



这个时候页面调用 servicelevelaction ,页面上面有 data.name的数据, 但是DEBUG进去以后,发现最后调用了getData,而不会调用setData导致data数据是NULL,
能帮忙解决下伐?
分享到:
评论
1 楼 kfc_davy 2009-10-02  
对了如果这样,就没有问题

public abstract class BaseCacheAction<T extends CacheData> extends BaseAction implements ModelDriven<T>{

}

public class ServiceLevelAction extends BaseCacheAction<ServiceLevelData>{
	
	private ServiceLevelData data ;

	@Override
	public ServiceLevelData getData() {
		return data;
	}

	@Override
	public void setData(ServiceLevelData data) {
		this.data = data;
	}
	
	public ServiceLevelData getModel() {
		return null;
	}
	
}


使用了modeldriven以后成功的get 和set data了,难道是ognl的处理一定要在值栈里面设一下类型,使用泛型,会找不到对应的反射方法?
大大们帮忙解释下哈~

相关推荐

Global site tag (gtag.js) - Google Analytics