请问下,Struts2伪静态 规则。查了 好多资料 没有解决
urlrewrite.xml
 <from>^/upLoad/([0-9]+)$</from>
 <to type="redirect">/upLoad/upLoad_uploadMcShow.action?mc.mcId=$1</to>页面
<a href="<%=basePath%>upLoad/${mc.mcId}"><s:property value="#request.mc.mcContent"/></a>
请问下 这样写 哪里不对?只要说对了,分数全给一个人

解决方案 »

  1.   

    struts2的话, 可以不用urlrewrite的吧。 本身就支持风格化的url
            <action name="actionName/*" class="xAction">
                <param name="name">{1}</param>    ---------参数
                <result name="success"></result>
            </action>
    然后把urlmapping设为 *.html  就相当于伪静态了吧。
      

  2.   

    Java做静态化  没必要非得要struts2啊   可以参考下别的    看别的同事玩过
       我是新手  不好意思
      

  3.   

    代码示例和urlmapping 没有关系啊。
    没有说明白。谢谢
      

  4.   


    恩,没有走/upLoad/upLoad_uploadMcShow.action?mc.mcId=$1 
      

  5.   

    1.注意两点: ? 要转义 \?,  & 改成&amp;"
    2.url要重写  , 用response.encodeURL("href") ,或用些框架标签,核心标签
     
    <from>^/upLoad/([0-9]+)$</from>
     <to type="redirect">/upLoad/upLoad_uploadMcShow.action\?mc.mcId=$1</to>
    <a href="<%= response.encodeURL("href") %>"</a>   //地址你自己拼写, 当然了struts2的 <s:a> <s:url>很好用
      

  6.   

    拦截器配置的吧?其他的url重写有问题吗?${mc.mcId}是多少?  ([0-9]+)$
      

  7.   


    如果 只是JSP的 话是可以的,但是换成action 就不可以了
      

  8.   

    action如果换成jsp就可以? 那你有试过单独访问action吗?
    能否贴上<a href="<%=basePath%>upLoad/${mc.mcId}"> 这里生成后的值呢?
      

  9.   

    你没配置struts2的转发机制 forward  和 request
      

  10.   

    404错误 action 配置错误,或者路径错误!和什么重定向没有什么关系,你直接访问action 看下有没有找到action 
      

  11.   

    我用的C标签,<%@ taglib prefix="c" uri="/WEB-INF/c.tld" %><a href="<c:url value="/test/showTestAction.action"><c:param name="parama1" value="1"></c:param></c:url>">测试</a>