Javascript 获取错误:“未捕获的TypeError:无法读取未定义的属性'length'”
通过检查chrome开发工具提要检索成功以及chrome开发控制台中显示的各种字段(如objid、personid、personname、persongroup),我能够使用客户端代码成功地从wsdl获取响应。但结果集检索显示错误 未捕获的TypeError:无法读取未定义的属性“length” 我只需要显示人名和姓名 main.jsJavascript 获取错误:“未捕获的TypeError:无法读取未定义的属性'length'”,javascript,json,soap,Javascript,Json,Soap,通过检查chrome开发工具提要检索成功以及chrome开发控制台中显示的各种字段(如objid、personid、personname、persongroup),我能够使用客户端代码成功地从wsdl获取响应。但结果集检索显示错误 未捕获的TypeError:无法读取未定义的属性“length” 我只需要显示人名和姓名 main.js currentPage = {}; currentPage.init = function(){ WL.Logger.debug("MainPage :
currentPage = {};
currentPage.init = function(){
WL.Logger.debug("MainPage :: init");
};
function validate(){
var username=$('#username').val();
var password=$('#userpwd').val();
busyIndicator.show();
var params = {
"process": {"username":username,"userpwd":password}
};
var invocationData = {
adapter : 'SoapAdapter1',
procedure : 'userlogin_ep_process',
parameters : [params]
};
//{"process":{"username":"$('#username').val()","userpwd":"$('#userpwd').val()"}}
WL.Client.invokeProcedure(invocationData,{
onSuccess : loadFeedsSuccess,
onFailure : loadFeedsFailure
});
}
function loadFeedsSuccess(result){
WL.Logger.debug("Feed retrieve success");
busyIndicator.hide();
alert(result.responseJSON.Envelope.Body.processResponse.PERSON_ID);
//alert is priniting the value its working
displayFeeds(result.responseJSON.Envelope.Body.processResponse);
}
function loadFeedsFailure(result){
WL.Logger.error("Feed retrieve failure");
busyIndicator.hide();
WL.SimpleDialog.show("Inquiry", "Service not available. Try again later.",
[{
text : 'Reload',
handler : WL.Client.reloadApp
},
{
text: 'Close',
handler : function() {}
}]
);
}
function displayFeeds(result){
var ul = $('#mytable');
//here i get length undefined error
for (var i = 0; i < result.responseJSON.length; i++) {
var li = $('<li/>').html("PERSONID:" +result[i].PERSONID);
li.append($('<li/>').html("PERSONNAME:" +result[i].PERSONNAME));
li.append($('<hr>'));
ul.append(li);
}
}
您接收到的对象中没有responseJSON,这就是错误失败的原因,因为长度未定义:对于var i=0;i
<label>username</label> <input type="text" id="username"><br><br>
<label>password</label> <input type="text" id="userpwd"><br><br>
<input type="submit" value="login" onclick="validate();">
<ul id="mytable"></ul>
{
"Envelope": {
"Body": {
"processResponse": {
"ERROR_CODE": "S",
"ERROR_MSG": "Login Successful",
"GROUPS_ID": "76721",
"PERSON_ID": "309236",
"PERSON_LOGIN": "Y",
"PERSON_NAME": "Welcome! ashanka",
"PERSON_ROLE": "Y",
"PERSON_UID": "1014336",
"client": "http:\/\/xmlns.oracle.com\/InternetMobile\/AbsManagement\/BPELProcessUserLogin",
"xmlns": "http:\/\/xmlns.oracle.com\/InternetMobile\/AbsManagement\/BPELProcessUserLogin"
}
},
"Header": {
"FaultTo": {
"Address": "http:\/\/www.w3.org\/2005\/08\/addressing\/anonymous"
},
"MessageID": "urn:C9C4DB207D5211E5BF9B25E60F40847D",
"ReplyTo": {
"Address": "http:\/\/www.w3.org\/2005\/08\/addressing\/anonymous"
}
},
"env": "http:\/\/schemas.xmlsoap.org\/soap\/envelope\/",
"wsa": "http:\/\/www.w3.org\/2005\/08\/addressing"
},
"errors": [
],
"info": [
],
"isSuccessful": true,
"responseHeaders": {
"Content-Length": "1017",
"Content-Type": "text\/xml; charset=utf-8",
"Date": "Wed, 28 Oct 2015 09:03:42 GMT",
"SOAPAction": "\"\"",
"X-ORACLE-DMS-ECID": "9e10a9dcf92c80fa:-8e91c30:150a34b187a:-8000-0000000000053e79",
"X-Powered-By": "Servlet\/2.5 JSP\/2.1"
},
"responseTime": 106,
"statusCode": 200,
"statusReason": "OK",
"totalTime": 122,
"warnings": [
]
}