我有一个简单的弹簧应用程序,我正在尝试在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,但似乎没什么用。
答案 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上运行它。下载了新版本,一切正常。