一个很奇怪问题,折腾一天了

今天改装一个无级树型菜单,用spring来管理事务,ssh架构的,其中struts的Action代码如下:首先做了一个BaseAction用来读取spring配置文件的bean定义

java 代码
  1. public class BaseAction extends Action {   
  2.          protected final Log log = LogFactory.getLog(getClass());   
  3.          private static final Long defaultLong = null;   
  4.          public ApplicationContext applicationContext;    
  5.   
  6.         public Object getBean(String name) {   
  7.             ApplicationContext ctx =    
  8.               WebApplicationContextUtils.getRequiredWebApplicationContext(servlet.getServletContext());   
  9.          return ctx.getBean(name);  

然后是处理控制的MenuManageAction extends BaseAction,选取其中的一段代码来看;

java 代码
  1.   }else if (todoaction==null || "".equals(todoaction) || "list".equals(todoaction)){   
  2. reeManager  treeManager=(TreeManager)getBean("treeManager");   
  3. list=treeManager.getRoots(SystemMenu.class);   
  4. equest.setAttribute("objectlist",list);   
  5.            return mapping.findForward("list");      

问题就出在这,TreeManager  treeManager=(TreeManager)getBean("treeManager");居然 出现了ClassCastException!!!!!!!!!!!!!!!!!!!   getBean方法虽然返回的是Object类型的但其实是个TreeManager类型的(见下面的配置文件),但就是一转型为TreeManager就得到ClassCastException,如果不转型得到的是Object类型的,但是就不能调用getRoot方法了,为了得到大家的帮助,我把其它相关代码也贴出来,spring配置文件如下:

xml 代码
  1. <bean id="treeManager" class="org.news.service.TreeManager">  
  2.         <property name="sessionFactory">  
  3.             <ref bean="sessionFactory" />  
  4.         </property>  
  5.     </bean>  

TreeManager.java如下:

java 代码
  1. public class TreeManager extends HibernateDaoSupport{   
  2.        
  3.     public  List getRoots(Class cls){    
  4.       
  5.     return this.getHibernateTemplate().find(" from "+ cls.getName()+ " where enabled=true and parent_id is null order by id");   
这个问题我跟好几个人讨论都没有解决,本来就是个转型错误,却搞的这么郁闷,希望这个帖子不要被封掉,如果要封最好能解决了再封,这样我也好受点!
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值