NoSuchMethodError
出现这问题是你本身的类文件中它在加载的时候根本找不到你的方法可能由于你这是你新添加的方法,但是添加后没有编译或者没有被重新部署到server
那么在调用的时候你感觉文件中的确有,但是实际上它却没有家进去!

解决方案 »

  1.   

    重新编译了啊,我是用JB9+Weblogic7的.
      

  2.   

    而且它肯定是运行了,我的函数是这样的.
     public void saveVector(Vector ve)
         {
    org.jdom.Document mydoc;
    try{
    org.jdom.input.SAXBuilder  mysaxbuilder=new org.jdom.input.SAXBuilder();
    mydoc=mysaxbuilder.build(new File("casenotchecked.xml"));
    System.out.println("xml ok");
    Element root = mydoc.getRootElement();
    Element evector = new Element("propertyvector");
    System.out.println("element ok");/////////////////它输出了,但是运行到这里后,就出错////////////////////////////////////////////////////了.可能是JDOM的问题吗?
    for (int i = 0; i < ve.size(); i++) {
    comcbr.propertyBean mybean = (comcbr.propertyBean) ve.elementAt(i);
    if(mybean!=null){
    Element elproperty = new Element("property");
    Element elname = new Element("propertyname");
    Element elvalue = new Element("propertyvalue");
    elname.setText(mybean.getPropertyname());
    elproperty.addContent(elname);
    elvalue.setText(String.valueOf(mybean.getInt()));
    elproperty.addContent(elvalue);
    evector.addContent(elproperty);
    }
    }
    root.addContent(evector);
    }
     catch (Exception e) {
    System.out.println("file error!!!!!!!!!!!!!!!!!!!!!!!!!!!");
     e.printStackTrace();
    return;
     }
      try {
    String a = "";
    boolean bool = true;
    org.jdom.output.XMLOutputter xml = new org.jdom.output.XMLOutputter(a,
    bool, "gb2312");
    xml.output(mydoc, new FileOutputStream("casenotchecked.xml"));
    System.out.println("file ok");
    }
    catch (Exception e) {
    System.out.println(e.toString());
    return;
    }
    return;
    }
    }
      

  3.   

    还有就是,我这个会话bean访问实体bean的函数的时候,也是有这个nosuchmethord的错误的.
      

  4.   

    那你发布的吗?你的bean!只是编译表示你的文件更新了,但是server接受没有呢?还有类文件的重新加载要重启server才能实现类文件的加载,你做了这些工作吗?
      

  5.   

    应该做了,不然,怎么运行到那一步呢?
    我查过这个错误,JB help 说这个NOsuchmethord是运行时错误.但是,我不知道怎么修改才能避免