请问Pratise.Search.doGet(Search.java:18)  18行的位置在哪里

解决方案 »

  1.   


    res.setStatus(res.SC_NOT_FOUND);
    检查这行。
      

  2.   

    对象是Null,
    没有初始化。。
    楼主。去找一下到底是哪一行报错。然后看一下那一行的对象在哪里已经是初始化了。找出来,找不出来就是那里有问题了。。
      

  3.   

    String searchString = req.getParameter("searchString");
    if((searchString == null) || (searchString.length() == 0))// 这里提前判断
    //编码转换,使其支持中文搜索
    searchString = new String(searchString.getBytes("8859_1"),"GB2312");
      

  4.   

    searchString = new String(searchString.getBytes("8859_1"),"GB2312");searchString.getBytes的问题
    //楼上就是解决方式
      

  5.   

    String searchString = req.getParameter("searchString");
    //编码转换,使其支持中文搜索
    searchString = new String(searchString.getBytes("8859_1"),"GB2312");
    if((searchString == null) || (searchString.length() == 0))
    {
    res.setStatus(res.SC_NOT_FOUND);
    return;
    }
    1.你为什么不把searchString = new String(searchString.getBytes("8859_1"),"GB2312");,放到你的判断后呢? if((searchString == null) || (searchString.length() == 0))
    {
    res.setStatus(res.SC_NOT_FOUND);
    return;
    }
    searchString = new String(searchString.getBytes("8859_1"),"GB2312");//如果你的searchString 为null呢? 那么null.getBytes(...),会有问题的.
      

  6.   

    问题我解决了,应该把下面的代码
    <p>搜索关键字:
      <input type="text" name="searchString" />
    </p>
    放到<form></form>里面
      

  7.   


    String searchString = req.getParameter("searchString");
    //编码转换,使其支持中文搜索
    searchString = new String(searchString.getBytes("8859_1"),"GB2312");//这里的searchString可能出现null
    故改成:
    String searchString = req.getParameter("searchString");
    searchString = searchString == null ? "" : searchString;//或是用if 判断下,如果为null就不转换
    //编码转换,使其支持中文搜索
    searchString = new String(searchString.getBytes("8859_1"),"GB2312");
      

  8.   

    searchString这个input没有放到form中,后台当然得不到了