Struts2.0中的goods-struts-config.xml
goods表示一个模块,它里面配置了一个action
<action path="/oper" type="com.niat.material.action.GoodsOperatorAction" parameter="active" 
   name="gf" validate="true" input="/WEB-INF/jsp/goods/add_goods.jsp">这里gf需要验证,用的是validation验证框架,问题:input="/WEB-INF/jsp/goods/add_goods.jsp" 这里因为在goods模块中,所以转发时默认的会加上goods,所以
整个地址就成了http://localhost:8080/project_name/  goods  /WEB-INF/jsp/goods/add_goods.jsp
怎么把goods去掉?不要用重定向,我试过重定向,可行!但是我要在request范围内传递错误信息,重定向后就没了

解决方案 »

  1.   

    1. WEB-INF目录下的文件能直接访问?2.要在request范围内传递错误信息,重定向后也可以:request.getRequestDispatcher("/project_name/WEB-INF/jsp/goods/add_goods.jsp").forward(request, response);
    //可以将request转发到 /project_name/WEB-INF/jsp/goods/add_goods.jsp
      

  2.   

    是有这个问题,但是不知道这么做可否实现 input="../WEB-INF/jsp/goods/add_goods.jsp"测试一下吧
      

  3.   


    最简单的方法:
       采用include方式加载其它的配置文件
      

  4.   


    在Struts怎么用include加载其他的配置文件?能不能详细点
    举个例子撒
      

  5.   

    new ActionForward(url?param=paramvalue)
    这样不就行了
    当然也可以有其他解决方案
      

  6.   

    重定向又是一次请求,上次请求中的值不会保留到下次中,
    要想实现可以把值又带会下次请求中,或是楼上 new ActionForward(url?param=paramvalue) ,这样也是可行的
    or request.setAttribute(arg0, arg1);然后 在下次请示中request.getAttribute(arg0);
      

  7.   


    <?xml version="1.0" encoding="UTF-8"?><!DOCTYPE struts PUBLIC          "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"          "http://struts.apache.org/dtds/struts-2.0.dtd"><struts>    <include file="user.xml" />    <!-- Add packages here --></struts>