在jboss下,ejb编译好后打包成jar文件放入/jboss-4.2.0.GA/server/default/deploy目录下
jsp页面调用同一个ejb中的方法,有些方法可以调用没有问题,可以有些方法jsp报如下错误:
10:44:57,041 ERROR [[jsp]] Servlet.service() for servlet jsp threw exception
org.apache.jasper.JasperException: Unable to compile class for JSP:
An error occurred at line: 14 in the jsp file: /bsi/BlackRedManage.jsp
The method queryFromOrder2(TelewebDataSet, int, int, String) is undefined for the type CrsContact
......
但是在EJB crsContace中是有该方法的。
而且我将EJB中原先调用没有问题的方法,改了个方法名称,然后重新编译,打包成jar文件,发布,再调用,还是会报上述错误,很奇怪,原来明明可以调用没有问题的,只是方法名称改了,难道是打包编译中没有更新,还是jboss缓存的问题,很奇怪,苦恼半天,一直无解,请高手相助!!!!!!!!!!

解决方案 »

  1.   

    你在创建EJB的时候,queryFromOrder2方法的类型没有定义,自己重新改下,就好拉
      

  2.   

    建议:楼主
    1、仔细检查下代码
    2、对比下配置
    3、将CrsContact 改名看看,是否报错一样?
    4、
      

  3.   

    原来是疏忽将代码修改前编译好的class文件留在lib的相关目录下,即使ejb中的class更新并重新打包了,再调用的时候他首先会调用lib目录下的,所以修改后的方法始终找不到。将lib目录下的相关ejb编译好的class文件删除掉就没有问题了,或者与jar包中的class文件一致就可以了。