【异常】This application has no explicit mapping for /error, so you are seeing this as a fallback的解决方法

简介: This application has no explicit mapping for /error, so you are seeing this as a fallback的解决方法

背景:使用 springboot + vue 构建的微信点餐系统

一、错误提示

最近在做一个项目,配置完信息以后,一直报错,访问URL报错信息如下:

3.png

Whitelabel Error Page

This application has no explicit mapping for /error, so you are seeing this as a fallback.

Sun Jun 23 13:26:10 CST 2019

There was an unexpected error (type=Not Found, status=404).

No message available


二、错误原因

2.1 原因一:启动类的位置不对

Springboot项目启动类的位置不对。要将启动类放在最外侧,即包含所有子包。(spring-boot会自动加载启动类所在包下及其子包下的所有组件)

4.png

2.2 原因二:控制器的URL路径书写问题  

控制器的URL路径书写问题  

@RequestMapping(“/xxx”)  

实际访问的路径与"xxx"不符合。

2.3 原因三:配置文件中视图解析器的配置问题

在springboot的配置文件中(application.yml或application.properties)关于视图解析器的配置问题:

当pom文件下的spring-boot-starter-paren版本高时使用:spring.mvc.view.prefix/spring.mvc.view.suffix

当pom文件下的spring-boot-starter-paren版本低时使用:spring.view.prefix/spring.view.suffix

三、解决方案

注意此项目引入的Spring Boot 版本是2.1.5的,然后项目的配置文件(application.yml)信息如下:

spring:  datasource:    driver-class-name: com.mysql.jdbc.Driver
    username: root
    password: 123456    url: jdbc:mysql://192.168.31.204/sell?characterEncoding=utf-8&useSSL=false
  jpa:    show-sql: trueserver:  context-path: /sell

上网查了很多,原因是SpringBoot启动类(main方法所在的类)未放在根目录下,导致@SpringBootApplication扫描不全所有包。

3.1 解决方案一

针对原因一的解决方案,也是官网上建议的:将SpringBoot启动类(main方法所在的类)即Application.java放置在和Controller同级目录,如下图所示。

官网那边说明是,程序只加载Application.java所在包及其子包下的内容。

5.png

3.2 解决方案二

针对原因二,在浏览器中输入的路径与项目中写的路径要一致,如下图所示:

6.png

而我所遇到的还不是因为这个原因,因为我的包目录结构是正确的。我的项目出现WhitePage的原因竟然是spring-boot配置文件(application.yml)中server.context-path不起作用。不起作用的原因也已经查明:server.context-path的配置方式是SpringBoot 1.x.x版本中出现的,而我引用是2.x.x版本的,需要更改为server: servlet: context-path: /sell,/sell是访问的URL中用到的,以后再详细说明。其实归根结底还是访问的路径不存在的原因。

3.3 解决方案三

针对原因三,解决方案已经写在原因说明里了,直接按照说明修改即可。

springboot 在未配置访问静态资源的情况下,会默认到 templates 文件夹下找index页面。。我现在还没有配置,后续会继续编写。


关于server.context-path不起作用的详细说明可以点击查看此链接spring-boot配置文件中server.context-path不起作用的解决方案_No8g攻城狮的博客-CSDN博客


Whitelabel Error Page

This application has no explicit mapping for /error, so you are seeing this as a fallback.

Sun Jun 23 13:26:10 CST 2019

There was an unexpected error (type=Not Found, status=404).

No message available


本文首发于CSDN,为博主原创文章,如果需要转载,请注明出处,谢谢!


完结!

相关文章
|
XML C# 数据格式
C#报错 The ‘xmins‘ attribute is not supported in this context
System.Xml.Schema.XmlSchemaException:“The ‘xmins’ attribute is not supported in this context.”异常的解决百度翻译:System.Xml.Schema.XmlSchemaException:“此上下文中不支持”xmins“属性。”这是在使用System.Data.DataSet的ReadXml读取x...
80 0
C#报错 The ‘xmins‘ attribute is not supported in this context
|
Java 应用服务中间件 微服务
【Java异常】feign.FeignException: status 400 reading xxx 异常解决方案
【Java异常】feign.FeignException: status 400 reading xxx 异常解决方案
158 0
‘;‘ expected,Missing semicolon.Syntax Missing semicolon multi (web,若依定义方法,修改method,之后在mounted()用this
‘;‘ expected,Missing semicolon.Syntax Missing semicolon multi (web,若依定义方法,修改method,之后在mounted()用this
|
7月前
Error:Execution failed for task ':app:javaPreCompileDebug'. > Annotation processors must be explicit
Error:Execution failed for task ':app:javaPreCompileDebug'. > Annotation processors must be explicit
97 0
|
7月前
|
安全 Java 应用服务中间件
A configuration error occurred during startup.Please verify the preference field with the prompt: To
A configuration error occurred during startup.Please verify the preference field with the prompt: To
|
Java 编译器 Spring
报错:No fallback instance of type class**解决办法
报错:No fallback instance of type class**解决办法
1133 0
报错:No fallback instance of type class**解决办法
|
Java Android开发
Bad method handle type 7异常解决
在利用androidx版本写demo时,在添加了一些依赖后,遇到了`java.lang.ClassNotFoundException`bug,这就很奇怪了,我就添加rxjava3的依赖,就给我报这个错误。
|
JavaScript
【异常】$ is not defined (已解决)
$ is not defined (已解决),F12调试页面Console错误提示
195 0
Unknown run configuration type AndroidRunConfigurationType的解决办法
Unknown run configuration type AndroidRunConfigurationType的解决办法
112 0
|
IDE Java 开发工具
深入Spring Boot:怎样排查expected single matching bean but found 2的异常
写在前面 这个demo来说明怎么排查一个常见的spring expected single matching bean but found 2的异常。
6619 0