我想在我的第一个SpringBoot应用程序中启动我的登录页面:
主类
@SpringBootApplication
public class MainGate extends SpringBootServletInitializer {
@Override
protected SpringApplicationBuilder configure(SpringApplicationBuilder application) {
return application.sources(MainGate.class);
}
public static void main(String... args) {
System.out.println("Booting .. ");
SpringApplication.run(MainGate.class,args) ;
}
}
这是我的Gradle文件
buildscript {
ext {
springBootVersion = '1.5.4.RELEASE'
}
repositories {
maven {
url "http://masked_domain/repository/external-proxy-group/"
}
maven {
url "https://plugins.gradle.org/m2/"
}
}
dependencies {
classpath("org.springframework.boot:spring-boot-gradle-plugin:${springBootVersion}")
}
}
apply plugin: 'java'
apply plugin: 'eclipse'
apply plugin: 'org.springframework.boot'
group = 'com.arun'
version = '0.0.1-SNAPSHOT'
sourceCompatibility = 1.8
task fatJar(type: Jar) {
manifest {
attributes(
'Implementation-Title': 'Arun Spring Boot Application','Implementation-Version': version,'Built-By': System.getProperty('user.name'),'Built-Date': new Date(),'Main-Class': 'com.arun.MainGate','Built-JDK': System.getProperty('java.version')
)
}
baseName = project.name + '-all'
from { configurations.compile.collect { it.isDirectory() ? it : zipTree(it) } }
with jar
}
repositories {
maven {
url "http://masked_domain/repository/external-proxy-group/"
}
maven {
url "https://plugins.gradle.org/m2/"
}
}
dependencies {
compile('org.springframework.boot:spring-boot-starter-web')
testCompile('org.springframework.boot:spring-boot-starter-test')
testImplementation 'junit:junit:4.12'
}
spring.mvc.view.prefix: jsp/
spring.mvc.view.suffix: .jsp
logging.level.org.springframework=debug
资源文件夹
控制器类
@Controller
public class CommonController {
@RequestMapping("/")
public String home(Map
我得到的例外
017-10-20 17:01:28.568 TRACE 6704 --- [nio-8080-exec-1] .w.s.m.m.a.ServletInvocableHandlerMethod : Invoking 'com.arun.controller.CommonController.home' with arguments [{}]
Reached the homeContoller
2017-10-20 17:01:28.568 TRACE 6704 --- [nio-8080-exec-1] .w.s.m.m.a.ServletInvocableHandlerMethod : Method [com.arun.controller.CommonController.home] returned [sso_arch]
2017-10-20 17:01:28.574 DEBUG 6704 --- [nio-8080-exec-1] o.s.w.s.v.ContentNegotiatingViewResolver : Requested media types are [text/html,application/xhtml+xml,image/webp,image/apng,application/xml;q=0.9,*/*;q=0.8] based on Accept header types and producible media types [*/*])
2017-10-20 17:01:28.574 DEBUG 6704 --- [nio-8080-exec-1] o.s.w.servlet.view.BeanNameViewResolver : No matching bean found for view name 'sso_arch'
2017-10-20 17:01:28.577 DEBUG 6704 --- [nio-8080-exec-1] o.s.b.f.s.DefaultListablebeanfactory : Invoking afterPropertiesSet() on bean with name 'sso_arch'
How to configure spring boot mvc app for JSP?中提到的解决方案无效.因此提出一个新的线程.
最佳答案
你找到了正确的问题,但似乎你没有在答案中添加解决方案,你需要Add an InternalResourceViewResolver
原文链接:https://www.f2er.com/springboot/432513.htmlThis ViewResolver allows us to set properties such as prefix or suffix to the view name to generate the final view page URL:
@Bean
public ViewResolver getViewResolver(){
InternalResourceViewResolver resolver = new InternalResourceViewResolver();
resolver.setPrefix("/WEB-INF/jsp/");
resolver.setSuffix(".jsp");
resolver.setViewClass(JstlView.class);
return resolver;
}
并确保你有依赖: