问题是这样的:使用Excel上传客户基本信息到服务器端,打算先简单地验证一下输入的字段长度是否太长,然后再往数据库中存储这些数据。但在验证的时候不知道如何抛出例外,如我想使用以下判断:if(personcust.getName().length()>8){
                throw new NoSuchEntityException("error.personinfoExcel.name");
          },如果抛出例外,我如何在jsp页面中显示具体的错误?望各位大侠指点

解决方案 »

  1.   

    忘说了,我的判断是在类似与javabean的java文件中判断的,所以无法用System.out.println()显示出错误。
      

  2.   

    谢谢关注,我认为设置标志位好像不行,因为我是从excel中取出数据后直接判断,如果判断没有出错的话,返回这组数据,然后显示这组数据。我是打算如果判断出错的话直接中止程序往下走了。
      

  3.   

    在页面
    try
    {
        //调用javabean.
    }
    c
    atch (NoSuchEntityException e)
    {
    //使用out打印堆沾信息。
    }
      

  4.   

    谢谢zealVampire(白鹤泉)的指点,但由于打印出来的东西主要是给客户看的,按这么打印出来,估计客户是不会明白的,有没有更好的方法。就是根据error.personinfoExcel.name这个信息给出中文信息。
      

  5.   

    可以把request.setAttribute("exception",e)
    然后在jsp里显示啊
      

  6.   

    request.setAttribute("exception",e)这样打印,不就跟zealVampire(白鹤泉)说的一样了吗,界面不够友好,客户只知道是那个字段长了,不用知道具体的原因。我的问题是,可不可以打印出例外里面的参数,如throw new NoSuchEntityException("error.personinfoExcel.name");里面的error.personinfoExcel.name。谢谢
      

  7.   

    myhotsun(科科) 请赐教,小哥确实发愁着呢。
      

  8.   

    用Try,Catch就可以了呀!
    Exception是你自己创建的.
    你把错误原因写到Exception里面不久可以了吗?
    不要用e.printStackTrace();
    用e.getMessage()不久可以了吗?
      

  9.   

    干什么需要定义40多个,1个也可以呀!
    因为Message是你自己可以加上去的呀!
      

  10.   

    出错的时候,把自己定义的Exception扔出去,就可以了呀.
      

  11.   

    我认为可以这样:
    (1)定义一个errors.properties文本文件,将可能出现的错误以及要显示给用户的匹配信息记录在此文件里,(例如 tooLongName = "名字过长",tooShortName = "名字过短"...),(2)定义一个自己的异常类(MyException),利用java.util.ResourceBundle绑定errors.properties,该类的作用用来翻译应用程序得到的异常,转换为用户希望看到的信息输出给显示层,(3)在业务类中(处理excel的类中)如果出现名字过长,则抛出MyException(tooLongName),如果名字过短则抛出MyException(tooShortName)...
      

  12.   

    建议使用struts框架,这个问题可以很容易的解决,jsp页面只需使用一个简单的taglib就可以解决这个问题。看看struts in action这本书吧,看完前三章,就ok了