我正在开发一个Spring 3.1 MVC应用程序,我的浏览器中根本没有渲染的JSP.相反,我看到一条消息说"请求的资源()不可用." 有人可以帮忙吗?这是我的错误消息.
HTTP Status 404 -
--------------------------------------------------------------------------------
type Status report
message
description The requested resource () is not available.
Run Code Online (Sandbox Code Playgroud)
这是GuestBook.jsp.
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form"%>
<%@ taglib prefix="myTag" uri="commentsTag"%>
<html>
<head>
<title>Granada High School Class of 1986 Comment Page</title>
<!-- Put a confirmation message here once you
figure out how to do it with Spring -->
<style type="text/css">
p {
text-align: justify;
}
h1 {
text-align: center;
}
</style>
</head>
<body>
<h1>Granada High School Class of 1986 Guest Book</h1>
<%@ include file="menu.jsp"%><br>
<b><font color="red"><c:out value='${confirmation}' /></font></b>
<c:remove var="confirmation" scope="session" />
<p>This page is a place where you can share memories from high
school, what you're doing these days, comments about this web site
(good or bad), etc. The comments will appear at the bottom of the
page.</p>
<form:form method="post" action="GuestBook.jsp" modelAttribute="comment">
<table>
<tr>
<td><form:label path="name">Name</form:label></td>
<td><form:input path="name" /></td>
</tr>
<tr>
<td><form:label path="message">Message</form:label></td>
<td><form:textarea path="message" rows="10" cols="50" /></td>
</tr>
<tr>
<td><input type="submit" value="Submit comment" /></td>
<td> </td>
</tr>
</table>
</form:form>
<br>
<myTag:comments />
<%@ include file="footer.jsp"%>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
这是com.controller.CommentController.java.
package com.controller;
import org.springframework.stereotype.Controller;
import org.springframework.validation.BindingResult;
import org.springframework.web.bind.annotation.ModelAttribute;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.servlet.ModelAndView;
import com.dao.CommentDAO;
import com.model.Comment;
@Controller
@RequestMapping("/GuestBook.jsp")
public class CommentController {
Comment comment;
public Comment getComment() {
return comment;
}
public void setComment(Comment comment) {
this.comment = comment;
}
@RequestMapping(value = "/GuestBook", method = RequestMethod.POST)
public String addComment(@ModelAttribute("comment") Comment comment, BindingResult result) {
CommentDAO commentDAO = new CommentDAO();
java.util.Date today = new java.util.Date();
java.sql.Date date = new java.sql.Date(today.getTime());
comment.setDate(date);
if (commentDAO.writeComment(comment) == true) {
return "redirect:GuestBook.jsp";
}
return "redirect:Oops.jsp";
}
@RequestMapping("/GuestBook")
public ModelAndView showComments() {
return new ModelAndView("comments", "command", new Comment());
}
}
Run Code Online (Sandbox Code Playgroud)
这是web.xml.
<?xml version="1.0" encoding="UTF-8"?>
<web-app id="WebApp_ID" version="2.4"
xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
<display-name>Granada High School Class of 1986</display-name>
<servlet>
<servlet-name>ghs1986</servlet-name>
<servlet-class>
org.springframework.web.servlet.DispatcherServlet
</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>ghs1986</servlet-name>
<url-pattern>/*</url-pattern>
</servlet-mapping>
<listener>
<listener-class>com.configuration.ConfigurationListener</listener-class>
</listener>
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>
<welcome-file-list>
<welcome-file>home.jsp</welcome-file>
</welcome-file-list>
</web-app>
Run Code Online (Sandbox Code Playgroud)
这是applicationContext.xml.
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:p="http://www.springframework.org/schema/p"
xmlns:context="http://www.springframework.org/schema/context"
xmlns:mvc="http://www.springframework.org/schema/mvc"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context-3.0.xsd
http://www.springframework.org/schema/mvc
http://www.springframework.org/schema/mvc/spring-mvc-3.0.xsd">
<mvc:annotation-driven />
<context:component-scan base-package="com.controller" />
<bean id="viewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name="suffix">
<value>.jsp</value>
</property>
</bean>
</beans>
Run Code Online (Sandbox Code Playgroud)
这是ghs1986-servlet.xml.
<?xml version="1.0" ?>
<!DOCTYPE beans PUBLIC
"-//SPRING//DTD BEAN//EN"
"http://www.springframework.org/dtd/spring-beans.dtd">
<beans>
<bean name="comment" class="com.model.Comment" />
<bean name="/GuestBook.jsp" class="com.controller.CommentController">
<property name="comment" ref="comment" />
</bean>
</beans>
Run Code Online (Sandbox Code Playgroud)
请尝试以下方法:
1)在web.xml中,更改
<url-pattern>/*</url-pattern>
Run Code Online (Sandbox Code Playgroud)
至
<url-pattern>/</url-pattern>
Run Code Online (Sandbox Code Playgroud)
2)移动代码
<mvc:annotation-driven />
<context:component-scan base-package="com.controller" />
<bean id="viewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name="suffix">
<value>.jsp</value>
</property>
</bean>
Run Code Online (Sandbox Code Playgroud)
从applicationContext.xml到ghs1986-servlet.xml
3)在CommentController中,更改@RequestMapping("/GuestBook.jsp")为@RequestMapping("/GuestBook")
4)仍然在CommentController中,改变
@RequestMapping("/GuestBook")
public ModelAndView showComments() {
...
}
Run Code Online (Sandbox Code Playgroud)
喜欢的东西
@RequestMapping("/showComments")
public ModelAndView showComments() {
...
}
Run Code Online (Sandbox Code Playgroud)
现在再试一次网址http://localhost:<your_port>/GuestBook/showComments.您应该可以访问您的页面.可能还有其他错误,但我们只处理404问题.
5)可选(但强烈推荐):阅读一些doc +一个很好的入门教程,学习基本的最佳实践以及如何设置.
| 归档时间: |
|
| 查看次数: |
15040 次 |
| 最近记录: |