本文材料来源于传智播客,在此说明。
整个项目结构:
问题:
JFactoryList.jsp代码如下:
上面的代码onclick="formSubmit('factorycreate.action','_self');
但是真正提交的是:
那么basicinfo/factory/这些是怎么来的呢?在comm.js中找到formSubmit的函数原型:
function formSubmit (url,sTarget){ document.forms[0].target = sTarget document.forms[0].action = url; document.forms[0].submit(); return true;}
发现没什么异常啊。
那就很奇怪啊。
猜想是这样的:我们操作的JFactoryList.jsp就位于/basicinfo/factory目录下,所以我们在提交的factorycreate.action提交时,
就会自动补充到/basicinfo/factory/factorycreate.action这个请求。浏览器做的事情。
在Tomcat的目录结构是这样的:
在pages下:
而pages与classes是同级的,这个级别是不算路径的,所以直接就是
127.0.0.1:8000/JkTest/basinfo/factory/JFactoryCreate.jsp.
而我们点击确定时就来到了
127.0.0.1:8000/JkTest/basinfo/factory/factorycreate.action.