<result name="specListSub" type="redirect-action">
    <param name="actionName">getListInfo</param>
     <param name="namespace">/common/ect</param>
      <param name="sqlType">SQL</param>
      <param name="fldString">${fldString}</param>如上的配置文件。由于sldstring参数太长 所以不能连接到新的action中? 请大家指教一下 ,非常感谢。

解决方案 »

  1.   

    不会报异常的,只是不加载新的action,原因就是url在长了,而这种情况是由fldstring这个参数太长导致的。
      

  2.   

    参数太长  只能用 post,   
    url地址拦 长度有限制的(具体多长忘了) 搜索下就知道多长
      

  3.   

    result使用type="chain" 用于配置多个Action组成一个链或工作流程来处理用户请求,是通过ChainingInterceptor拦截器来完成的,所有的参数、值栈和请求都是保留的。例子:
    sqlType和fldString是dr0002Action中的属性。
    在dr0003Action中取得sqlType和fldString就能取到。配置文件如下:<action name="DR0002" method="doPost" class="dr0002Action"> 
        <result type="chain"> 
            <param name="actionName">DR0003 </param> 
        </result> 
    </action> 
    <action name="DR0003" method="doPost" class="dr0003Action"> 
        <result> 
          /WEB-INF/jsp/debug/struts/rslt/DR0003.jsp 
        </result> 
    </action>在dr0003Action中直接去的
      

  4.   

    用post吧,get好像有长度限制的,1024个字节
      

  5.   

    可以在action方法中使用getParameter来得值!不一定要在url中传。
    <param name="actionName">getListInfo </param> 
    <input type="hidden" name="actionName" value="getListInfo"/>
    以此类推
      

  6.   

    用post是对的,如果条件特殊的话,加过渡页面,在onload中提交表单.