我正在使用纯Java配置编写一个简单的基于REST的Spring MVC应用程序。我以前写过很多应用程序,从来没有遇到过这个问题。我的url <a href="${pageContext.request.contextPath}/test/hello">Hello</a>被解释为$%7BpageContext.request.contextPath%7D/test/hello
在研究过程中,我发现我需要在2.4+中设置web应用程序的版本,因为我正在编写一个纯java配置应用程序,我无法在web.xml中更改它。因此,我尝试将Dynamic Web Module更改为3.0(当前设置为2.3)。但是,因为很多人都遇到过这个问题,eclipse不允许我改变它。所以我在project.facet.core.xml中更改了它,但它没有解决url问题,而且我得到了一个新的错误“无法将项目facet Dynamic Web Module的版本更改为2.3”。我不明白的是,如果我在xml中将web模块版本手动设置为3.0,为什么eclipse要再次将其设置为2.3?
Ufff!很多问题我已经尝试了大约8个小时来解决这个问题,但没有任何成功,所以请在这个问题上的任何帮助是感激的!
jsp文件:
<html>
<body>
<h2>Hello World!</h2>
<a href="mavn_spring_rest_demo/test/hello">try it </a>
</body>
</html>配置类:
```@EnableWebMvc```public class MyConfig implements WebMvcConfigurer{servlet initializer class:
```public class MyServletInitializerConfig extends ```@Override
```protected Class<?>[] getServletConfigClasses() {
```return new Class[] { MyConfig.class };
```}
```@Override
```protected String[] getServletMappings() {
```return new String[] { "/" };
```}
rest controller:
```@RestController```public class MyRestController {```@GetMapping("/hello")```public String sayHello() { return "hello finally";```}发布于 2020-07-16 17:12:02
你应该删除你的web.xml文件并重启你的本地服务器,我想你和我遵循相同的路线。我遇到这个问题是因为我有一个空的web.xml文件。我是一个新手,但是当只配置纯java类时,空的web.xml文件会妨碍我的工作。
试一试吧。
发布于 2021-01-27 21:48:01
当我在我的jsp文件中使用{pageContext.request.contextPath}时,我遇到了同样的问题,正如你所说的,问题是(web-app在2.3),我通过在web.xml中修改xml代码来解决这个问题。像这样
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://xmlns.jcp.org/xml/ns/javaee"
xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee
http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd"
version="3.1">
<display-name>spring-rest-demo</display-name>
</web-app> 您可以将此代码复制到web.xml文件中,
希望这是你的项目的工作
发布于 2021-07-27 04:29:36
只需在JSP文件的顶部添加以下jsp指令:
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1"%>JSP指令用于向JSP容器发出特殊指令,以便将JSP转换为servlet代码。
在https://www.guru99.com/jsp-actions.html上阅读有关JSP指令的更多信息。
https://stackoverflow.com/questions/57736354
复制相似问题