gpt4 book ai didi

部署的 EAR 内的 Weblogic

转载 作者:行者123 更新时间:2023-12-02 22:05:20 26 4
gpt4 key购买 nike

你可以使用 <virtual-directory-mapping>引用部署的 EAR 内的静态内容,它会带来什么好处吗?

免责声明:理想情况下,字体、javascript 和 css 等静态资源应由网络服务器而不是应用程序容器提供。

有很多关于SO的文章关于<virtual-directory-mapping>在Weblogic中。它也有详细记录herehere .

我的应用程序部署在以下位置:

c:\weblogic\deploy\ACME.ear

内部ACME.ear CSS 存在以下文件夹结构, FontsJS

store.war\include\js\script.js
store.war\include\js\function.js
store.war\include\fonts\font.woff
store.war\include\fonts\font.woff2
store.war\include\css\css-output\ie.css
store.war\include\css\css-output\interactive\large.css
store.war\include\css\css-output\interactive\small.css

我的上下文根被指定为 /store .

在正常操作中,我将能够访问网站中的 script.js,如下所示:

http://www.acme.com/store/include/js/script.js

该请求随后将通过我的应用程序请求管道。我想要实现的目标是简单地提供 /include/ 的内容文件夹,位于 .war 内作为静态文档,而无需通过整个请求管道(在我的例子中是 ATG)。

我已将以下行添加到我的 weblogic.xml

<virtual-directory-mapping>
<local-path>C:/weblogic/deploy/ACME.ear/store.war/include</local-path>
<url-pattern>/include/css/*</url-pattern>
<url-pattern>/include/fonts/*</url-pattern>
<url-pattern>/include/js/*</url-pattern>
<url-pattern>/include/lib/*</url-pattern>
</virtual-directory-mapping>

希望这不会通过整个管道传递请求,而是将其简单地呈现为静态资源。

根据文档,它将首先尝试通过 <virtual-directory-mapping> 渲染它。在尝试从容器文档根渲染它之前。

即使采用上述配置,/include/中的静态内容文件夹仍然由容器呈现,而不是通过 Weblogic 作为静态资源呈现。我有以下问题:

  1. 这是否是一种有效的方法?即使静态资源存在于 .war 中,我可以使用上述配置将其渲染为“外部”静态资源吗?
  2. 应该<url-pattern>包括context-root ?应该<local-path>包括context-root ? (我尝试了包含和排除的各种组合,但没有成功)
  3. 如何使用 <url-pattern> 访问文件夹和子文件夹中的文件。我需要指定每个子文件夹吗?

最佳答案

<virtual-mapping-directory>上面的配置不正确。因为这是不正确的,Weblogic 将尝试在该文件夹中查找内容,如果失败,则恢复为从默认的 doc-root 提供服务。 。正确的配置是:

<virtual-directory-mapping>
<local-path>C:/weblogic/deploy/ACME.ear/store.war</local-path>
<url-pattern>/include/*</url-pattern>
<url-pattern>*.js</url-pattern>
<url-pattern>*.css</url-pattern>
<url-pattern>*.woff</url-pattern>
</virtual-directory-mapping>

需要注意的是,必须存在一个名为:

C:/weblogic/deploy/ACME.ear/store.war/include

以便将其作为虚拟目录找到。

仍然没有弄清楚它是否提供任何实际的运行时好处。

关于部署的 EAR 内的 Weblogic <virtual-directory-mapping>,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39355874/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com