【问题标题】:Glassfish and Spring Boot: .war re-deployment failedGlassfish 和 Spring Boot:.war 重新部署失败
【发布时间】:2014-06-24 01:33:13
【问题描述】:

我正在尝试将应用程序构建从 https://github.com/spring-guides/gs-convert-jar-to-war 部署到本地 glassfish4。并且它第一次很好地发展(如果我可以从框架中调用一些例外的良好行为)。至少,我可以在浏览器中打开项目的索引页。

但如果我尝试取消部署并重新部署,或者只是覆盖 autodeploy 目录中的 .war 文件,部署将失败。 glassfish 日志文件中似乎没有添加任何内容。

我从 eclipse 发布的项目使用它的一些机制成功部署和重新部署。

以下是相关内容的日志: http://pastebin.com/zSeMw5tC

可能是什么问题?

【问题讨论】:

  • 这看起来有人与 JBoss 有同样的问题,请参阅 #777

标签: spring glassfish spring-boot


【解决方案1】:

不久前我用 Glassfish 做了一些实验。 CDI 实现确实被 IMO 破坏了(它不应该加载类来扫描它们的注释),但是如果有一个包含

WEB-INF/classes/META-INF/beans.xml,我尝试的应用程序可以在 GF 4 上运行
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://xmlns.jcp.org/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="
      http://java.sun.com/xml/ns/javaee http://docs.jboss.org/cdi/beans_1_0.xsd"
bean-discovery-mode="none">
    <scan>
        <exclude name="org.springframework.**" />
        <exclude name="org.apache.**" />
        <exclude name="com.google.**" />
    </scan>
</beans>

我在 GF 3 中没有做过任何工作(旧的 CDI 规范,无法排除我认为的东西)。

【讨论】:

  • 我将您提供的文件添加到 .war 内的 WEB-INF/classes/META-INF/ 中,但没有任何变化,同样的异常,同样的行为。但是考虑到提到的github上的问题,这些内容似乎正是我所需要的。我做错什么了吗? (我几乎可以在任何事情上犯错误!)
  • 我认为可能 Glassfish 和 CDI 的版本非常重要。我使用的是 4.0 开箱即用(我相信从 glassfish-version.properties 来看)。
  • 有趣。即使我执行“asadmin deploy --property implicitCdiEnabled=false x.war”,我也会看到相同的异常。这意味着要么我无法禁用它,要么我禁用了一些错误。
  • 如果该属性得到尊重,那将很有用。我在不同的地方读到过它,但它似乎对我也没有用(也许 GF4 不支持它?)。
猜你喜欢
  • 2019-03-14
  • 1970-01-01
  • 2018-07-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-10-24
  • 2015-03-10
  • 2018-12-05
相关资源
最近更新 更多