我一直在尝试用于Web应用程序的Java Servlets,在此应用程序中,我能够击中一个Servlet并正确加载一个.jsp页面,完成了这一操作后,我将其移至了Spring MVC。我遇到了一个问题,我的servlet控制器类被调用,但它不会加载视图。Spring MVC - 无法加载查看
我排除了资源不可见,因为它可以正常使用普通的java servlet。我也读了几乎所有的资源/教程,试图找到没有任何运气的问题,我的问题仍然是一样的。此外,为了解决问题,我添加了一个错误页面tag(),以查看是否尝试打开我的页面时,它会正确重定向我,但无法找到为404错误指定的页面。
任何人都可以识别我错过了什么?
Web.xml中
变化:改变URL的图案时,init-PARAMS,上下文的配置位置等
<servlet>
<servlet-name>LoginServlet</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<load-on-startup>1</load-on-startup>
<init-param>
<param-name>contextConfigLocation</param-name>
<param-value>/WEB-INF/LoginServlet-servlet.xml</param-value>
</init-param>
</servlet>
<servlet-mapping>
<servlet-name>LoginServlet</servlet-name>
<url-pattern>/</url-pattern>
</servlet-mapping>
LoginServlet-servlet.xml中
变化:我我们试图按照其他职位上的建议将这些声明转移到不同的职位上,但没有任何结果。除了通常我有前缀设置为/ WEB-INF/JSP/
<context:component-scan base-package="plan.route.server" />
<bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name="prefix" value="/WEB-INF/jsp/" />
<property name="suffix" value=".jsp" />
</bean>
<context:annotation-config/>
<mvc:annotation-driven />
LoginServlet.java
变化:不同requestMapping路径,标志着方法不是类,从返回的字符串方法,返回的ModelAndView类
package plan.route.server;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.springframework.stereotype.Controller;
import org.springframework.ui.ModelMap;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.servlet.ModelAndView;
@Controller()
@RequestMapping("/")
public class LoginServlet extends org.springframework.web.servlet.mvc.AbstractController {
@RequestMapping(method = RequestMethod.GET)
public String forwardTo() {
return "index";
}
@Override
protected ModelAndView handleRequestInternal(HttpServletRequest request, HttpServletResponse response)
throws Exception {
return new ModelAndView("login", "login", "login");
}
}
项目设置
变化:为servlet XML不同的地点,.jsp文件等
有人能看到什么我已经错过了?所有我想要做的,尽管所有的变化是加载一个.jsp页面。
编辑:我的Java Servlet的方法后,将显示以下错误被称为:
WARNING: No mapping found for HTTP request with URI [/Root/Login] in DispatcherServlet with name 'LoginServlet'
欢呼声中,我应该已将此添加然而变化部分。当我试图将.jsp文件移出web-inf文件夹时,我更改了该前缀值。我应该重新添加它,但这并不能解决我的问题。谢谢。 – Unknown