白标错误页面,类型:找不到状态:404

时间:2019-04-16 15:37:59

标签: maven spring-boot java-8 swagger-2.0

我们最近将Spring Boot版本从1.5.10升级到了2.1.2,我遇到了一个问题。当将服务部署在j老板服务器上时,它表示服务未找到,并且当我用https://host:port/serviceName/swagger-ui.html大张旗鼓地调用服务时抛出白色标签错误页面错误,但是如果我呼叫https://host:port/swagger-ui.html则可以访问服务和一切都很好。有人可以让我知道会有什么问题吗?感谢帮助。

pom.xml或bootstrap.yml没有任何变化,我刚刚升级了Spring Boot版本。其他所有内容与以前相同。

  

下面是POM.Xml

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>
    <groupId>com.goo.foo</groupId>
    <artifactId>security-service</artifactId>
    <version>1.2.3</version>
    <properties>
        <dep.scope>compile</dep.scope>
        <java.version>1.8</java.version>
        <maven.compiler.target>1.8</maven.compiler.target>
        <maven.compiler.source>1.8</maven.compiler.source>
        <ojdbc.version>12.1.0.2</ojdbc.version>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
        <springfox-version>2.6.1</springfox-version>
        <config.version>2.1.0.RELEASE</config.version>
        <admin.version>2.1.0</admin.version>
        <consul-starter.version>2.1.0.RELEASE</consul-starter.version>
        <cloud-consul.version>2.1.0.RELEASE</cloud-consul.version>
    </properties>
    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>2.1.2.RELEASE</version>
        <relativePath />
    </parent>

    <dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-actuator</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-consul-dependencies</artifactId>
            <version>${cloud-consul.version}</version>
            <type>pom</type>
            <scope>import</scope>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-jdbc</artifactId>
        </dependency>
        <!--SpringFox dependencies -->
        <dependency>
            <groupId>io.springfox</groupId>
            <artifactId>springfox-swagger2</artifactId>
            <version>${springfox-version}</version>
            <scope>${dep.scope}</scope>
        </dependency>
        <dependency>
            <groupId>io.springfox</groupId>
            <artifactId>springfox-swagger-ui</artifactId>
            <version>${springfox-version}</version>
            <scope>${dep.scope}</scope>
        </dependency>
        <dependency>
            <groupId>org.owasp.esapi</groupId>
            <artifactId>esapi</artifactId>
            <version>2.1.0</version>
        </dependency>
        <dependency>
            <groupId>io.jsonwebtoken</groupId>
            <artifactId>jjwt</artifactId>
            <version>0.7.0</version>
        </dependency>
        <!-- Oracle JDBC driver -->
        <dependency>
            <groupId>com.oracle.jdbc</groupId>
            <artifactId>ojdbc7</artifactId>
            <version>${ojdbc.version}</version>
            <scope>${dep.scope}</scope>
        </dependency>
        <dependency>
            <groupId>javax.servlet</groupId>
            <artifactId>javax.servlet-api</artifactId>
        </dependency>
        <!-- Consul properties -->
        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-consul-all</artifactId>
            <version>${consul-starter.version}</version>
        </dependency>
        <!-- Spring config server - external properties -->
        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-config-client</artifactId>
            <version>${config.version}</version>
        </dependency>

        <!-- Spring boot admin client - monitoring the purpose -->
        <dependency>
            <groupId>de.codecentric</groupId>
            <artifactId>spring-boot-admin-starter-client</artifactId>
            <version>${admin.version}</version>
        </dependency>

    <!--  jedis cache  -->
        <dependency>
            <groupId>redis.clients</groupId>
            <artifactId>jedis</artifactId>
        </dependency>

    </dependencies>

    <build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
            </plugin>
        </plugins>
    </build>

</project>

1 个答案:

答案 0 :(得分:0)

好像您“丢失”了context-path。我猜您以前使用过时的server.contextPath=/serviceName以某种形式指定了它。有几种设置方法,但我要在application.yaml

中进行配置
server:
  servlet:
    context-path: serviceName

application.properties

server.servlet.context-path=/serviceName

或者您可以通过将其指定为命令行参数来设置上下文路径

java -jar app.jar --server.servlet.context-path=/serviceName

这只是可用的一些选项。弄清楚您之前的设置方式,然后将其替换为server.servlet.context-path