2014-04-03 70 views
0

我无法弄清楚这段代码中的问题。我没有得到主页,也没有在控制台中显示错误。spring mvc HTTP状态404基本启动

的web.xml:

<web-app> 
    <display-name>Myapp</display-name> 
    <servlet> 
     <servlet-name>dispatcher</servlet-name> 
     <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> 
    </servlet> 
    <servlet-mapping> 
     <servlet-name>dispatcher</servlet-name> 
     <url-pattern>*.do</url-pattern> 
    </servlet-mapping> 

</web-app> 

调度-servlet.xml中:

<beans xmlns="http://www.springframework.org/schema/beans" 
    xmlns:context="http://www.springframework.org/schema/context" 
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 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/mvc 
     http://www.springframework.org/schema/mvc/spring-mvc.xsd 
    http://www.springframework.org/schema/context 
    http://www.springframework.org/schema/context/spring-context-3.0.xsd"> 
    <mvc:annotation-driven /> 
    <context:component-scan base-package="com.sim.market.controller" /> 

    <bean 
     class="org.springframework.web.servlet.view.InternalResourceViewResolver"> 
     <property name="prefix" value="/WEB-INF/jsp/" /> 
     <property name="suffix" value=".jsp" /> 
    </bean> 

</beans> 

首页控制器:

package com.sim.market.controller; 

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

@Controller 
@RequestMapping("/home") 
public class HomeController { 

    public String showHome(){ 
     System.out.println("calloing"); 
     return "home"; 
    } 
} 

在控制台上没有错误,但在浏览器错误是

HTTP Status 404 - 

type Status report 

message 

description The requested resource is not available. 

enter image description here 谁能帮助我吗?提前致谢。

从日食它运行应用程序时显示以下日志:

Apr 03, 2014 6:54:30 PM org.apache.catalina.core.AprLifecycleListener init 
INFO: The APR based Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: /usr/lib/jvm/java-7-oracle/jre/lib/i386/client:/usr/lib/jvm/java-7-oracle/jre/lib/i386::/usr/java/packages/lib/i386:/lib:/usr/lib 
Apr 03, 2014 6:54:30 PM org.apache.tomcat.util.digester.SetPropertiesRule begin 
WARNING: [SetPropertiesRule]{Server/Service/Engine/Host/Context} Setting property 'source' to 'org.eclipse.jst.jee.server:MarketApp' did not find a matching property. 
Apr 03, 2014 6:54:30 PM org.apache.coyote.AbstractProtocol init 
INFO: Initializing ProtocolHandler ["http-bio-8080"] 
Apr 03, 2014 6:54:30 PM org.apache.coyote.AbstractProtocol init 
INFO: Initializing ProtocolHandler ["ajp-bio-8009"] 
Apr 03, 2014 6:54:30 PM org.apache.catalina.startup.Catalina load 
INFO: Initialization processed in 960 ms 
Apr 03, 2014 6:54:30 PM org.apache.catalina.core.StandardService startInternal 
INFO: Starting service Catalina 
Apr 03, 2014 6:54:30 PM org.apache.catalina.core.StandardEngine startInternal 
INFO: Starting Servlet Engine: Apache Tomcat/7.0.37 
Apr 03, 2014 6:54:31 PM org.apache.catalina.startup.TaglibUriRule body 
INFO: TLD skipped. URI: http://java.sun.com/jstl/core_rt is already defined 
Apr 03, 2014 6:54:31 PM org.apache.catalina.startup.TaglibUriRule body 
INFO: TLD skipped. URI: http://java.sun.com/jstl/core is already defined 
Apr 03, 2014 6:54:31 PM org.apache.catalina.startup.TaglibUriRule body 
INFO: TLD skipped. URI: http://java.sun.com/jstl/fmt_rt is already defined 
Apr 03, 2014 6:54:31 PM org.apache.catalina.startup.TaglibUriRule body 
INFO: TLD skipped. URI: http://java.sun.com/jstl/fmt is already defined 
Apr 03, 2014 6:54:31 PM org.apache.catalina.startup.TaglibUriRule body 
INFO: TLD skipped. URI: http://jakarta.apache.org/taglibs/standard/permittedTaglibs is already defined 
Apr 03, 2014 6:54:31 PM org.apache.catalina.startup.TaglibUriRule body 
INFO: TLD skipped. URI: http://jakarta.apache.org/taglibs/standard/scriptfree is already defined 
Apr 03, 2014 6:54:31 PM org.apache.catalina.startup.TaglibUriRule body 
INFO: TLD skipped. URI: http://java.sun.com/jstl/sql_rt is already defined 
Apr 03, 2014 6:54:31 PM org.apache.catalina.startup.TaglibUriRule body 
INFO: TLD skipped. URI: http://java.sun.com/jstl/sql is already defined 
Apr 03, 2014 6:54:31 PM org.apache.catalina.startup.TaglibUriRule body 
INFO: TLD skipped. URI: http://java.sun.com/jstl/xml_rt is already defined 
Apr 03, 2014 6:54:31 PM org.apache.catalina.startup.TaglibUriRule body 
INFO: TLD skipped. URI: http://java.sun.com/jstl/xml is already defined 
Apr 03, 2014 6:54:31 PM org.apache.catalina.loader.WebappClassLoader validateJarFile 
INFO: validateJarFile(/home/webwerks/sachin/workspaces/sedi_workspace/.metadata/.plugins/org.eclipse.wst.server.core/tmp0/wtpwebapps/MarketApp/WEB-INF/lib/servlet-api-3.0-alpha-1.jar) - jar not loaded. See Servlet Spec 2.3, section 9.7.2. Offending class: javax/servlet/Servlet.class 
Apr 03, 2014 6:54:38 PM org.apache.catalina.startup.TaglibUriRule body 
INFO: TLD skipped. URI: http://java.sun.com/jstl/core_rt is already defined 
Apr 03, 2014 6:54:38 PM org.apache.catalina.startup.TaglibUriRule body 
INFO: TLD skipped. URI: http://java.sun.com/jstl/core is already defined 
Apr 03, 2014 6:54:38 PM org.apache.catalina.startup.TaglibUriRule body 
INFO: TLD skipped. URI: http://java.sun.com/jsp/jstl/core is already defined 
Apr 03, 2014 6:54:38 PM org.apache.catalina.startup.TaglibUriRule body 
INFO: TLD skipped. URI: http://java.sun.com/jstl/fmt_rt is already defined 
Apr 03, 2014 6:54:38 PM org.apache.catalina.startup.TaglibUriRule body 
INFO: TLD skipped. URI: http://java.sun.com/jstl/fmt is already defined 
Apr 03, 2014 6:54:38 PM org.apache.catalina.startup.TaglibUriRule body 
INFO: TLD skipped. URI: http://java.sun.com/jsp/jstl/fmt is already defined 
Apr 03, 2014 6:54:38 PM org.apache.catalina.startup.TaglibUriRule body 
INFO: TLD skipped. URI: http://java.sun.com/jsp/jstl/functions is already defined 
Apr 03, 2014 6:54:38 PM org.apache.catalina.startup.TaglibUriRule body 
INFO: TLD skipped. URI: http://jakarta.apache.org/taglibs/standard/permittedTaglibs is already defined 
Apr 03, 2014 6:54:38 PM org.apache.catalina.startup.TaglibUriRule body 
INFO: TLD skipped. URI: http://jakarta.apache.org/taglibs/standard/scriptfree is already defined 
Apr 03, 2014 6:54:38 PM org.apache.catalina.startup.TaglibUriRule body 
INFO: TLD skipped. URI: http://java.sun.com/jstl/sql_rt is already defined 
Apr 03, 2014 6:54:38 PM org.apache.catalina.startup.TaglibUriRule body 
INFO: TLD skipped. URI: http://java.sun.com/jstl/sql is already defined 
Apr 03, 2014 6:54:38 PM org.apache.catalina.startup.TaglibUriRule body 
INFO: TLD skipped. URI: http://java.sun.com/jsp/jstl/sql is already defined 
Apr 03, 2014 6:54:38 PM org.apache.catalina.startup.TaglibUriRule body 
INFO: TLD skipped. URI: http://java.sun.com/jstl/xml_rt is already defined 
Apr 03, 2014 6:54:38 PM org.apache.catalina.startup.TaglibUriRule body 
INFO: TLD skipped. URI: http://java.sun.com/jstl/xml is already defined 
Apr 03, 2014 6:54:38 PM org.apache.catalina.startup.TaglibUriRule body 
INFO: TLD skipped. URI: http://java.sun.com/jsp/jstl/xml is already defined 
Apr 03, 2014 6:54:38 PM org.apache.catalina.startup.TaglibUriRule body 
INFO: TLD skipped. URI: http://java.sun.com/jstl/core_rt is already defined 
Apr 03, 2014 6:54:38 PM org.apache.catalina.startup.TaglibUriRule body 
INFO: TLD skipped. URI: http://java.sun.com/jstl/core is already defined 
Apr 03, 2014 6:54:38 PM org.apache.catalina.startup.TaglibUriRule body 
INFO: TLD skipped. URI: http://java.sun.com/jstl/fmt_rt is already defined 
Apr 03, 2014 6:54:38 PM org.apache.catalina.startup.TaglibUriRule body 
INFO: TLD skipped. URI: http://java.sun.com/jstl/fmt is already defined 
Apr 03, 2014 6:54:38 PM org.apache.catalina.startup.TaglibUriRule body 
INFO: TLD skipped. URI: http://jakarta.apache.org/taglibs/standard/permittedTaglibs is already defined 
Apr 03, 2014 6:54:38 PM org.apache.catalina.startup.TaglibUriRule body 
INFO: TLD skipped. URI: http://jakarta.apache.org/taglibs/standard/scriptfree is already defined 
Apr 03, 2014 6:54:38 PM org.apache.catalina.startup.TaglibUriRule body 
INFO: TLD skipped. URI: http://java.sun.com/jstl/sql_rt is already defined 
Apr 03, 2014 6:54:38 PM org.apache.catalina.startup.TaglibUriRule body 
INFO: TLD skipped. URI: http://java.sun.com/jstl/sql is already defined 
Apr 03, 2014 6:54:38 PM org.apache.catalina.startup.TaglibUriRule body 
INFO: TLD skipped. URI: http://java.sun.com/jstl/xml_rt is already defined 
Apr 03, 2014 6:54:38 PM org.apache.catalina.startup.TaglibUriRule body 
INFO: TLD skipped. URI: http://java.sun.com/jstl/xml is already defined 
Apr 03, 2014 6:54:38 PM org.apache.catalina.startup.TaglibUriRule body 
INFO: TLD skipped. URI: http://java.sun.com/jstl/core_rt is already defined 
Apr 03, 2014 6:54:38 PM org.apache.catalina.startup.TaglibUriRule body 
INFO: TLD skipped. URI: http://java.sun.com/jstl/core is already defined 
Apr 03, 2014 6:54:38 PM org.apache.catalina.startup.TaglibUriRule body 
INFO: TLD skipped. URI: http://java.sun.com/jsp/jstl/core is already defined 
Apr 03, 2014 6:54:38 PM org.apache.catalina.startup.TaglibUriRule body 
INFO: TLD skipped. URI: http://java.sun.com/jstl/fmt_rt is already defined 
Apr 03, 2014 6:54:38 PM org.apache.catalina.startup.TaglibUriRule body 
INFO: TLD skipped. URI: http://java.sun.com/jstl/fmt is already defined 
Apr 03, 2014 6:54:38 PM org.apache.catalina.startup.TaglibUriRule body 
INFO: TLD skipped. URI: http://java.sun.com/jsp/jstl/fmt is already defined 
Apr 03, 2014 6:54:38 PM org.apache.catalina.startup.TaglibUriRule body 
INFO: TLD skipped. URI: http://java.sun.com/jsp/jstl/functions is already defined 
Apr 03, 2014 6:54:38 PM org.apache.catalina.startup.TaglibUriRule body 
INFO: TLD skipped. URI: http://jakarta.apache.org/taglibs/standard/permittedTaglibs is already defined 
Apr 03, 2014 6:54:38 PM org.apache.catalina.startup.TaglibUriRule body 
INFO: TLD skipped. URI: http://jakarta.apache.org/taglibs/standard/scriptfree is already defined 
Apr 03, 2014 6:54:38 PM org.apache.catalina.startup.TaglibUriRule body 
INFO: TLD skipped. URI: http://java.sun.com/jstl/sql_rt is already defined 
Apr 03, 2014 6:54:38 PM org.apache.catalina.startup.TaglibUriRule body 
INFO: TLD skipped. URI: http://java.sun.com/jstl/sql is already defined 
Apr 03, 2014 6:54:38 PM org.apache.catalina.startup.TaglibUriRule body 
INFO: TLD skipped. URI: http://java.sun.com/jsp/jstl/sql is already defined 
Apr 03, 2014 6:54:38 PM org.apache.catalina.startup.TaglibUriRule body 
INFO: TLD skipped. URI: http://java.sun.com/jstl/xml_rt is already defined 
Apr 03, 2014 6:54:38 PM org.apache.catalina.startup.TaglibUriRule body 
INFO: TLD skipped. URI: http://java.sun.com/jstl/xml is already defined 
Apr 03, 2014 6:54:39 PM org.apache.catalina.startup.TaglibUriRule body 
INFO: TLD skipped. URI: http://java.sun.com/jsp/jstl/xml is already defined 
Apr 03, 2014 6:54:39 PM org.apache.catalina.core.ApplicationContext log 
INFO: No Spring WebApplicationInitializer types detected on classpath 
Apr 03, 2014 6:54:39 PM org.apache.coyote.AbstractProtocol start 
INFO: Starting ProtocolHandler ["http-bio-8080"] 
Apr 03, 2014 6:54:39 PM org.apache.coyote.AbstractProtocol start 
INFO: Starting ProtocolHandler ["ajp-bio-8009"] 
Apr 03, 2014 6:54:39 PM org.apache.catalina.startup.Catalina start 
INFO: Server startup in 8143 ms 

,当我打电话像home.do 资源它表明:

SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder". 
SLF4J: Defaulting to no-operation (NOP) logger implementation 
SLF4J: See http://www.slf4j.org/codes.html#StaticLoggerBinder for further details. 
Apr 03, 2014 6:56:09 PM org.apache.catalina.core.ApplicationContext log 
INFO: Initializing Spring FrameworkServlet 'dispatcher' 
+1

您使用什么URL访问您的资源?你的Web应用程序是否正确地部署在你的Web服务器上,并且你的Web服务器是否正常运行? –

+0

http:// localhost:8080/MyApp/home.do – coreJavare

+0

我没有看到@coreJavare调用的URL。删除我的答案。 – Prasad

回答

0

注释与@RequestMappingshowHome()的方法来确定它作为处理程序。没有它,你的控制器没有处理方法,因此没有处理请求。

很显然,您会在@RequestMapping上添加限制,例如处理哪些HTTP方法,可能包含哪些标头,甚至专门处理应该处理的路径。

+0

刚做完添加相同: \t @RequestMapping(方法= RequestMethod.GET),但还是同样的错误 – coreJavare

+0

@core是应用程序部署?日志显示了什么? –

+0

请检查问题,因为我已经添加log – coreJavare

0

您需要为您的请求映射。

@RequestMapping (value = "/showhome", method = {RequestMethod.GET, RequestMethod.POST}) 
public String showHome(ModelMap model, HttpServletRequest request) { } 

就像那样。

+0

试过这其中也但还是同样的错误 – coreJavare

+0

你的要求应该是localhost /项目名/家庭/ showHome –

1

那么你应该在web.xml中添加此

<welcome-file-list> 
     <welcome-file>index.jsp</welcome-file> 
    </welcome-file-list> 

添加该代码段

的index.jsp
<meta HTTP-EQUIV="REFRESH" content="0; url=${pageContext.request.contextPath}/home.do"> 

每次我提出申请时发现,这是一个很好的选择,在Spring MVC

+0

没有它,这也没有奏效。 – coreJavare

+0

这个改变会是什么? –

+0

首先它将被重定向到index.jsp页面,该页面将刷新并重定向到您指定的URL ...此URl应该是您要执行的控制器方法的映射 – tarkikshah