我正在通过JSP建立一个购物网站。我有一个Java对象ShoppingCart,一个叫Item。其中ShoppingCart有一个包含Item对象的向量。这个想法是当我调用该addItem()方法时,我使用:-
ShoppingCart
addItem()
cart.addItem(name, image, price, details);
确保我的购物也 已经 被宣布: -
ShoppingCart cart = new ShoppingCart("file_path_to_file");
的内容addItem是:-
addItem
public void addItem(String name, String image, String price, String detail) throws IOException { items.add(new Item(name, image, price, detail)); this.saveMe(); }
其中项目是向量。这 绝对 好用。但是,我现在创建了一个名为clear的新方法:
public void clear() throws IOException { items.clear(); this.saveMe(); }
saveMe方法只是保存到一个对象文件:
private void saveMe() throws IOException { FileOutputStream fos = new FileOutputStream(this.filename); ObjectOutputStream oos = new ObjectOutputStream(fos) oos.writeObject(this.items); oos.close(); }
当我使用以下方法调用clear方法时:
cart.clear();
我收到错误消息:
jsp文件:/project/cart.jsp中的第108行发生错误:对于ShoppingCart类型,方法clear()未定义
任何人都可以提出任何想法来解决这个问题吗?
如果该方法是新添加的,并且出现此错误,则显然您仍在使用类路径中缺少该方法的旧版本的类。您需要保存源代码文件,重新编译/重建类/项目,重新部署项目并重新启动服务器,以使新更改生效。
有点体面的IDE和一点体面的服务器插件会顺便自动地做到这一点。