簡體   English   中英

Spring 引導應用程序未在 TomEE Plus 上運行

[英]Spring Boot application not running on TomEE Plus

我有一個 spring 引導應用程序,我正在嘗試將它部署到 TomEE Plus 服務器上。 該應用程序與嵌入式 Tomcat 服務器和 Tomcat 9.0.43 設置完美配合。 我將部署文件復制到 TomEE webapps 文件夾中,啟動服務器,然后……什么都沒有。

我沒有看到通常的 Spring 引導啟動標志,而 TOMEE 似乎只是跳過了 spring 引導應用程序。 相反,我收到以下錯誤(為清楚起見而縮短):

java.lang.IllegalStateException: Error starting child
     at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:720)
     at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:690)
     at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:706)
     at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:1133)
...
Caused by: org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Catalina].StandardHost[localhost].StandardContext[/MyApp]]
     at org.apache.catalina.util.LifecycleBase.handleSubClassException(LifecycleBase.java:440)
     at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:198)
     at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:717)
     ... 37 more
Caused by: java.lang.NoClassDefFoundError: javax/servlet/jsp/tagext/TryCatchFinally
     at java.lang.ClassLoader.defineClass1(Native Method)
     at java.lang.ClassLoader.defineClass(Unknown Source)
     at java.security.SecureClassLoader.defineClass(Unknown Source)
...
Caused by: java.lang.ClassNotFoundException: javax.servlet.jsp.tagext.TryCatchFinally
     at java.net.URLClassLoader.findClass(Unknown Source)
     at java.lang.ClassLoader.loadClass(Unknown Source)
     at java.lang.ClassLoader.loadClass(Unknown Source)
     ... 73 more

My Tomcat configuration is as follows: Apache Tomcat (TomEE)/9.0.39 (8.0.5) running on Windows 10 with JVM 1.8.0_281-b09 from Oracle

事實證明它在 Tomcat 中不起作用,它僅在嵌入式服務器中起作用。

我在 Servlet Initializer 中缺少配置方法

@SpringBootApplication
public class Application extends SpringBootServletInitializer {

    public static void main(String[] args) {
        SpringApplication.run(Application.class, args);
    }

    @Override
  protected SpringApplicationBuilder configure(SpringApplicationBuilder application) {
    return application.sources(Application.class);
  }
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM