首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Spring Boot银行项目:登录页未显示

Spring Boot银行项目:登录页未显示
EN

Stack Overflow用户
提问于 2017-12-11 09:53:45
回答 2查看 658关注 0票数 2

我正在创建一个登录页面,这将允许用户登录。然而,当我试图通过Google访问http://localhost:8080/index时,我看到的只是“索引”,没有别的了。但是它应该显示我使用HTML和Bootstrap创建的登录页面。

这是HomeController.java的代码

代码语言:javascript
运行
复制
package com.userFront.controller;

import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;

@Controller
public class HomeController {

    @RequestMapping("/")
    public String home() {
        return "redirect:/index";
    }

    @RequestMapping("/index")
    public @ResponseBody String index() {
        return "index";
    }

}

您可以在这里找到所有项目文件:iaS4zaav60KaT9OvB-kSjv6

更新:1已被建议从方法索引()中删除@ResponseBody。但当我这样做时,会出现以下问题:

代码语言:javascript
运行
复制
Whitelabel Error Page
This application has no explicit mapping for /error, so you are seeing this as a fallback.

Mon Dec 11 17:52:53 
There was an unexpected error (type=Internal Server Error, status=500).
Circular view path [index]: would dispatch back to the current handler URL [/index] again. Check your ViewResolver setup! (Hint: This may be the result of an unspecified view, due to default view name generation.) 

更新2:这里是HomeController类的最新版本,我根据从@vtx收到的通知修改它:

代码语言:javascript
运行
复制
package com.userFront.controller;

import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;

    @Controller
    public class HomeController {

        @RequestMapping("/")
        public String home() {
            return "redirect:/index";
        }

        @RequestMapping("/welcome")
        public String index() {
            return "index";
        }

    }

但是现在,出现了一个新的错误,它说:

代码语言:javascript
运行
复制
Whitelabel Error Page
This application has no explicit mapping for /error, so you are seeing this as a fallback.

Mon Dec 11 18:52:41 
There was an unexpected error (type=Not Found, status=404).
No message available

更新3:根据@vtx的建议,我已经尝试过清理安装Maven。但是,会发生以下错误:

代码语言:javascript
运行
复制
[INFO] Scanning for projects...
[INFO]                                                                         
[INFO] ------------------------------------------------------------------------
[INFO] Building UserFront 0.0.1-SNAPSHOT
[INFO] ------------------------------------------------------------------------
[INFO] 
[INFO] --- maven-resources-plugin:2.6:resources (default-resources) @ userFront ---
[INFO] Using 'UTF-8' encoding to copy filtered resources.
[INFO] Copying 1 resource
[INFO] Copying 30 resources
[INFO] 
[INFO] --- maven-compiler-plugin:3.1:compile (default-compile) @ userFront ---
[INFO] Changes detected - recompiling the module!
[INFO] Compiling 9 source files to C:\Users\Kanon\eclipse-workspace\UserFront\target\classes
[INFO] -------------------------------------------------------------
[ERROR] COMPILATION ERROR : 
[INFO] -------------------------------------------------------------
[ERROR] No compiler is provided in this environment. Perhaps you are running on a JRE rather than a JDK?
[INFO] 1 error
[INFO] -------------------------------------------------------------
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 1.606 s
[INFO] Finished at: 2017-12-11T23:31:14+06:00
[INFO] Final Memory: 18M/227M
[INFO] ------------------------------------------------------------------------
[WARNING] The requested profile "pom.xml" could not be activated because it does not exist.
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.1:compile (default-compile) on project userFront: Compilation failure
[ERROR] No compiler is provided in this environment. Perhaps you are running on a JRE rather than a JDK?
[ERROR] -> [Help 1]
[ERROR] 
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR] 
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoFailureException

更新4:,正如@vtx所建议的,我已经完成了Maven的干净安装。

我跟踪了stackoverflow.com网站/问询/19655184/…和stackoverflow.com网站/问询/19655184/…。Maven安装干净,没有任何错误。但是现在,我得到了“圆形视图路径”错误。

更新5: @vtx建议我再次使用以下代码:

代码语言:javascript
运行
复制
package com.userFront.controller;

import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;

    @Controller
    public class HomeController {

        @RequestMapping("/")
        public String home() {
            return "redirect:/index";
        }

        @RequestMapping("/welcome")
        public String index() {
            return "index";
        }

    } 

但是,我再次收到以下错误:

代码语言:javascript
运行
复制
Whitelabel Error Page
This application has no explicit mapping for /error, so you are seeing this as a fallback.

Tue Dec 12 00:27:42 
There was an unexpected error (type=Not Found, status=404).
No message available

越来越令人沮丧了。但我不会放弃的!

EN

回答 2

Stack Overflow用户

发布于 2017-12-11 10:06:49

@ResponseBody注释告诉控制器返回的对象将自动序列化为JSON并传递回HttpResponse对象。

您应该删除@ResponseBody

代码语言:javascript
运行
复制
@RequestMapping("/index")
    public String index() {
        return "index";
    }

我能够成功地运行您的代码,上面提到的更改,我没有遇到任何循环路径错误或404。

证明

代码语言:javascript
运行
复制
@Controller
public class HomeController {

    @RequestMapping("/")
    public String home() {
        return "redirect:/index";
    }

    @RequestMapping("/index")
    public  String index() {
        return "index";
    }

}

代码语言:javascript
运行
复制
017-12-11 21:15:07.835  INFO 4840 --- [ost-startStop-1] o.s.b.w.servlet.ServletRegistrationBean  : Mapping servlet: 'dispatcherServlet' to [/]
2017-12-11 21:15:07.843  INFO 4840 --- [ost-startStop-1] o.s.b.w.servlet.FilterRegistrationBean   : Mapping filter: 'characterEncodingFilter' to: [/*]
2017-12-11 21:15:07.843  INFO 4840 --- [ost-startStop-1] o.s.b.w.servlet.FilterRegistrationBean   : Mapping filter: 'hiddenHttpMethodFilter' to: [/*]
2017-12-11 21:15:07.844  INFO 4840 --- [ost-startStop-1] o.s.b.w.servlet.FilterRegistrationBean   : Mapping filter: 'httpPutFormContentFilter' to: [/*]
2017-12-11 21:15:07.844  INFO 4840 --- [ost-startStop-1] o.s.b.w.servlet.FilterRegistrationBean   : Mapping filter: 'requestContextFilter' to: [/*]
2017-12-11 21:15:08.311  INFO 4840 --- [           main] s.w.s.m.m.a.RequestMappingHandlerAdapter : Looking for @ControllerAdvice: org.springframework.boot.context.embedded.AnnotationConfigEmbeddedWebApplicationContext@6c9f5c0d: startup date [Mon Dec 11 21:15:04 IST 2017]; root of context hierarchy
2017-12-11 21:15:08.409  INFO 4840 --- [           main] s.w.s.m.m.a.RequestMappingHandlerMapping : Mapped "{[/index]}" onto public java.lang.String com.userFront.controller.HomeController.index()
2017-12-11 21:15:08.410  INFO 4840 --- [           main] s.w.s.m.m.a.RequestMappingHandlerMapping : Mapped "{[/]}" onto public java.lang.String com.userFront.controller.HomeController.home()
2017-12-11 21:15:08.416  INFO 4840 --- [           main] s.w.s.m.m.a.RequestMappingHandlerMapping : Mapped "{[/error]}" onto public org.springframework.http.ResponseEntity<java.util.Map<java.lang.String, java.lang.Object>> org.springframework.boot.autoconfigure.web.BasicErrorController.error(javax.servlet.http.HttpServletRequest)
2017-12-11 21:15:08.416  INFO 4840 --- [           main] s.w.s.m.m.a.RequestMappingHandlerMapping : Mapped "{[/error],produces=[text/html]}" onto public org.springframework.web.servlet.ModelAndView org.springframework.boot.autoconfigure.web.BasicErrorController.errorHtml(javax.servlet.http.HttpServletRequest,javax.servlet.http.HttpServletResponse)
2017-12-11 21:15:08.464  INFO 4840 --- [           main] o.s.w.s.handler.SimpleUrlHandlerMapping  : Mapped URL path [/webjars/**] onto handler of type [class org.springframework.web.servlet.resource.ResourceHttpRequestHandler]
2017-12-11 21:15:08.464  INFO 4840 --- [           main] o.s.w.s.handler.SimpleUrlHandlerMapping  : Mapped URL path [/**] onto handler of type [class org.springframework.web.servlet.resource.ResourceHttpRequestHandler]
2017-12-11 21:15:08.516  INFO 4840 --- [           main] o.s.w.s.handler.SimpleUrlHandlerMapping  : Mapped URL path [/**/favicon.ico] onto handler of type [class org.springframework.web.servlet.resource.ResourceHttpRequestHandler]

请做mvn清洁安装。希望这对有帮助

票数 0
EN

Stack Overflow用户

发布于 2017-12-11 15:47:00

我查看最后的更改,并看到您重定向到索引,但您没有"/index“的映射。也许你该这么做

代码语言:javascript
运行
复制
 @RequestMapping("/")
    public String home() {
        return "redirect:/welcome";
    }

    @RequestMapping("/welcome")
    public String index() {
        return "index";
    }

这是可行的,但西梅斯没有逻辑。只管写

代码语言:javascript
运行
复制
@RequestMapping("/")
    public String home() {
        return "index";
    }

这就是返回索引页面的全部内容。如果不更改默认配置,请确保将index.html页面设置为src/main/resources/静态文件夹,春季引导将在那里查找

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/47750205

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档