请原谅小弟的无知,但是在网上搜索了半天确实没有找到答案,只好麻烦各位了问题是关于jsp通过url向servlet传值,目前我所知道的是,在jsp页面,把链接写成类似这样:<a href="/Product?item=itemnale">再在servlet中使用:String productname = request.getParameter("item");取得参数值,但是实际情况是,由于定义的servlet地址是"/Product" 类似/Product?item=itemnale的链接地址并不能使用servlet,我应该怎么做呢?需求是这样的,在页面中以超级链接的方式显示一个item的列表,然后当我点击一个item的时候,便调用叫Product的servlet取得item的详细信息,在/Product?item=itemnale页面中显示

解决方案 »

  1.   

    不懂这句话
    类似/Product?item=itemnale的链接地址并不能使用servlet,
      

  2.   


    我的Servlet地址是"/Product"
    用/Product?item=itemnale作为urlServlet调用不了……
      

  3.   

    public void doGet(HttpServletRequest request, HttpServletResponse response)
    throws ServletException, IOException {
    String productname = request.getParameter("item");
    request.getRequestDispatcher("/Product.jsp").forward(request, response);
    }代码形如我上面写的那样,注意的是当点击item跳转到Projuct.jsp页面,这个页面是item值为某某的页面
      

  4.   

    忘了说,你得到的productname,后台写方法根据这个productname的值返回product的一个list列表,然后把这个列表放到session中。形如session.setAttribute("list", list);
      

  5.   

    servlet的url 在web.xml里配置一下。
      

  6.   

    <a href="/Product?item=itemnale">
    改成
    <a href="Product?item=itemnale">再试一下!
      

  7.   

    检查你部署的应用的web.xml,里面servlet的url是否跟你<a href>里面的路径不一致尽量不要用URL传值方式,诸多弊端,比如中文编码,信息不安全等等(浏览器就可以看到你传的值)
      

  8.   

    你那是web.xml的问题、
    <servlet> 
    <servlet-name>Product</servlet-name> 
    <servlet-class>test.Product</servlet-class> 
    </servlet> 
    <!-- ... --> 
    <servlet-mapping> 
    <servlet-name>Productt</servlet-name> 
    <url-pattern>/Product</url-pattern> 
    </servlet-mapping> 
      

  9.   

    取得参数值,但是实际情况是,由于定义的servlet地址是"/Product" 类似/Product?item=itemnale的链接地址并不能使用servlet,我应该怎么做呢?
    这不可能吧,/Product和/Product?item=itemnale肯定是同一个url啊,只是后面的参数不一样而已。
      

  10.   

    看看你的servlet-mapping是如何配置的,如果是/Product那,调用的方式应该是:Product?你不要写前面那个/