代码之家  ›  专栏  ›  技术社区  ›  Kalle Richter

glassfish应用程序之间有什么区别。xml和glassfish web。GlassFish/Payara 4中的xml。x?

  •  4
  • Kalle Richter  · 技术社区  · 7 年前

    对于Java EE和Web概要文件之间的差异,我有很多解释(“Tomcat和GlassFish之间的区别是什么”,“GlassFish和JBoss之间的区别是什么”,等等),这对我来说非常清楚。有好问题要问 glassfish-web.xml vs sun-web.xml vs web.xml 以及 The difference between web.xml, beans.xml, applicationContext.xml, etc 然而,它们都与玻璃鱼3有关。x文档[1]。

    我想有一些明确的声明

    • 之间的优先级 glassfish-application.xml glassfish-web.xml ,这意味着其中一个覆盖另一个(由于类加载顺序颠倒,web覆盖应用程序可能是合乎逻辑的),还是从两者中选择选项?
    • 可能的位置,我可以期待的文件被拿起。我想 / 在应用程序和 /WEB-INF/ 在应用程序描述符的战争中(在ear中)
    • 是否可以在这两个文件中指定可以在其他文件中指定的任何值,如 web.xml beans.xml 如果是,优先顺序是什么?
    • war打包(而不是ear打包)的Java EE应用程序的情况如何?

    我认为帕亚拉和GlassFish之间没有区别,因为前者被设计成一个替代品——事实是 documentation is practically not found by google Payara和GlassFish 4的情况相同。x。


    [1] 这就是 这个 玻璃鱼的主要问题——大多数时候只有3条。x文档可以通过手册、博客等问题中的链接获得,您必须尝试所有的事情,并假定它可能不起作用,因为3发生了一些变化。x到4。x导致n个问题的复杂性为2^n。

    1 回复  |  直到 7 年前
        1
  •  4
  •   michaelranaldo    7 年前

    glassfish应用程序之间的优先级。xml和glassfish web。xml,意思是一个覆盖另一个(由于类加载顺序颠倒,web覆盖应用程序可能是合乎逻辑的),还是从两者中选择选项?

    这个 glassfish-application.xml 用于 .ear 文件,而 glassfish-web.xml 用于 .war 文件夹。对于 .战争 .耳朵 这个 玻璃鱼网。xml 将覆盖在 glassfish-ejb.xml .

    可能的位置,我可以期待的文件被拿起。我假设/在ear中用于应用程序,而/WEB-INF/在war中(在ear中)用于应用程序描述符

    如果您指的是文件应位于的位置 glassfish应用。xml 应放置在 META-INF .耳朵 沿着 MANIFEST.MF ,而 玻璃鱼网。xml 应放置在 WEB-INF ,与 beans.xml .

    是否可以在这两个文件中指定可以在其他文件(如web)中指定的任何值。xml或bean。xml,如果是,优先顺序是什么?

    是的,标准JavaEE部署描述符 web.xml , 豆。xml etc受到尊重,但如果存在特定于服务器的部署描述符(即。 玻璃鱼网。xml )它们将被覆盖。

    war打包(而不是ear打包)的Java EE应用程序的情况如何?

    在war打包的应用程序中,您应该坚持使用 玻璃鱼网。xml 部署描述符。这将覆盖JavaEE中设置的值 网状物xml 部署描述符,但两者都将被读取。

    我假设Payara和GlassFish之间没有什么区别,因为前者的设计目的是作为一个替代品——事实上,谷歌几乎找不到文档,这与GlassFish 4中的Payara是一样的。x。

    由于Payara服务器源于GlassFish,我们只记录扩展或修改默认行为的区域。因此,GlassFish 4文档 https://javaee.github.io/glassfish/documentation4 可用于Payara服务器文档中未提及的任何领域 https://docs.payara.fish/ . 我同意,这确实让找到您想要的东西非常痛苦,尤其是在GlassFish部署指南没有明确说明的情况下。事实上,GlassFish 5文档的很大一部分似乎与3.1.2没有变化,因此您可能离当前的答案不远。