Maven多模块spring boot 项目集成jsp,报404找不到jsp问题

werson11 2018-03-21 03:11:02
访问http://localhost:8080/index 返回结果:
Whitelabel Error Page
This application has no explicit mapping for /error, so you are seeing this as a fallback.

Wed Mar 21 15:01:28 CST 2018
There was an unexpected error (type=Not Found, status=404).
/WEB-INF/jsp/index.jsp

controller代码:
@GetMapping(value = "/index")
public String index(){
System.out.println("------index--------");
return "index";
}

application 配置了
spring.mvc.view.prefix=/WEB-INF/jsp/
spring.mvc.view.suffix=.jsp

根据网上查找资料写了一个配置类
@Bean
public InternalResourceViewResolver viewResolver(){
InternalResourceViewResolver viewResolver = new InternalResourceViewResolver();
viewResolver.setViewClass(JstlView.class);
viewResolver.setPrefix("/WEB-INF/jsp/");
viewResolver.setSuffix(".jsp");
logger.info("****************/WEB-INF/jsp/*****************************************");
return viewResolver;
}

但是还是没解决问题,------index--------能打印出来,控制台也没报错。求大神指点一下
...全文
3440 18 打赏 收藏 转发到动态 举报
写回复
用AI写文章
18 条回复
切换为时间正序
请发表友善的回复…
发表回复
蓝色小棉袄 2019-11-22
  • 打赏
  • 举报
回复
引用 11 楼 cjzm888999 的回复:
跟你遇到了同样的问题,这是因为idea默认路径是工程的路径 而不是模块的路径 所以导致多模块无法定位到/WEB-INF/jsp/index.jsp,而独立的模块工程路径就是模块路径 故可以定位,解决办法如下下图



指定工作路径为模块的即可


干的漂亮,解决了,不容易呀,弄了整整一天
x627979724 2018-12-22
  • 打赏
  • 举报
回复
引用 11 楼 cjzm888999 的回复:
跟你遇到了同样的问题,这是因为idea默认路径是工程的路径 而不是模块的路径 所以导致多模块无法定位到/WEB-INF/jsp/index.jsp,而独立的模块工程路径就是模块路径 故可以定位,解决办法如下下图



指定工作路径为模块的即可


找了一晚上,终于找到了,老哥666
Java码农老王 2018-10-20
  • 打赏
  • 举报
回复
引用 17 楼 u012161563 的回复:
[quote=引用 16 楼 a785975139 的回复:] [quote=引用 15 楼 limaoyv 的回复:] [quote=引用 14 楼 a785975139 的回复:] [quote=引用 11 楼 cjzm888999 的回复:] 跟你遇到了同样的问题,这是因为idea默认路径是工程的路径 而不是模块的路径 所以导致多模块无法定位到/WEB-INF/jsp/index.jsp,而独立的模块工程路径就是模块路径 故可以定位,解决办法如下下图 指定工作路径为模块的即可
对我来说,依然没用[/quote] 我这样设置是可以的。你可以在检查一下spring.mvc.view.prefix=/XXX/XXX/ spring.mvc.view.suffix=.jsp 对不对。还有pom里该引用的引了吗。[/quote] 已经解决了,谢谢[/quote] 怎么解决的啊,我也遇到了这个问题[/quote]
引用 17 楼 u012161563 的回复:
[quote=引用 16 楼 a785975139 的回复:] [quote=引用 15 楼 limaoyv 的回复:] [quote=引用 14 楼 a785975139 的回复:] [quote=引用 11 楼 cjzm888999 的回复:] 跟你遇到了同样的问题,这是因为idea默认路径是工程的路径 而不是模块的路径 所以导致多模块无法定位到/WEB-INF/jsp/index.jsp,而独立的模块工程路径就是模块路径 故可以定位,解决办法如下下图 指定工作路径为模块的即可
对我来说,依然没用[/quote] 我这样设置是可以的。你可以在检查一下spring.mvc.view.prefix=/XXX/XXX/ spring.mvc.view.suffix=.jsp 对不对。还有pom里该引用的引了吗。[/quote] 已经解决了,谢谢[/quote] 怎么解决的啊,我也遇到了这个问题[/quote] 把子模块打成war包,通过“java -jar xxx.war”来启动就能访问了
Embe 2018-10-20
  • 打赏
  • 举报
回复
引用 16 楼 a785975139 的回复:
[quote=引用 15 楼 limaoyv 的回复:] [quote=引用 14 楼 a785975139 的回复:] [quote=引用 11 楼 cjzm888999 的回复:] 跟你遇到了同样的问题,这是因为idea默认路径是工程的路径 而不是模块的路径 所以导致多模块无法定位到/WEB-INF/jsp/index.jsp,而独立的模块工程路径就是模块路径 故可以定位,解决办法如下下图 指定工作路径为模块的即可
对我来说,依然没用[/quote] 我这样设置是可以的。你可以在检查一下spring.mvc.view.prefix=/XXX/XXX/ spring.mvc.view.suffix=.jsp 对不对。还有pom里该引用的引了吗。[/quote] 已经解决了,谢谢[/quote] 怎么解决的啊,我也遇到了这个问题
Java码农老王 2018-10-17
  • 打赏
  • 举报
回复
引用 15 楼 limaoyv 的回复:
[quote=引用 14 楼 a785975139 的回复:] [quote=引用 11 楼 cjzm888999 的回复:] 跟你遇到了同样的问题,这是因为idea默认路径是工程的路径 而不是模块的路径 所以导致多模块无法定位到/WEB-INF/jsp/index.jsp,而独立的模块工程路径就是模块路径 故可以定位,解决办法如下下图 指定工作路径为模块的即可
对我来说,依然没用[/quote] 我这样设置是可以的。你可以在检查一下spring.mvc.view.prefix=/XXX/XXX/ spring.mvc.view.suffix=.jsp 对不对。还有pom里该引用的引了吗。[/quote] 已经解决了,谢谢
limaoyv 2018-10-17
  • 打赏
  • 举报
回复
引用 14 楼 a785975139 的回复:
[quote=引用 11 楼 cjzm888999 的回复:]
跟你遇到了同样的问题,这是因为idea默认路径是工程的路径 而不是模块的路径 所以导致多模块无法定位到/WEB-INF/jsp/index.jsp,而独立的模块工程路径就是模块路径 故可以定位,解决办法如下下图



指定工作路径为模块的即可


对我来说,依然没用[/quote]

我这样设置是可以的。你可以在检查一下spring.mvc.view.prefix=/XXX/XXX/
spring.mvc.view.suffix=.jsp 对不对。还有pom里该引用的引了吗。
Java码农老王 2018-10-14
  • 打赏
  • 举报
回复
引用 11 楼 cjzm888999 的回复:
跟你遇到了同样的问题,这是因为idea默认路径是工程的路径 而不是模块的路径 所以导致多模块无法定位到/WEB-INF/jsp/index.jsp,而独立的模块工程路径就是模块路径 故可以定位,解决办法如下下图 指定工作路径为模块的即可
对我来说,依然没用
rainyhao 2018-09-01
  • 打赏
  • 举报
回复
引用 11 楼 cjzm888999 的回复:
跟你遇到了同样的问题,这是因为idea默认路径是工程的路径 而不是模块的路径 所以导致多模块无法定位到/WEB-INF/jsp/index.jsp,而独立的模块工程路径就是模块路径 故可以定位,解决办法如下下图



指定工作路径为模块的即可

好人一生平安啊。
werson11 2018-08-13
  • 打赏
  • 举报
回复
引用 11 楼 cjzm888999 的回复:
跟你遇到了同样的问题,这是因为idea默认路径是工程的路径 而不是模块的路径 所以导致多模块无法定位到/WEB-INF/jsp/index.jsp,而独立的模块工程路径就是模块路径 故可以定位,解决办法如下下图



指定工作路径为模块的即可

这位兄弟的是正解
cjzm888999 2018-07-17
  • 打赏
  • 举报
回复
跟你遇到了同样的问题,这是因为idea默认路径是工程的路径 而不是模块的路径 所以导致多模块无法定位到/WEB-INF/jsp/index.jsp,而独立的模块工程路径就是模块路径 故可以定位,解决办法如下下图



指定工作路径为模块的即可
qq_32749443 2018-04-13
  • 打赏
  • 举报
回复
楼主。配置idea的本地tomcat启动项目就能解决这个问题了
能源恒观 2018-03-26
  • 打赏
  • 举报
回复
引用 4 楼 u012565010 的回复:
引用 2 楼 wanghengwhwh 的回复:
多模块项目,你是怎么部署的,可能是请求路径的问题
还没线上部署呢,本地调试阶段,请求路径的话,问题是该配置的都配了啊
本地调试,各模块是部署在一台机器上面吗,端口号一致吗,有没有用NGINX做分发
werson11 2018-03-23
  • 打赏
  • 举报
回复
有个另一种思路可以解决该问题,就是用mvn spring-boot:run 运行项目。 据说出现该问题是IDEA的bug,
werson11 2018-03-23
  • 打赏
  • 举报
回复
引用 3 楼 qq_23119345 的回复:
多个模块的话就前后端分离吧,后端只负责提供接口
本该是这样,可实际上....
werson11 2018-03-23
  • 打赏
  • 举报
回复
引用 2 楼 wanghengwhwh 的回复:
多模块项目,你是怎么部署的,可能是请求路径的问题
还没线上部署呢,本地调试阶段,请求路径的话,问题是该配置的都配了啊
北飞的企鹅 2018-03-22
  • 打赏
  • 举报
回复
多个模块的话就前后端分离吧,后端只负责提供接口
能源恒观 2018-03-22
  • 打赏
  • 举报
回复
多模块项目,你是怎么部署的,可能是请求路径的问题
werson11 2018-03-21
  • 打赏
  • 举报
回复
补充,只有一个模块的项目,能访问到模块下的src\main\webapp\WEB-INF\jsp 下的jsp,但是子模块就不行。 运行方式:run spring boot的main方法

81,092

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧