相关文章

更多

最近更新

更多

spring控制器在集群下的问题

2019-03-25 13:33|来源: 网路

xml里面写的spring url-pattern都是/
问题
通过jsp连接的请求都正确定位到正确的url
jsp处理
<%@ page import="com.magus.web.util.PropUtil;"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme() + "://"
+ request.getServerName() + ":" + request.getServerPort()
+ path + "/";
basePath = PropUtil.getPropertyByName("path");
%>
basePath等于配置文件里配置的绝对url,例如http://www.domain.org:8080/domain1

但是后台处理的post请求完毕后,return new ModelAndView(new RedirectView("add"));

url就会转向http://www.domain.org:28080/domain1/add,

服务架构师说不允许用request.getContextPath();要写死contextPath,

对于spring的DispatcherServlet,需要做如何变化才能使spring初始化的时候读取的webappcontext是绝对的url,

继承或者重写?

问题补充:
naughty_liang 写道
Request对象可以取URI,PORT,CONTENTPATH,你再组装下不就可以了。


    <filter>  
        <filter-name>springSecurityFilterChain</filter-name>  
        <filter-class>org.springframework.web.filter.DelegatingFilterProxy</filter-class>  
    </filter>  
    <filter-mapping>  
        <filter-name>springSecurityFilterChain</filter-name>  
        <url-pattern>/*</url-pattern>  
    </filter-mapping>

       <servlet>
		<servlet-name>base</servlet-name>
		<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
		<init-param>
			<param-name>contextConfigLocation</param-name>
			<param-value>WEB-INF/webmvc-config.xml</param-value>
		</init-param>
	</servlet>
	<servlet-mapping>
		<servlet-name>base</servlet-name>
		<url-pattern>/</url-pattern>
	</servlet-mapping>


spring 控制器都是直接都用/来初始化了当前的上下文,我想的是集成spring初始化的某个类,将其/改为我的静态url,这样就固定住了/不是动态从服务器里获取的。

相关问答

更多