在WEB-INF中创建XML文件

时间:2015-04-28 21:08:00

标签: java jsp java-ee servlets

我使用http://tuckey.org/urlrewrite/创建我的网站地图,目前我有很多链接,我不能手工编写所有规则,例如:

<rule>
   <from>^/about-us$</from>
   <to type="redirect">/myWeb/Controller?page=ForwardAbout</to>
</rule>

Tuckey在WEB-INF文件夹中使用名为urlrewrite.xml的文件。

重定向规则可以来自数据库,例如:每当创建文章时,将行插入所需的链接,如:

/about-potatoes

规则将成为这个

<rule>
   <from>^/about-us$</from>
   <to type="redirect">/myWeb/Controller?page=ForwardPotatoes</to>
</rule>

然后应编写urlrewrite.xml,以便重定向到新文章。

主要问题是:如何在WEB-INF中创建此urlrewrite.xml

次要问题:每周都会制作新文章,每周创建此urlrewrite.xml以更新规则,这些规则是否适用,无需重新部署网络应用再次?

1 个答案:

答案 0 :(得分:2)

在大多数应用程序服务器上,除非重新打包并重新部署应用程序,否则无法动态更改Web应用程序内的任何内容。

即使您可以更改文件,例如在解压缩的战争中,tuckey可能仍然只读取一次文件,除非你重新启动应用程序,否则不会选择新的规则。

为什么不制作符合所有要求的更具动态性的规则?在重写规则中,您可以使用反向引用,例如&#39; $ 1#39;这将匹配括号之间的第一个正则表达式,如:

<rule>
   <from>^/about-(.*)$</from>
   <to type="redirect">/myWeb/Controller?page=Forward$1</to>
</rule>