Java 如何为一个servlet映射多个url
我在struts web应用程序中用一个servlet映射两个url,web.xml中的代码部分如下Java 如何为一个servlet映射多个url,java,struts,web.xml,struts-config,Java,Struts,Web.xml,Struts Config,我在struts web应用程序中用一个servlet映射两个url,web.xml中的代码部分如下 <servlet> <servlet-name>action</servlet-name> <servlet-class>org.apache.struts.action.ActionServlet</servlet-class> <init-param> <param-name&g
<servlet>
<servlet-name>action</servlet-name>
<servlet-class>org.apache.struts.action.ActionServlet</servlet-class>
<init-param>
<param-name>config</param-name>
<param-value>/WEB-INF/struts-config.xml</param-value>
</init-param>
<init-param>
<param-name>debug</param-name>
<param-value>3</param-value>
</init-param>
<init-param>
<param-name>detail</param-name>
<param-value>3</param-value>
</init-param>
<load-on-startup>0</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>action</servlet-name>
<url-pattern>*.do</url-pattern>
<url-pattern>*.mobile</url-pattern>
</servlet-mapping>
行动
org.apache.struts.action.ActionServlet
配置
/WEB-INF/struts-config.xml
调试
3.
细节
3.
0
行动
*.做
*.手机
问题是,每当我提交任何表单时,它都会在url.for ex中添加.mobile。假设表单为:
<html:form action="login.do">
<html:text property="name" />
<html:submit >go</html:submit>
</html:form>
去
它正在向以下地址发送请求:
http:myIp:8080/ProjectName/login.mobile
我的问题是,为什么要添加。移动而不是。他们有什么办法解决这个问题吗
谢谢。删除扩展(.do/.mobile)可能有助于使用
<constant name="struts.action.extension" value=","/>
真的吗?你最好检查你的jsp文件。没有动作。do不在那里。代替.do,*.do在那里。没错。当我将servlet映射更改为action*.do时,您必须检查您的HTML。同样的JSP工作正常。很好!张贴与答案相同的帖子。