Gradle для этого проекта Spring Boot + jsp - PullRequest
0 голосов
/ 06 марта 2019

Я использую Gradle для этого загрузочного проекта Spring, и моя задача состоит в том, чтобы создать еще один jsp-файл, например: index.jsp, и сделать что-нибудь, чтобы Spring boot могла сгенерировать этот index.jsp

Моя проблема, когда ясоздайте index.jsp в webapp -> WEB_INF -> index.jsp - он возвращает только сообщение 'index' вместо того, что находится в индексном файле.

Application.java

package edu.msudenver.tsp.website;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;

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

PledgeController.Java

package edu.msudenver.tsp.website.controllers;

import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;

@RestController
public class PledgeController {

    @GetMapping("/hello")
    public String getHelloMessage() {
        return "index";
    }
}

Application.properties

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

build.gradle

buildscript {
    ext {
        springBootVersion = '1.5.6.RELEASE'
    }
    repositories {
        mavenCentral()
    }
    dependencies {
        classpath("org.springframework.boot:spring-boot-gradle-plugin:${springBootVersion}")
    }
}

apply plugin: 'java'
apply plugin: 'eclipse-wtp'
apply plugin: 'org.springframework.boot'
apply plugin: 'war'

version = '0.0.1-SNAPSHOT'
sourceCompatibility = 1.8

repositories {
    mavenCentral()
}

dependencies {

    compile('org.springframework.boot:spring-boot-starter-web')
    providedRuntime('org.springframework.boot:spring-boot-starter-tomcat')
    testCompile('org.springframework.boot:spring-boot-starter-test')

}

index.jsp

> <%@ page contentType="text/html;charset=UTF-8" language="java" %>
> <html> <head>
>     <title>Hello Spring mvc</title> </head> <body>

Ответы [ 2 ]

0 голосов
/ 06 марта 2019

Вы должны использовать @Controller аннотацию вместо @RestController в вашем классе PledgeController.

 @Controller
 public class PledgeController {


        @GetMapping("/hello")
        public String getHelloMessage() {
            return "index";
        }
 }
0 голосов
/ 06 марта 2019

добавить зависимости для JSP

compile('javax.servlet:jstl')
compile("org.apache.tomcat.embed:tomcat-embed-jasper")

и index.jsp PATH - это webapp / WEB_INF / jsp / index.jsp .

если хотите пример, https://github.com/spring-projects/spring-boot/tree/master/spring-boot-samples/spring-boot-sample-web-jsp.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...