【发布时间】:2018-12-20 00:45:20
【问题描述】:
我是使用 Spring Boot 和 React 开发的新手。我正在尝试开发一个基于 Web 的向导应用程序,具有多种形式。使用 Spring Boot 作为后端,使用 React 作为前端框架。我想为向导任务提供一个登录表单以及多个表单。 不幸的是,我无法让 Spring Boot 自动将我的 html 文件提供给 URI。例如 test.html 显示在 http://localhost:8080/test 上。 那么如何将 (React-)html 文件链接到 Spring Boot 的 URI?
我已经成功地将 React 与 Spring Boot 结合起来,以便我的 index.html 与 React 内容显示在 http://localhost:8080 上。因此 index.html 会自动找到并映射到路径“/”。 index.html 与其他“.html”文件一起位于名为 public 的 React 文件夹中。但只有 index.html 似乎被 Spring Boot 自动识别。我使用了错误的文件夹吗?
- public
+ index.html
+ login.html
+ publicNoSecurity.html
+ ...
- src
+ main
+ java
+ com
* ressources
- application.properties
* webwizard.connection
- SelfServiceWebwizard.java
- index.tsx
- index.css
- ...
当我打开例如 publicNoSecurity 时,我得到 404 错误: no controller -> 404
我还尝试为 URI 实现一个带有 Requestmappings 的控制器类。但这也无济于事:
@Controller
public class DefaultController
{
@RequestMapping("/login")
public String login() {
return "login";
}
@RequestMapping("/publicNoSecurity")
public String publicNoSecurity() {
return "publicNoSecurity";
}
}
使用控制器时,我收到 500 错误和异常: with controller -> 500
2018-07-12 08:35:10.103 错误 13560 --- [io-8080-exec-10] o.a.c.c.C.[.[.[/].[dispatcherServlet] :Servlet.service() for 带有路径 [] 的上下文中的 servlet [dispatcherServlet] 引发异常 [圆形视图路径 [publicNoSecurity]:将调度回 当前处理程序 URL [/publicNoSecurity] 再次。检查您的 ViewResolver 设置! (提示:这可能是未指定视图的结果,由于 默认视图名称生成。)] 根本原因
javax.servlet.ServletException:圆形视图路径 [publicNoSecurity]: 将发送回当前处理程序 URL [/publicNoSecurity] 再次。检查您的 ViewResolver 设置! (提示:这可能是由于 由于默认视图名称生成,未指定的视图。)在 org.springframework.web.servlet.view.InternalResourceView.prepareForRendering(InternalResourceView.java:209) ~[spring-webmvc-5.0.7.RELEASE.jar:5.0.7.RELEASE] 在 org.springframework.web.servlet.view.InternalResourceView.renderMergedOutputModel(InternalResourceView.java:147) ~[spring-webmvc-5.0.7.RELEASE.jar:5.0.7.RELEASE] 在 org.springframework.web.servlet.view.AbstractView.render(AbstractView.java:314) ~[spring-webmvc-5.0.7.RELEASE.jar:5.0.7.RELEASE] 在 org.springframework.web.servlet.DispatcherServlet.render(DispatcherServlet.java:1325) ~[spring-webmvc-5.0.7.RELEASE.jar:5.0.7.RELEASE] 在 org.springframework.web.servlet.DispatcherServlet.processDispatchResult(DispatcherServlet.java:1069) ~[spring-webmvc-5.0.7.RELEASE.jar:5.0.7.RELEASE] 在 org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1008) ~[spring-webmvc-5.0.7.RELEASE.jar:5.0.7.RELEASE] 在 org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:925) ~[spring-webmvc-5.0.7.RELEASE.jar:5.0.7.RELEASE] 在 org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:974) ~[spring-webmvc-5.0.7.RELEASE.jar:5.0.7.RELEASE] 在 org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:866) ~[spring-webmvc-5.0.7.RELEASE.jar:5.0.7.RELEASE]
完整代码可以在github上看到:https://github.com/The-Taskmanager/SelfServiceWebwizard
【问题讨论】:
标签: spring reactjs spring-boot