There is no Action mapped for namespace / and action name login. - [unknown loca
邱游城 2011-08-11 01:05:36 我用spring+struts2+ibatis+Extjs去做一个登陆的小Demo的时候
我的struts.xml文件如下
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
"http://struts.apache.org/dtds/struts-2.0.dtd">
<struts>
<constant name="struts.objectFactory" value="spring" />
<package name="struts2" extends="json-default">
<action name="UserLoginAction" class="userLoginAction" method="execute">
<result type="json"></result>
</action>
</package>
</struts>
Extjs的页面内容如下:
<%@page contentType="text/html;charset=gbk" %>
<html>
<head>
<link type="text/css" href="ext-3.0.0/resources/css/ext-all.css" rel="stylesheet"/>
<script type="text/javascript" src="ext-3.0.0/adapter/ext/ext-base.js"></script>
<script type="text/javascript" src="ext-3.0.0/ext-all.js"></script>
<script type="text/javascript" >
Ext.onReady(function(){
Ext.MessageBox.alert("message","邮箱登陆界面");
Ext.QuickTips.init();
Ext.form.Field.prototype.msgTarget="side";
var myform=new Ext.form.FormPanel({
title:"用户登陆",
style:{margin:"20 20 20 100"},
collapsible:false,
height:180,
width:400,
hidenLabel:false,
LabelAlign:"right",
defaultType:"textfield",
items:[{fieldLabel:"邮箱",
name:"email",
id:"email",
xtype:"textfield",
allowBlank:false,
blankText:"用户名不可以为空",
minLength:4,
minLengthText:"邮箱不能小于4位",
maxLength:16,
maxLengthText:"邮箱不能大于16位",
vtype:"email"},
{fieldLabel:"密码",
name:"password",
id:"password",
inputType:"password",
allowBlank:false,
blankText:"不能为空",
minLength:4,
minLengthText:"最短为4位",
maxLength:16,
maxLengthText:"最长为16位"
}],
buttons:[
{text:"登陆",
handler:function(){
if(myform.getForm().isValid()){
myform.getForm().submit({
waitMsg:"正在登陆.........",
url:"UserLoginAction",
method:"post",
success:function(form,action){Ext.Msg.alert("message",action.result.msg);},
failure:function(from,action){Ext.Msg.alert("message",action.result);}
});
}else{
Ext.Msg.alert("message","信息填写不完整!");
}
}
},
{text:"重置",
handler:function(){
myform.getForm().reset();
}
},
{text:"注册",
handler:function(){
window.document.location="register.jsp";
}
}
],
renderTo:"div1"
});
});
</script>
</head>
<body>
<div id="div1" align="center"></div>
</body>
</html>
当我点登陆的时候。就报了
There is no Action mapped for namespace / and action name login.
也就是说找不到Action,这是为什么啊
当我的json-default改为struts-default,不用type="json" 然后返回一个jsp页面的时候,就没问题
这到底是哪里错了
我弄了2天了!
我用的json-lib-2.1-jdk15.jar
没用其它相关json的jar包,还用了struts-spring-plugin-2.1.8.jar
我的同事和我用的一样的jar包,做成功了
我想知道这是哪里错了