struts改变应用路径后,web程序中需要注意修改的几个地方

本文介绍了当Struts应用从Tomcat的root目录移至子目录时,如何修改配置文件struts-config.xml及JSP页面中的相关路径设置,确保应用正常运行。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

struts改变应用路径后,web程序中需要注意修改的几个地方

struts改变应用struts-config.xml如何修改配置?
原来有个应用abc,他是占用了tomcat的root目录,一切正常
struts-config.xml文件是
        <action path="/search"
                type="com.autonomy.action.SearchAction"
                name="SearchForm"
                scope="request"
                parameter="action"
                cancellable="false">
            <forward name="search" path="/search_result.jsp"/>                      
            <forward name="getdoc" path="/getcontent.jsp"/>                      
            <forward name="suggest" path="/suggest.jsp"/>                                 
        </action>      

<html:form action="/search.do?action=search" method="post">
.....
</html:form>
后来把它放入webapps下的abc

struts-config.xml不需要修改

   <forward name="suggest" path="/abc/suggest.jsp"/>    

还有jsp中的的form如果是以下这样不需要修改
<html:form action="/search.do?action=search" method="post">
.....
</html:form>
当action.java转入jsp后自动会转化为
<form name="SearchForm" method="post" action="/abc/search.do?action=search" target="result">
.....
</html:form>
但是如果
你的jsp页面如果是
<form name="SearchForm" method="post" action="/search.do?action=search" target="result">
.....
</form>
这需要修改为
<form name="SearchForm" method="post" action="/abc/search.do?action=search" target="result">

另外还有些地方,如果
index.jsp 页面里嵌入了一个iframe,如果原来是这样
 <iframe id="result" name="result" src="/search.do?action=init" frameborder="0" scrolling="auto" width="100%" height="10px"></iframe>
则需要修改为:
 <iframe id="result" name="result" src="/abc/search.do?action=init" frameborder="0" scrolling="auto" width="100%" height="10px"></iframe>
不过这样做很麻烦,一般这样做,比如
<%
String apppath =request.getContextPath();
%>
        <frameset framespacing="3" border="0" frameborder="0" rows="70%,*">               
                <frame name="main_contents" frameborder="0" scrolling="auto" src="/<%=apppath
%>/search.do?action=getdoc&id=<%=id%>" >
                <frame name="main_suggestion" frameborder="1" scrolling="auto" src="/<%
=apppath%>/search.do?action=suggest&id=<%=id%>">
        </frameset>
利用request.getContextPath();自动加入应用的路径


 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值