2016-08-18 64 views
0

我見過這個問題,問了很多次,我也看到了很多不同的答案。不幸的是,似乎沒有任何東西可以爲我工作。請幫忙。在名爲'offers'的DispatcherServlet中使用URI [/ TestServlet /]進行的HTTP請求未找到映射

我得到的錯誤 2016年8月18日下午1時03分09秒org.springframework.web.servlet.PageNotFound noHandlerFound 沒有找到映射與URI [/的TestServlet /]在DispatcherServlet的HTTP請求名爲「報價'

我已經嘗試了3次左右的相同的事情。 請教我如何繼續下去。

的web.xml文件是如下

<?xml version="1.0" encoding="UTF-8"?> 
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" id="WebApp_ID" version="2.5"> 
    <display-name>TestServlet</display-name> 
    <welcome-file-list> 
    <welcome-file>index.html</welcome-file> 
    <welcome-file>index.htm</welcome-file> 
    <welcome-file>index.jsp</welcome-file> 
    <welcome-file>default.html</welcome-file> 
    <welcome-file>default.htm</welcome-file> 
    <welcome-file>default.jsp</welcome-file> 
    </welcome-file-list> 
    <servlet> 
    <description></description> 
    <display-name>offers</display-name> 
    <servlet-name>offers</servlet-name> 
    <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> 
    <load-on-startup>1</load-on-startup> 
    </servlet> 
    <servlet-mapping> 
    <servlet-name>offers</servlet-name> 
    <url-pattern>/</url-pattern> 
    </servlet-mapping> 
</web-app> 

報價,servlet.xm升如下

<?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:context="http://www.springframework.org/schema/context" 
    xmlns:mvc="http://www.springframework.org/schema/mvc" 
    xsi:schemaLocation="http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc-4.2.xsd 
     http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd 
     http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-4.2.xsd"> 


    <mvc:annotation-driven></mvc:annotation-driven> 
    <context:component-scan 
     base-package="com.sharat.spring.web.controllers"> 
    </context:component-scan> 
    <bean id="jspViewResolver" 
     class="org.springframework.web.servlet.view.InternalResourceViewResolver"> 
    <property name="prefix" value="/WEB-INF/jsps/"></property> 
    <property name="suffix" value=".jsp"></property> 
    </bean> 
</beans> 

這是我回到Home.jsp文件

<%@ page language="java" contentType="text/html; charset=ISO-8859-1" 
    pageEncoding="ISO-8859-1"%> 
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> 
<html> 
<head> 
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> 
<title>My JSP</title> 
</head> 
<body> 
Hi There 
</body> 
</html> 

這是我OffersController源文件

package com.sharat.spring.web.controllers; 

import org.springframework.stereotype.Controller; 
import org.springframework.web.bind.annotation.RequestMapping; 

@Controller 
public class OffersController { 
     @RequestMapping("/") 
     public String showHome(){ 
      return "home"; 
     } 
} 

請幫助我明白的地方我可能是錯的。我檢查了我的控制器所在的包名,似乎是正確的。 我還添加了和上下文組件掃描。

謝謝。

+0

是你的home.jsp位於/ WEB-INF/jsps? – WeMakeSoftware

+0

是的。我的主頁位於/ WEB-INF/jsps – user2951259

回答

0

改變你的servlet調度映射爲所有傳入的請求:

<servlet-mapping> 
    <servlet-name>offers</servlet-name> 
    <url-pattern>/*</url-pattern> 
    </servlet-mapping> 

,並以訪問「/提供」 URI你需要編輯控制器類:

@Controller 
public class OffersController { 
     @RequestMapping("/offers") 
     public String showHome(){ 
      return "home"; 
     } 
} 
+0

親愛的Funtik, 我試過,但現在我得到錯誤 2016年8月18日下午1:48:09 org.springframework.web.servlet.PageNotFound noHandlerFound 警告:在名爲'offers'的DispatcherServlet中爲HTTP請求使用URI [/ offers /]找不到映射 我已將我的web.xml servlet映射更改爲 offers /* user2951259

+0

但您的URI應該是空白的。像localhost:8080/ – WeMakeSoftware

+0

有沒有什麼我可能做錯了,它不是空白? – user2951259

0

我還有事不知道問題是什麼。 我通過安裝Eclipse的全新版本和新的工作區,然後使用我最初發布的相同代碼得到它的工作。 奇怪!

相關問題