我想在Struts2应用程序的WebContent文件夹内的文件夹下发布一些资源(文件夹和文件),并允许对该文件夹内容进行免费目录浏览。
的WebContent /公共文件夹/
有人知道如何实现这个目标吗?
我的所有尝试都失败了,经典的“没有动作映射为动作名称公共文件夹”
我正在使用Sitemesh装饰器,并定义了下一个排除模式:
<excludes>
<pattern>/*public-folder*</pattern>
</excludes>
似乎我无法摆脱Struts2控件。 感谢...
答案 0 :(得分:5)
警告强>
没有为动作名称公共文件夹
映射的动作
因为/*
过滤器
<filter>
<filter-name>struts2</filter-name>
<filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<强>解决方案强>
struts.xml
(Preventing Struts 2 from Handling a Request)
<!-- value : regular expressions -->
<constant name="struts.action.excludePattern" value="/public-folder/.*?" />
[Tomcat] /conf/web.xml
<init-param>
<param-name>listings</param-name>
<param-value>true</param-value> <!-- default is false -->
</init-param>