在ssh项目中使用servlet


 

    虽然很多人说用了SSH还要servlet做什么,但是需要在SSH项目中使用servlet的时候却找不到解决方法。第一次整servlet到SSH项目上遇到了好多坑,花了两天才解决。

    当我们在页面发出请求时,struts2将会拦截所有请求,对于servlet请求将不能够正常响应,报错信息为:HTTP Status 404 - There is no Action mapped for namespace / and action name xxServlet.

  

 <filter-mapping>

<filter-name>struts2</filter-name>

 <url-pattern>/*</url-pattern>

 </filter-mapping>

之前我试过把/*改成*.do,/strut/*  ,但项目之前的页面都无法显示了。我们可以将原来的servlet的<url-pattern>给servlet加上一个后缀

<servlet-mapping>

<servlet-name>RegisterServlet</servlet-name>

<url-pattern>/RegisterServlet.servlet</url-pattern>

</servlet-mapping>

这样servlet就可以避开struts2的拦截了,然后我们在servlet中生成init()方法,

 public void init() throws ServletException {

context = WebApplicationContextUtils.getWebApplicationContext(this.getServletContext());

findUsersService = (IFindUsersService) context.getBean("findUsersService");

}

这样就可以获取spring的代理了。


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM