最近在学javaBean,总是有个错误提示:The value for the useBean class attribute visitorbook.Dictionary is invalid.
我设置的虚拟目录是F:\My programs\jsp  
jsp文件是放在 F:\My programs\jsp\visivisitor'book下的
编译好的.class文件 (Dictionary.class和Word.class) 是放在F:\My programs\jsp\visivisitor'book\WEB-INF\classes\visitorbook下的。Word.java代码:
package visitorbook;
public class Word {
   private String Chn;
   private String Eng;
   public Word()
   {
   Chn="";
   Eng="";
   }
   public Word(String Eng,String Chn)
   {
   this.Eng=Eng;
   this.Chn=Chn;
   }
   public String getChinese()
   {
   return Chn;
   }
   public String getEnglish()
   {
   return Eng;
   }
   public void setChinese(String Chn)
   {
   this.Chn=Chn;
   }
   public void setEnglish(String Eng)
   {
   this.Eng=Eng;
   }
}
Dictionary.java代码:
package visitorbook;
public class Dictionary {
private Word[] W;
 //实例化100个词条对象
 public Dictionary()
 {
 W=new Word[100];
 }
 //按英文查找中文
 public Word getWordByEng(String Eng)
{
 for(int i=0;i<W.length;i++)
{
 if(W[i].getEnglish().equals(Eng)) return W[i];
}
return null;
}
//按中文查找英文
public Word getWordByChn(String Chn)
{
  for(int i=0;i<W.length;i++)
{
  if(W[i].getChinese().equals(Chn)) return W[i];
}
  return null;
}
//显示全部词条
public Word[] getWord()
{
return W;
}
//添加词条
public void setWord(Word word)
{
int i=this.W.length;
this.W[i]=word;
}
}
Dictionary.jsp代码
<%@ page contentType="text/html;charset=GB2312"%>
<%@ page import="visitorbook.*"%>
<html>
<head>
 <title>词典</title>
</head>
<body>
<jsp:useBean id="dictionaryBean" class="visitorbook.Dictionary" scope="session"/>
</body>
</html>
我做的留言板所用的jsp文件都是放在F:\My programs\jsp\visivisitor'book下的
老师要求弄个字典的附加功能,用javabean做,总是提示这个错误:The value for the useBean class attribute visitorbook.Dictionary is invalid.
非常郁闷,网上搜索了好久也没找到答案。各位大虾帮帮忙啊

解决方案 »

  1.   

    F:\My programs\jsp\visivisitor'book
    这个路劲写错了  
    应该是这个   F:\My programs\jsp\visitor'book
    大家不要看错了,不好意思
      

  2.   

    你把你的项目和jsp文件都放在一起试试。没见过这种错误,貌似是你的javaBean属性取错了??
      

  3.   

    useBean的class属性visitorbook.Dictionary值无效这里对吗?
    类型改为Word[]吧。public void setWord(Word[] word) 

    int i=this.W.length; 
    this.W[i]=word; 

    Word 类中的get set 方法我一般这样写 getChn();
      

  4.   

    这个setWord方法是传递一个Word对象进去,词典类的构造方法已经初始化了一个100Word对象的数组,这里只需要在数组里添加一个 Word对象就行了,另外,今天在同学机器上测试了一下,同学机器上能编译过,不会报错,我机器上还是那个错误,我郁闷啊,这是怎么回事啊
      

  5.   

    把Tomacat重装了,结果编译那个Dicionary.jsp页面的时候,居然提示找不到页面了····无语······