Java SpringMVC-在JSP视图中没有获取值
首先,我是Spring MVC的新手 我制作了一个简单的程序,SpringMVC将处理GET请求并设置一个名为“message”的变量。此变量应在JSP中显示集合值,但未按预期执行。代码正在编译并运行良好。你能不能建议一下,这里做错了什么 web.xmlJava SpringMVC-在JSP视图中没有获取值,java,spring,jsp,spring-mvc,Java,Spring,Jsp,Spring Mvc,首先,我是Spring MVC的新手 我制作了一个简单的程序,SpringMVC将处理GET请求并设置一个名为“message”的变量。此变量应在JSP中显示集合值,但未按预期执行。代码正在编译并运行良好。你能不能建议一下,这里做错了什么 web.xml Web应用程序创建的原型 罗金迪斯帕彻酒店 org.springframework.web.servlet.DispatcherServlet 1. 罗金迪斯帕彻酒店 / loginDispacher servlet.xml Autho
Web应用程序创建的原型
罗金迪斯帕彻酒店
org.springframework.web.servlet.DispatcherServlet
1.
罗金迪斯帕彻酒店
/
loginDispacher servlet.xml
Authorization.java
@Controller
@RequestMapping("/authorization")
public class Authorization {
String message = "This is message from Java class";
@RequestMapping(method=RequestMethod.GET)
public String printHello(ModelMap model){
System.out.println("From controller");
model.addAttribute("message", "Hellow Spring MVC Framework!");
return "authorization";
}
}
旧授权.jsp
你好,Spring MVC
更新并运行授权.jsp
你好,Spring MVC
输出您的问题与Spring MVC无关<代码>${message}是
EL
(表达式语言)。它是JavaEE的一部分(也是JSP规范的前一部分)。由于某些原因,它在您的页面上不起作用
尝试将web.xml
的开头替换为以下内容:
您的
web.xml
将您的应用程序声明为与Servlet 2.3兼容的web应用程序
<!DOCTYPE web-app PUBLIC
"-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
"http://java.sun.com/dtd/web-app_2_3.dtd" >
表达式语言(EL)在2.4中引入
改变这一点,您就应该投入业务(只要您的容器也支持它)
您可以找到不同版本的模板。如果是maven项目,只需添加jstl依赖项即可
jstl
jstl
1.2
如果上述任何一项都不起作用。在jsp页面中添加以下内容:
<head> <%@ page isELIgnored="false" %> </head>
来源:在jsp页面中添加以下内容:
<head> <%@ page isELIgnored="false" %> </head>
尝试将标题
添加到.jsp
文件中。您是否可以更新问题并显示完整的web.xml
(包括xml架构定义)。@Alexey-已更新web.xml和jsp code.Sandeep,我认为您对jsp页面的修改与问题无关。还有其他一些原因导致它从第一次尝试起就不起作用<代码>也不是必需的。按建议做了,但运气不好。输出仍然是相同的。我使用的是EclipseKelper、Java7、Tomcat7.0和Maven+SpringIDE,这些都是从Marketplace下载的。因此,应支持所需的EL。我在Ecplise上运行,这是一个问题吗?我已经用论坛中建议的内容更新了web.xml代码,但输出是相同的:(任何其他可能的建议?根据您的建议,问题在于EL,我已经更新了jsp的标题,它工作正常。)我已经在pom.xml中添加了以下jstl。我正在使用Tomcat,所以添加您的一个应该是不正确的。对吗?jstl jstl 1.2编译@Sandeep Correct。我想我可能没有。请花时间阅读指南,然后编辑你的答案。