Servlet springapp不可用

时间:2014-11-07 22:13:30

标签: java spring

我有一个简单的弹簧应用程序,我正在尝试在Tomcat 7上运行。

我的web.xml看起来像:

<?xml version="1.0" encoding="UTF-8"?>

<web-app 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" >

<servlet>
    <servlet-name>springapp</servlet-name>
    <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
    <load-on-startup>1</load-on-startup>
</servlet>

<servlet-mapping>
    <servlet-name>springapp</servlet-name>
    <url-pattern>*.htm</url-pattern>
</servlet-mapping>

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

</web-app>

然后我有一个springapp-servlet.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"
      xsi:schemaLocation="http://www.springframework.org/schema/beans
      http://www.springframework.org/schema/beans/spring-beans-4.1.xsd">

  <!-- the application context definition for the springapp DispatcherServlet -->

 <bean name="/hello.htm" class="springapp.web.HelloController"/>

</beans>

我的实际控制人是:

package springapp.web;

import org.springframework.web.servlet.mvc.Controller;
import org.springframework.web.servlet.ModelAndView;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import java.io.IOException;

public class HelloController implements Controller {

public ModelAndView handleRequest(HttpServletRequest request, HttpServletResponse response)
    throws ServletException, IOException{

    System.out.println("Returning hello view");
    return new ModelAndView("hello.jsp");
  }
}

我有两个我可以直接浏览的jsp,index.jsp和hello.jsp,但是当我尝试浏览到localhost:8080 / springapp / hello.htm时,我收到一个错误,指出Servlet springapp不是可用。我尝试过几个方面,包括不同版本的Spring Framework,但似乎没什么用。

2 个答案:

答案 0 :(得分:0)

因为忘记关闭字符串

,可能会在xml解析中出错
 xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee

将其更改为

 xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee"

相同
xsi:schemaLocation="http://www.springframework.org/schema/beans

将其更改为

xsi:schemaLocation="http://www.springframework.org/schema/beans"

答案 1 :(得分:0)

想出来。我在启动时遇到一些错误,指的是无法在32位平台上加载某些64位.dll。意识到我试图在64位版本的tomcat上运行它。下载了新版本,一切正常。