Spring MVC Scala App просто возвращает index.html, остальные маршруты не работают - PullRequest
0 голосов
/ 25 июня 2019

Я пытаюсь создать простое весеннее MVC-приложение в Scala. Я определил свои методы в контроллере для возврата html-страниц на основе имени из папки ресурсов, но он просто всегда возвращает только индексную страницу и остальные html-страницы, пока пытаясь получить доступ к маршруту, он просто терпит неудачу, но то же приложение прекрасно работает в Java.

полный исходный код здесь: -

Java: - https://github.com/kali786516/SpringConfigServer-client/tree/master/src/main/java/com/example/SpringConfigServerclient

Scala: - https://github.com/kali786516/SpringConfigServer-client/tree/master/src/main/scala/com/ps/spring/mvc/psbankapp

Ошибка в Scala: -

Index html Работает отлично: - enter image description here

но остальные маршруты не работают в scala

enter image description here

Контроллер Scala: -

package com.ps.spring.mvc.psbankapp.controllers

import org.springframework.beans.factory.annotation.Value
import org.springframework.cloud.context.config.annotation.RefreshScope
import org.springframework.stereotype.Controller
import org.springframework.ui.Model
import org.springframework.web.bind.annotation.RequestMapping
import org.springframework.beans.factory.annotation.Autowired
import org.springframework.web.bind.annotation.RequestMethod

//@RefreshScope
@Controller
//@ComponentScan(basePackages = Array("com.ps.spring.mvc.psbankapp"))
class AccountController {


  @RequestMapping(value = Array("/"))
  def showHomePage(): Unit = {
    "index"
  }

  @RequestMapping(value = Array("/new"), method = Array(RequestMethod.GET))
  def newAccount(): Unit = {
    "newAccount"
  }

  @RequestMapping(value = Array("/showAccount"))
  def showAccount(): Unit = {
    "showAccount"
  }
}

Контроллер Java: -

package com.example.SpringConfigServerclient;

import org.springframework.beans.factory.annotation.Value;
import org.springframework.cloud.context.config.annotation.RefreshScope;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMethod;

@RefreshScope
@Controller
public class RateController {

    @RequestMapping(value = "/index",method = RequestMethod.GET)
    public String getIndex() {
        return "index";
    }

    @RequestMapping(value = "/new",method = RequestMethod.GET)
    public String newAccount() {
        return "newAccount";
    }

    @RequestMapping(value = "/showAccount",method = RequestMethod.GET)
    public String showAccount() {
        return "showAccount";
    }
}

1 Ответ

0 голосов
/ 26 июня 2019

Наконец-то все заработало, добавив приведенный ниже контекст в мои HTML-файлы.

<html xmlns="http://www.w3.org/1999/xhtml"
      xmlns:th="http://www.thymeleaf.org"
      xmlns:sec="http://www.thymeleaf.org/thymeleaf-extras-springsecurity3"
      xmlns:layout="http://www.ultraq.net.nz/thymeleaf/layout">
<head>
    <meta charset="utf-8" />
    <meta http-equiv="X-UA-Compatible" content="IE=edge" />

Ответ: - Ошибка при разрешении шаблона "index", шаблон может не существовать или может быть недоступен для любого из настроенных преобразователей шаблонов

полный HTML, если вам нужно: -

<!DOCTYPE HTML>
<html xmlns="http://www.w3.org/1999/xhtml"
      xmlns:th="http://www.thymeleaf.org"
      xmlns:sec="http://www.thymeleaf.org/thymeleaf-extras-springsecurity3"
      xmlns:layout="http://www.ultraq.net.nz/thymeleaf/layout">
<head>
    <meta charset="utf-8" />
    <meta http-equiv="X-UA-Compatible" content="IE=edge" />
    <title>Pluralsight Training: Config Client</title>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
    <!-- Latest compiled and minified CSS -->
    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" integrity="sha384-BVYiiSIFeK1dGmJRAkycuHAHRg32OmUcww7on3RYdg4Va+PmSTsz/K68vbdEjh4u" crossorigin="anonymous"></link>
</head>
<body>
<div class="row">
    <div class="col-md-2"></div>
    <div class="col-md-8">
        <h1>Pluralsight Training: Welcome to PS Bank Web Application index</h1>
    </div>
    <div class="col-md-2"></div>
</div>
</body>
</html>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...