spring - 在IDE中运行Spring Boot时找不到JSP,但手动运行时可以工作

标签 spring jsp intellij-idea spring-boot http-status-code-404

我有一个java web应用程序代码(从远程git服务器 checkout - 其他用户没有我的问题)并将其导入IntelliJ(最新版本),我从IDE执行以下步骤:maven clean install,运行(它的spring启动应用程序,因此在运行配置中没有要配置的参数或参数来设置 - 我将其与其他计算机上的 IDE 设置进行了比较 - 没有差异),然后我向服务器发送了一个请求,结果为“404 -/WEB-INF/. ./some.jsp 未找到),但在解压的 WAR 中存在此文件!此外,当我手动运行此 war (java -jar app.war)时,我的请求已成功发送,并且显示了积极的结果 - 显示了 View 。所以,肯定存在IDE 出了问题。我几乎尝试了所有方法:我重新安装了 IDE,删除了 .m2 存储库,我再次检查了代码,我尝试了不同的 IDE 版本,但问题仍然出现。可能出了什么问题?

最佳答案

也许您的应用程序使用调度程序servlet,因此您的请求已映射,并且您无法请求jsp文件的确切路径,并且您的浏览器显示404未找到 ,检查你的 web.xml 有这样的代码

<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>

并搜索使用 jspResolver 或类似内容的 *.xml 文件

<bean id="jspViewResolver"
class="org.springframework.web.servlet.view.InternalResourceViewResolver">
    <property name="prefix" value="/WEB-INF/view/"></property>
    <property name="suffix" value=".jsp"></property>
</bean>

如果你找到它,你应该像这样请求

http://localhost:8080/nameofyourapp/index

而不是 http://localhost:8080/nameofyourapp/WEB-INF/view/index.jsp

关于spring - 在IDE中运行Spring Boot时找不到JSP,但手动运行时可以工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39024012/

相关文章:

java - Spring MVC 中的注解

java - 如何使用 spring 集成手动确认 rabbitmq 消息

java - 以编程方式加载 Spring 3.1 中的属性

java - 身份验证重定向后如何返回 Jersey MVC Viewable?

java - 使用 Spring MVC 在 jar 文件中显示 jsp 页面

javascript - WebStorm 2018.3 : Unable to write template literal since update

java - 使用 String Replace() 或 ReplaceAll() 配置动态电子邮件内容

javascript - 如何在 JSP 编辑器中激活 javascript 的语法着色 - Eclipse

reactjs - 在自关闭标签之前添加空格

android - 将android支持库v4添加到intellij ide