Tomcat到国产中创应用中间件迁移
小杨想睡觉-_
2022年04月02日 12:14

    Tomcat是我们常用的一款轻量级的web容器中间件,随着国内信息技术的快速发展和信息安全意识的增强,加上政策性的引导,越来越多的企业开始进行国产化替代或准备开始进行相关工作。从整个技术栈分析,国产化替代比较重要,技术方案比较成熟,成本花费较少的环节就是对应中间件的国产化,下面就国内比较成熟的、应用比较广泛的一家国产中间件中创中间件从Tomcat上如何做迁移进行总结分享。

    中创应用服务器中间件是一款由山东中创软件中间件股份有限公司自主研发的企业级应用中间件,符合JavaEE7、8和Jakarta EE9等国际标准规范,在政府、电力、金融、电信等行业都有大量应用,是一款比较成熟、应用广泛的应用服务器中间件产品。

Tomcat到国产中创应用中间件迁移

虚拟目录功能迁移

    Tomcat虚拟目录可以帮助用户将实际访问的资源目录映射到一个虚拟指定的目录,既方便的了资源的存储又可以提升安全。

    中创应用中间件配置虚拟目录需要通过其部署描述符文件inforsuite-web.xml进行配置,配置完成后要将该文件放置到应用系统的WEB-INF目录下,重启应用中间件即可生效。

中创应用中间件支持以下三种方式进行映射目录配置:

<inforsuite-web-App>

<!--精确匹配 -->

    <property name="alternatedocroot_1&#​34; value="from=/upload/my.jpg dir=/yy/test"></property>

<!--最长路径匹配 -->

    <property name="alternatedocroot_1&#​34; value="from=/upload/*.jpg dir=/yy/test"></property>

<!--扩展匹配 -->

    <property name="alternatedocroot_1&#​34; value="from=/upload/* dir=/yy/est&#​34;></property>

</inforsuite-web-App>

其中dir为虚拟目录在服务器上的本地路径。“from=”内容表示访问映射的虚拟目录。在浏览器下输入的访问路径:http://ip:8080/jspDS/upload/my.jpg,实际访问的资源为:=/yy/test/upload/my.jpg。如果存在多个路径同时访问,访问依照顺序分别是精确匹配路径、最长路径匹配、扩展匹配。

注意“from=和dir=”是一条完整的访问路径 即我们访问应用/jspDS的upload目录下的my.jpg就是访问/yy/test/upload/my.jpg 在/yy/test/要创建一个upload目录对应from的路径做匹配也就是对应应用里面的upload。实际地址/yy/test/upload目录下放着my.jpg。from=/upload/* 的第一个反斜杠“/”代表应用上下文即jspDS。

示例

Tomcat配置文件server.xml虚拟目录设置如下,需要将其迁移至中创应用中间件上

Tomcat应用中间件配置(server.xml)

<Host name="localhost&#​34;  AppBase="webApps&#​34; unpackWARs="true&#​34; autoDeploy="true&#​34;>

<Context path="/xxyj/upload&#​34; docBase="/upload&#​34;></Context>

<Context path="/XXCS/XXCSMAP&#​34; docBase="/XXCSMAP&#​34;></Context>

<Context docBase=/upload" path=&#​34;/ytestApp/img"/>

</Host>

 中创应用中间件配置(inforsuiter-web.xml)

 <?xml version="1.0&#​34; encoding="UTF-8&#​34;?>

<inforsuite-web-App>

<property name="alternatedocroot_1&#​34; value="from=/xxyj/upload/* dir=/upload"></property>

<property name="alternatedocroot_2&#​34; value="from=/XXCS/XXCSMAP/* dir=/XXCSMAP"></property>

<property name="alternatedocroot_3&#​34; value="from=/ytestApp/img/* dir=/upload"></property>

</inforsuite-web-App>