我做了一定自定义的Tag,在jsp页面中使用。
=========================================================================
.....................
<tag>
     <name>page</name>
     <tag-class>jp.city.kyoto.kmir.business.utils.PageTag</tag-class>
     <body-content>empty</body-content>
</tag>
=========================================================================Action中,将取得的"Kokyaku "类型的对象,设置到"request"中:
=========================================================================
Kokyaku p_kokyaku = new Kokyaku();
kokyaku = .......//取得Kokyaku 
request.setAttribute("pager_request", p_kokyaku);
=========================================================================Tag中用到的类:PageTag中,需要将request中的"pager_request"取得后,进行类型转换,转换为"Kokyaku"类型
=========================================================================
(Kokyaku)(this.pageContext.getRequest().getAttribute("pager_request"));
=========================================================================问题:
按照上面的做法,在eclipse的tomcat第一次启动后(注意:是第一次),出现如下异常:
org.apache.jasper.JasperException: java.lang.ClassCastException: 
jp.city.kyoto.kmir.business.entity.Kokyaku cannot be cast to jp.city.kyoto.kmir.business.entity.Kokyaku在不关闭tomcat,继续刷新页面的时候,页面正常显示了,没有异常的。
如果关闭tomcat,并重新启动tomcat的话,第一次进入页面就又会出现上述异常。我跟踪了在PageTag.java中和action中,定义和取得的"Kokyaku",发现完全一样,连地址都是一样的。跪谢各位高手,如何解决这个问题呢

解决方案 »

  1.   

    jp.city.kyoto.kmir.business.entity.Kokyaku cannot be cast to jp.city.kyoto.kmir.business.entity.Kokyaku jp.city.kyoto.kmir.business.entity.Kokyaku
    不能转型成
    jp.city.kyoto.kmir.business.entity.Kokyaku
    奇怪了啊,这不是同一个类么?
      

  2.   

    Mark关注INGjp.city.kyoto.kmir.business.entity.Kokyaku cannot be cast to jp.city.kyoto.kmir.business.entity.Kokyaku 头回赶上这样的问题~~~~~~~~~帮你顶了
      

  3.   

    强制转换之前看下instanceof判断能否通过 会不会你打了JAR包跟类有冲突?
      

  4.   

    取到this.pageContext.getRequest().getAttribute("pager_request")后,先将其转换为String类型,再将它转换为你想要的类型
      

  5.   

    是jar 包存在版本问题或者有冲突......
      

  6.   

    取到this.pageContext.getRequest().getAttribute("pager_request")后,再转为Object后,最后转成Kokyaku肯定是没问题的
    一般情况来说你那样直接转是没问题的
      

  7.   

    Kokyaku 感觉就是日本的发音。。
      

  8.   

    奇怪的问题
    1.可以到别人的机器上试试。
    2.在自己机器上 另外项目试试看,比如Application。
      

  9.   

    试试删除 tomcat下的work目录
      

  10.   

    试试删除 tomcat下的work下的目录,不是work
      

  11.   

    已经尝试过删除work目录了,根本不行~