我是Spring的新手。我通过涵盖网络流量的这个tutorial的部分工作。我的最终目标是使用Spring在旧版servlet webapp中实现新功能,然后逐渐将现有代码制作成Spring webabb。因此,为了这个目的,我决定再次浏览教程的Web流程部分,在旧版servlet应用程序的开发副本中更改名称以使用Spring创建我自己的第一个“hello world”屏幕。集成Spring 2.5和旧版Servlet应用程序
我的问题是,当我把Spring的servlet映射放到我的web.xml中时,我得到404s试图到达我的着陆页。
- 我使用的WebLogic 9.2
- 我将我的webapp的目录树,模仿春的webapps使用
- 我复制的spring.jar和弹簧mvc.jar到我的WEB-INF布局/ lib
我制作了我的web.xml的简化版本,只有一个旧的servlet(用于登录页面)和Spring。它与Spring的东西一起工作,但没有其他。 这,为 “ABC” 的webapp
<?xml version="1.0" encoding="UTF-8"?>
<web-app id="WebApp_ID" 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>LogIn</servlet-name>
<servlet-class>
com.utilities.LogIn
</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>LogIn</servlet-name>
<url-pattern>/home</url-pattern>
</servlet-mapping>
<servlet>
<servlet-name>abc</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>abc</servlet-name>
<url-pattern>*.htm</url-pattern>
</servlet-mapping>
<!-- Welcome File List -->
<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
</web-app>
我的WEB-INF/web.xml中这是我的WEB-INF/ABC-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-2.5.xsd">
<!-- the application context definition for the NSD webapp DispatcherServlet -->
<beans name = "/hello.htm" class = "com.somecompany.web.HelloController"/>
</beans>
这里是我的基本控制器代码:
package com.somecompany.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;
import org.apache.log4j.Logger;
public class HelloController implements Controller {
protected static final Logger logger = Logger.getLogger(HelloController.class);
public ModelAndView handleRequest(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
logger.info("Returning view for CBS Search ....");
return new ModelAndView("hello.jsp");
}
}// end class
同样,我的问题是不是与控制器或视图(jsp)...还没有。现在,当我在我的web.xml中包含Spring servlet映射时,我无法到达我的着陆页,我得到了404。当我抽出Spring servlet映射时,问题就消失了。
我是一个初学春天的初学者,所以我不确定去哪里看。
嗨,大家好。我纠正了我的错误。仍然没有快乐。我开始赏金。获胜者获得50点我的声望点数。 – Steve 2012-02-16 20:15:44
使用Spring 2.5而不是3.0的任何原因? 3.0中的基于注释的配置比在2.5中配置bean更加简单和容易。 – gigadot 2012-02-21 17:10:02