public class price 
{
private static Hashtable things = new Hashtable();
public void getThings(String id)
{
things.put("1","cup");
things.put("2","内存");
things.put("3","主板");
things.put("4","显卡");
things.put("5","显示器"); return things.get(id).toString();
}
}
改:
public class price 
{
private static Hashtable things = new Hashtable();
public String  getThings(String id)
{
things.put("1","cup");
things.put("2","内存");
things.put("3","主板");
things.put("4","显卡");
things.put("5","显示器"); return things.get(id).toString();
}
}

解决方案 »

  1.   

    从报错信息上看,好像是找不到类不过我觉得你的getThings方法是不是也有点问题?每次调用这个方法,都要往哈希表添加信息,那么第二次的时候是否就会重现key值重复了?(当然,如果你在该页面只调用一次该方法是不会出现key值重复的,但调用对次应该就会出现的)我觉得把哈希表信息初始化放在构造函数或setThings方法上比较好
      

  2.   

    在classpath变量里把price所在的目录添加进去再重新编译试试,如目录结构为:C:\java\test\com\bean\price.java
    就在classpath里加入:C:\java\test
      

  3.   

    应该是找不到类
    在运行的使用指定classpath
      

  4.   

    public void ....{
       ...
       return things.get(id).toString();
    }
    这个编译能通过?你把这个price.class放哪里了?
      

  5.   

    package  com.bean; 
    import java.util.*;
    import java.io.*;
    public class price 
    {
    private static Hashtable things = new Hashtable();
    public String getThings(String id)
    {
    things.put("1","cup");
    things.put("2","内存");
    things.put("3","主板");
    things.put("4","显卡");
    things.put("5","显示器");
    System.out.println(things.get(id).toString());
    }
    }
    改成这样后出现编译错误:missing return statement
      

  6.   

    你写了返回类型却没有写返回值啊!
    public String getThings(String id)
    {
    things.put("1","cup");
    things.put("2","内存");
    things.put("3","主板");
    things.put("4","显卡");
    things.put("5","显示器");
    System.out.println(things.get(id).toString());
    }
    "return"何在?
      

  7.   

    package  com.bean; 
    import java.util.*;
    import java.io.*;
    public class price 
    {
    private static Hashtable things = new Hashtable(); public String getThings(String id)
    {
    things.put("1","cup");
    things.put("2","内存");
    things.put("3","主板");
    things.put("4","显卡");
    things.put("5","显示器");

    return things.get(id).toString();
    }

    }
    改成这样还是出显:
    type Exception reportmessage description The server encountered an internal error () that prevented it from fulfilling this request.exception javax.servlet.ServletException: com/bean/price (wrong name: price)
    org.apache.jasper.servlet.JspServlet.service(JspServlet.java:244)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
    root cause java.lang.NoClassDefFoundError: com/bean/price (wrong name: price)
    java.lang.ClassLoader.defineClass0(Native Method)
    java.lang.ClassLoader.defineClass(ClassLoader.java:502)
    java.security.SecureClassLoader.defineClass(SecureClassLoader.java:123)
    org.apache.catalina.loader.WebappClassLoader.findClassInternal(WebappClassLoader.java:1634)
    org.apache.catalina.loader.WebappClassLoader.findClass(WebappClassLoader.java:860)
    org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1307)
    org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1189)
    org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1214)
    org.apache.jasper.compiler.Node$UseBean.accept(Node.java:1116)
    org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2163)
    org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2213)
    org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2219)
    org.apache.jasper.compiler.Node$Root.accept(Node.java:456)
    org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2163)
    org.apache.jasper.compiler.Generator.generate(Generator.java:3272)
    org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:244)
    org.apache.jasper.compiler.Compiler.compile(Compiler.java:470)
    org.apache.jasper.compiler.Compiler.compile(Compiler.java:451)
    org.apache.jasper.compiler.Compiler.compile(Compiler.java:439)
    org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:511)
    org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:295)
    org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:292)
    org.apache.jasper.servlet.JspServlet.service(JspServlet.java:236)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
      

  8.   

    好了,我重新启动了TOMCAT!给分了