【问题标题】:unable to launch springboot application deployed on websphere 8.5.5无法启动部署在 websphere 8.5.5 上的 springboot 应用程序
【发布时间】:2018-11-01 09:39:14
【问题描述】:

我已经使用 spring boot 1.4.3.release(启动父依赖项)和 hibernate 5.0.12 以及与 Oracle 11g 的数据库连接创建了一个 java 应用程序,该数据库连接将部署在 Websphere 8.5.5 上。 问题是上述应用程序的war文件已部署在websphere上,但在启动时错误如下图所示。

  • 我尝试过的事情:
    1. 成功部署了一个没有任何数据库依赖的war文件
    2. 已成功部署带有嵌入式数据库(H2、Derby)的 war 文件
    3. 在 Websphere 8.5.5 上提供第 3 方持久性提供程序
    4. 已尝试使用 JNDI 数据源

我还尝试检查 Hibernate 版本和 JPA 问题的任何问题。

我添加的依赖列表:

<parent>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-parent</artifactId>
    <version>1.4.3.RELEASE</version>
</parent>

<properties>
 <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    <java.version>1.8</java.version>
</properties>

<dependencies>

 <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-web</artifactId>
    </dependency>



    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-thymeleaf</artifactId>
    </dependency>

    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-tomcat</artifactId>
        <scope>provided</scope>
    </dependency>
    <!-- hot swapping, disable cache for template, enable live reload -->
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-devtools</artifactId>
        <optional>true</optional>
    </dependency>



    <dependency>
        <groupId>org.apache.poi</groupId>
        <artifactId>poi</artifactId>
        <version>3.15</version>
    </dependency>

    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-data-jpa</artifactId>
    </dependency>

    <dependency>
        <groupId>org.apache.poi</groupId>
        <artifactId>poi-ooxml</artifactId>
        <version>3.15</version>
    </dependency>

    <dependency>
        <groupId>commons-io</groupId>
        <artifactId>commons-io</artifactId>
        <version>1.3.2</version>
    </dependency>

     <dependency>  
        <groupId>com.googlecode.json-simple</groupId>  
        <artifactId>json-simple</artifactId>  
    </dependency> 

    <dependency>
      <groupId>com.google.code.gson</groupId>
      <artifactId>gson</artifactId>  
    </dependency> 



    <dependency>
        <groupId>com.oracle</groupId>
        <artifactId>ojdbc6</artifactId>
        <version>11.2.0.3</version>
    </dependency>
    <!-- Optional, for bootstrap -->
    <dependency>
        <groupId>org.webjars</groupId>
        <artifactId>bootstrap</artifactId>
        <version>3.3.7</version>
    </dependency>

    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-security</artifactId>
    </dependency>



</dependencies>
<build>
  <finalName>oracleapp</finalName>
    <plugins>
        <!-- Package as an executable jar/war -->
        <plugin>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-maven-plugin</artifactId>
        </plugin>
    </plugins>
</build>

请帮帮我。

下面是项目结构

【问题讨论】:

  • 你的应用启动了吗?日志中有什么?
  • 您介意添加您的包结构吗?可能类路径设置不正确。
  • 当您请求http://localhost:9080 时会发生什么?这是,没有上下文路径?
  • @bphilipnyc 当我请求 localhost:9080 时,它会给出 SRVE0255E:尚未定义处理 127.0.0.1:9080 的 WebGroup/虚拟主机。
  • @Strelok 是的,应用程序已启动,但无法找到我认为的上下文。

标签: java spring-boot thymeleaf web-deployment websphere-8


【解决方案1】:

您遇到的问题是您的 Main 类位于何处。您需要将其移动到根包,在那里它可以看到所有其他包。类似于以下结构。

src/main/java
    -> SpringBootWebApplication (which I believe is your Main class)
        -> All other packages

这将允许您的 main 找到您正在寻找的文件。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-08-06
    • 1970-01-01
    • 2020-12-17
    • 1970-01-01
    • 2014-03-27
    相关资源
    最近更新 更多