Я пытаюсь загрузить jsp с помощью весенней загрузки с Gradle, но я получаю только внутреннюю ошибку сервера - PullRequest
0 голосов
/ 13 января 2020

Я новичок в весенней загрузке и пытаюсь загрузить страницу jsp, но даже после долгих попыток и поиска по inte rnet я не смог найти никакого решения. Я не могу получить часть, вызывающую ошибку, в этом полном процессе.

Для сборки всего этого я использовал команду 'gradle build' в командной строке.

Для запуска сервера я использовал команду: - java -jar build \ libs \ one-0.0.1-SNAPSHOT.war

тогда я в браузере набрал: - http://localhost: 8080 / helloWorld

Вот мой build.gradle

plugins {
	id 'org.springframework.boot' version '2.2.2.RELEASE'
	id 'io.spring.dependency-management' version '1.0.8.RELEASE'
	id 'java'
	id 'war'
}

group = 'com.tm'
version = '0.0.1-SNAPSHOT'
sourceCompatibility = '1.8'

configurations {
	developmentOnly
	runtimeClasspath {
		extendsFrom developmentOnly
	}
}

repositories {
	mavenCentral()
}

dependencies {
	implementation 'org.springframework.boot:spring-boot-starter-actuator'
	implementation 'org.springframework.boot:spring-boot-starter-web'
  providedRuntime 'javax.servlet:jstl'
  providedRuntime 'org.apache.tomcat.embed:tomcat-embed-jasper'
	implementation 'org.springframework.boot:spring-boot-starter-thymeleaf'
	developmentOnly 'org.springframework.boot:spring-boot-devtools'

	testImplementation('org.springframework.boot:spring-boot-starter-test') {
		exclude group: 'org.junit.vintage', module: 'junit-vintage-engine'
	}
}

test {
	useJUnitPlatform()
}

Это мой java код контроллера HelloJSPController. java, он находится в этой структуре папок: \ src \ main \ java \ com \ tm \ one

package com.tm.one;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestParam;
@Controller
public class HelloJSPController 
{
 @GetMapping("/helloWorld")
 public String helloWorld()  
  {
    return "helloWorld";
  }
}

Это WebMvcConfig. java файл конфигурации

package com.tm.one.config;

import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.web.servlet.config.annotation.DefaultServletHandlerConfigurer;
import org.springframework.web.servlet.config.annotation.EnableWebMvc;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurerAdapter;
import org.springframework.web.servlet.view.InternalResourceViewResolver;

@Configuration
public class WebMvcConfig extends WebMvcConfigurerAdapter
{
 @Bean
 public InternalResourceViewResolver viewResolver() 
  {
     InternalResourceViewResolver resolver = new InternalResourceViewResolver();
     resolver.setPrefix("/WEB-INF/jsp/");
     resolver.setSuffix(".jsp");
     return resolver;
  }

 } 

ИЛИ Я пробовал эти две строки в application.propertes также вместо указанного выше файла конфигурации

spring. mvc .view.prefix = / WEB-INF / jsp /
spring. mvc .view.suffix =. jsp

Это JSP файл helloWorld. jsp в структуре папок: - \ one \ src \ main \ webapp \ WEB-INF \ jsp

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Hello</title>
</head>
<body>
    <h2>Hello everyone I am AD</h2>
</body>
</html>

Это ошибка, которую я получаю в браузере

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

Mon Jan 13 16:53:14 IST 2020
There was an unexpected error (type=Internal Server Error, status=500).
Error resolving template [helloWorld], template might not exist or might not be accessible by any of the configured Template Resolvers

Это OneApplication. java

package com.tm.one;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.builder.SpringApplicationBuilder;     
import org.springframework.boot.web.servlet.support.SpringBootServletInitializer;  

@SpringBootApplication


    public class OneApplication extends SpringBootServletInitializer {

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


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


    }
...