我是想在手机客户端中请求服务端JSP资源.手机客户端是以URL+请求字符串的形式用Get方法(比如http://localhost:8080/cellbank/login.jsp?username=lcg&pwd=123)来请求服务端资源的,现在服务端的编程我想套用Struts框架,请问在这种情况下怎样将请求映射?
我曾尝试如下的做法:
(1)客户请求为 http://localhost:8080/cellbank/Login.do?username=lcg&pwd=123
(2)在web.xml中加入:
<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>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>action</servlet-name>
<url-pattern>*.do</url-pattern>
</servlet-mapping>
(3)将struts.jar加入/WEB-INF/lib目录下
(4)在struts-config.xml中加入:
<action-mappings>
<action path="/Login"
type="com.lcg.LoginAction" >
<forward name="right" path="/right.jsp"/>
<forward name="wrong" path="/wrong.jsp"/>
</action>
</action-mappings>
(5)编写com.lcg.LoginAction继承Action,并在execute()方法中进行数据处理
但实际上ActionServlet无法将/Login.do映射到com.lcg.LoginAction,小弟初学Struts框架,很多地方都不是很清楚,请问这种情况下是否可以用Struts框架,如果可以用,应该怎么映射?
7 个解决方案
#1
你把运行时的错误信息贴出来看看啊!配置没有不对的地方。
#2
问题是ActionServlet不是把Login.do当做映射来处理,而是当做请求页面来处理了,你可以在URL栏中输入http://localhost:8080/cellbank/Login.do?username=lcg&pwd=123,可以看到运行报错,告诉你Login.do资源不存在.
#3
如果是:
在URL栏中输入http://localhost:8080/cellbank/Login.do?username=lcg&pwd=123,可以看到运行报错,告诉你Login.do资源不存在.
一般是你的struts还没起作用。
或者是你的Struts-config。xml配置文件有问题。
简化一下你的程序。做个调试看看。。。
在URL栏中输入http://localhost:8080/cellbank/Login.do?username=lcg&pwd=123,可以看到运行报错,告诉你Login.do资源不存在.
一般是你的struts还没起作用。
或者是你的Struts-config。xml配置文件有问题。
简化一下你的程序。做个调试看看。。。
#4
可是你能看看我以上的配置步骤有什么问题吗?
#5
up
#6
你的配置没看出什么不妥的。
你把错误信息贴出来看看吧。。。
你把错误信息贴出来看看吧。。。
#7
问题找到了,原来是web.xml和struts-config.xml没有放在/WEB-INF目录下,谢谢各位了
#1
你把运行时的错误信息贴出来看看啊!配置没有不对的地方。
#2
问题是ActionServlet不是把Login.do当做映射来处理,而是当做请求页面来处理了,你可以在URL栏中输入http://localhost:8080/cellbank/Login.do?username=lcg&pwd=123,可以看到运行报错,告诉你Login.do资源不存在.
#3
如果是:
在URL栏中输入http://localhost:8080/cellbank/Login.do?username=lcg&pwd=123,可以看到运行报错,告诉你Login.do资源不存在.
一般是你的struts还没起作用。
或者是你的Struts-config。xml配置文件有问题。
简化一下你的程序。做个调试看看。。。
在URL栏中输入http://localhost:8080/cellbank/Login.do?username=lcg&pwd=123,可以看到运行报错,告诉你Login.do资源不存在.
一般是你的struts还没起作用。
或者是你的Struts-config。xml配置文件有问题。
简化一下你的程序。做个调试看看。。。
#4
可是你能看看我以上的配置步骤有什么问题吗?
#5
up
#6
你的配置没看出什么不妥的。
你把错误信息贴出来看看吧。。。
你把错误信息贴出来看看吧。。。
#7
问题找到了,原来是web.xml和struts-config.xml没有放在/WEB-INF目录下,谢谢各位了