gpt4 book ai didi

java - 打包在 EAR 文件中的 JAR 文件中的 JSP taglib

转载 作者:塔克拉玛干 更新时间:2023-11-02 20:16:51 26 4
gpt4 key购买 nike

我有以下情况:

  • taglib.jar :打包为 JAR 文件的自定义 JSP 标签库。 TLD 文件是 /META-INF/taglib.tld .
  • webapp.war :带有 JSP 文件的 Web 应用程序,这些文件使用 taglib.jar 提供的标签.
  • app.ear : 包含 webapp.war 的 J2EE 应用程序和其他 WAR 文件。

我要打包单taglib.jarapp.ear所以 webapp.war 中的 JSP 文件其他WAR文件都可以使用它的标签。我在 JSP 文件中尝试了以下指令,但没有成功:

  • <%@ taglib uri="/taglib.jar" prefix="xxx" %>
  • <%@ taglib uri="taglib.jar" prefix="xxx" %>

是否可以将 JSP taglib JAR 文件打包到 EAR 文件中?如果是,我应该在 uri 中指定哪个值taglib 的属性指令?

注意:我当然可以打包 taglib.jar/WEB-INF/lib每个 WAR 文件,但这正是我试图避免的。

上下文:我在 JBoss 4.2.3 上部署 EAR 文件。

编辑:恐怕这是不可能的,特别是因为我阅读了the section about skinny WARs来自 Maven WAR plugin documentation :

Sometimes a list of JARs must be packaged into the WAR (...) in order for it to work properly, like with tag libraries.

最佳答案

jar 标签库只能存在于 WEB-INF/lib 下。容器可能会提供一些自定义方式来配置常用的 tld。在JBOSS中实现一样,就是这样

JspServlet 支持一个新的 engineOptionsClass,它允许替换选项实现。默认设置现在使用 jboss 特定的 JspServletOptions:

引擎选项类org.jboss.web.tomcat.tc5.jasper.JspServletOptions

它反过来使用自定义标签库描述符缓存 org.jboss.web.tomcat.tc5.jasper.TagLibCache 从 tomcat sar conf/tlds 中的 jars 加载标签库。

关于java - 打包在 EAR 文件中的 JAR 文件中的 JSP taglib,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6056671/

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