亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? jsonrpc.js

?? jsp+struts+hibernate eclipse開發(fā)實用電子商務商城
?? JS
字號:
/* * JSON-RPC JavaScript client * * $Id: jsonrpc.js,v 1.36.2.1 2005/12/09 13:15:32 mclark Exp $ * * Copyright (c) 2003-2004 Jan-Klaas Kollhof * Copyright (c) 2005 Michael Clark, Metaparadigm Pte Ltd * * This code is based on Jan-Klaas' JavaScript o lait library (jsolait). * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public (LGPL) * License as published by the Free Software Foundation; either * version 2.1 of the License, or (at your option) any later version. * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU * Lesser General Public License for more details: http://www.gnu.org/ * *//* escape a character */escapeJSONChar =function escapeJSONChar(c){    if(c == "\"" || c == "\\") return "\\" + c;    else if (c == "\b") return "\\b";    else if (c == "\f") return "\\f";    else if (c == "\n") return "\\n";    else if (c == "\r") return "\\r";    else if (c == "\t") return "\\t";    var hex = c.charCodeAt(0).toString(16);    if(hex.length == 1) return "\\u000" + hex;    else if(hex.length == 2) return "\\u00" + hex;    else if(hex.length == 3) return "\\u0" + hex;    else return "\\u" + hex;};/* encode a string into JSON format */escapeJSONString =function escapeJSONString(s){    /* The following should suffice but Safari's regex is b0rken       (doesn't support callback substitutions)       return "\"" + s.replace(/([^\u0020-\u007f]|[\\\"])/g,       escapeJSONChar) + "\"";    */    /* Rather inefficient way to do it */    var parts = s.split("");    for(var i=0; i < parts.length; i++) {	var c =parts[i];	if(c == '"' ||	   c == '\\' ||	   c.charCodeAt(0) < 32 ||	   c.charCodeAt(0) >= 128)	    parts[i] = escapeJSONChar(parts[i]);    }    return "\"" + parts.join("") + "\"";};/* Marshall objects to JSON format */toJSON = function toJSON(o){    if(o == null) {	return "null";    } else if(o.constructor == String) {	return escapeJSONString(o);    } else if(o.constructor == Number) {	return o.toString();    } else if(o.constructor == Boolean) {	return o.toString();    } else if(o.constructor == Date) {	return '{javaClass: "java.util.Date", time: ' + o.valueOf() +'}';    } else if(o.constructor == Array) {	var v = [];	for(var i = 0; i < o.length; i++) v.push(toJSON(o[i]));	return "[" + v.join(", ") + "]";    } else {	var v = [];	for(attr in o) {	    if(o[attr] == null) v.push("\"" + attr + "\": null");	    else if(typeof o[attr] == "function"); /* skip */	    else v.push(escapeJSONString(attr) + ": " + toJSON(o[attr]));	}	return "{" + v.join(", ") + "}";    }};/* JSONRpcClient constructor */JSONRpcClient =function JSONRpcClient_ctor(serverURL, user, pass, objectID){    this.serverURL = serverURL;    this.user = user;    this.pass = pass;    this.objectID = objectID;    /* Add standard methods */    if(this.objectID) {	this._addMethods(["listMethods"]);	var req = this._makeRequest("listMethods", []);    } else {	this._addMethods(["system.listMethods"]);	var req = this._makeRequest("system.listMethods", []);    }    var m = this._sendRequest(req);    this._addMethods(m);};/* JSONRpcCLient.Exception */JSONRpcClient.Exception =function JSONRpcClient_Exception_ctor(code, message, javaStack){    this.code = code;    var name;    if(javaStack) {	this.javaStack = javaStack;	var m = javaStack.match(/^([^:]*)/);	if(m) name = m[0];    }    if(name) this.name = name;    else this.name = "JSONRpcClientException";    this.message = message;};JSONRpcClient.Exception.CODE_REMOTE_EXCEPTION = 490;JSONRpcClient.Exception.CODE_ERR_CLIENT = 550;JSONRpcClient.Exception.CODE_ERR_PARSE = 590;JSONRpcClient.Exception.CODE_ERR_NOMETHOD = 591;JSONRpcClient.Exception.CODE_ERR_UNMARSHALL = 592;JSONRpcClient.Exception.CODE_ERR_MARSHALL = 593;JSONRpcClient.Exception.prototype = new Error();JSONRpcClient.Exception.prototype.toString =function JSONRpcClient_Exception_toString(code, msg){    return this.name + ": " + this.message;};/* Default top level exception handler */JSONRpcClient.default_ex_handler =function JSONRpcClient_default_ex_handler(e) { alert(e); };/* Client settable variables */JSONRpcClient.toplevel_ex_handler = JSONRpcClient.default_ex_handler;JSONRpcClient.profile_async = false;JSONRpcClient.max_req_active = 1;JSONRpcClient.requestId = 1;/* JSONRpcClient implementation */JSONRpcClient.prototype._createMethod =function JSONRpcClient_createMethod(methodName){    var fn=function()    {	var args = [];	var callback = null;	for(var i=0;i<arguments.length;i++) args.push(arguments[i]);	if(typeof args[0] == "function") callback = args.shift();	var req = fn.client._makeRequest.call(fn.client, fn.methodName,					      args, callback);	if(callback == null) {	    return fn.client._sendRequest.call(fn.client, req);	} else {	    JSONRpcClient.async_requests.push(req);	    JSONRpcClient.kick_async();	    return req.requestId;	}    };    fn.client = this;    fn.methodName = methodName;    return fn;};JSONRpcClient.prototype._addMethods =function JSONRpcClient_addMethods(methodNames){    for(var i=0; i<methodNames.length; i++) {	var obj = this;	var names = methodNames[i].split(".");	for(var n=0; n<names.length-1; n++) {	    var name = names[n];	    if(obj[name]) {		obj = obj[name];	    } else {		obj[name]  = new Object();		obj = obj[name];	    }	}	var name = names[names.length-1];	if(!obj[name]) {	    var method = this._createMethod(methodNames[i]);	    obj[name] = method;	}    }};JSONRpcClient._getCharsetFromHeaders =function JSONRpcClient_getCharsetFromHeaders(http){    try {	var contentType = http.getResponseHeader("Content-type");	var parts = contentType.split(/\s*;\s*/);	for(var i =0; i < parts.length; i++) {	    if(parts[i].substring(0, 8) == "charset=")		return parts[i].substring(8, parts[i].length);	}    } catch (e) {}    return "UTF-8"; /* default */};/* Async queue globals */JSONRpcClient.async_requests = [];JSONRpcClient.async_inflight = {};JSONRpcClient.async_responses = [];JSONRpcClient.async_timeout = null;JSONRpcClient.num_req_active = 0;JSONRpcClient._async_handler =function JSONRpcClient_async_handler(){    JSONRpcClient.async_timeout = null;    while(JSONRpcClient.async_responses.length > 0) {	var res = JSONRpcClient.async_responses.shift();	if(res.canceled) continue;	if(res.profile) res.profile.dispatch = new Date();	try {	    res.cb(res.result, res.ex, res.profile);	} catch(e) {	    JSONRpcClient.toplevel_ex_handler(e);	}    }    while(JSONRpcClient.async_requests.length > 0 &&	  JSONRpcClient.num_req_active < JSONRpcClient.max_req_active) {	var req = JSONRpcClient.async_requests.shift();	if(req.canceled) continue;	req.client._sendRequest.call(req.client, req);    }};JSONRpcClient.kick_async =function JSONRpcClient_kick_async(){    if(JSONRpcClient.async_timeout == null)	JSONRpcClient.async_timeout =	    setTimeout(JSONRpcClient._async_handler, 0);};JSONRpcClient.cancelRequest =function JSONRpcClient_cancelRequest(requestId){    /* If it is in flight then mark it as canceled in the inflight map       and the XMLHttpRequest callback will discard the reply. */    if(JSONRpcClient.async_inflight[requestId]) {	JSONRpcClient.async_inflight[requestId].canceled = true;	return true;    }    /* If its not in flight yet then we can just mark it as canceled in       the the request queue and it will get discarded before being sent. */    for(var i in JSONRpcClient.async_requests) {	if(JSONRpcClient.async_requests[i].requestId == requestId) {	    JSONRpcClient.async_requests[i].canceled = true;	    return true;	}    }    /* It may have returned from the network and be waiting for its callback       to be dispatched, so mark it as canceled in the response queue       and the response will get discarded before calling the callback. */    for(var i in JSONRpcClient.async_responses) {	if(JSONRpcClient.async_responses[i].requestId == requestId) {	    JSONRpcClient.async_responses[i].canceled = true;	    return true;	}    }    return false;};JSONRpcClient.prototype._makeRequest =function JSONRpcClient_makeRequest(methodName, args, cb){    var req = {};    req.client = this;    req.requestId = JSONRpcClient.requestId++;    var obj = {};    obj.id = req.requestId;    if (this.objectID)	obj.method = ".obj#" + this.objectID + "." + methodName;    else	obj.method = methodName;    obj.params = args;    if (cb) req.cb = cb;    if (JSONRpcClient.profile_async)	req.profile = { "submit": new Date() };    req.data = toJSON(obj);    return req;};JSONRpcClient.prototype._sendRequest =function JSONRpcClient_sendRequest(req){    if(req.profile) req.profile.start = new Date();    /* Get free http object from the pool */    var http = JSONRpcClient.poolGetHTTPRequest();    JSONRpcClient.num_req_active++;    /* Send the request */    http.open("POST", this.serverURL, (req.cb != null), this.user, this.pass);    /* setRequestHeader is missing in Opera 8 Beta */    try { http.setRequestHeader("Content-type", "text/plain"); } catch(e) {}    /* Construct call back if we have one */    if(req.cb) {	var self = this;	http.onreadystatechange = function() {	    if(http.readyState == 4) {		http.onreadystatechange = function () {};		var res = { "cb": req.cb, "result": null, "ex": null};		if (req.profile) {		    res.profile = req.profile;		    res.profile.end = new Date();		}		try { res.result = self._handleResponse(http); }		catch(e) { res.ex = e; }		if(!JSONRpcClient.async_inflight[req.requestId].canceled)		    JSONRpcClient.async_responses.push(res);		delete JSONRpcClient.async_inflight[req.requestId];		JSONRpcClient.kick_async();	    }	};    } else {	http.onreadystatechange = function() {};    }    JSONRpcClient.async_inflight[req.requestId] = req;	    try {	http.send(req.data);    } catch(e) {	JSONRpcClient.poolReturnHTTPRequest(http);	JSONRpcClient.num_req_active--;	throw new JSONRpcClient.Exception	    (JSONRpcClient.Exception.CODE_ERR_CLIENT, "Connection failed");    }    if(!req.cb) return this._handleResponse(http);};JSONRpcClient.prototype._handleResponse =function JSONRpcClient_handleResponse(http){    /* Get the charset */    if(!this.charset) {	this.charset = JSONRpcClient._getCharsetFromHeaders(http);    }    /* Get request results */    var status, statusText, data;    try {	status = http.status;	statusText = http.statusText;	data = http.responseText;    } catch(e) {	JSONRpcClient.poolReturnHTTPRequest(http);	JSONRpcClient.num_req_active--;	JSONRpcClient.kick_async();	throw new JSONRpcClient.Exception	    (JSONRpcClient.Exception.CODE_ERR_CLIENT, "Connection failed");    }    /* Return http object to the pool; */    JSONRpcClient.poolReturnHTTPRequest(http);    JSONRpcClient.num_req_active--;    /* Unmarshall the response */    if(status != 200) {	throw new JSONRpcClient.Exception(status, statusText);    }    var obj;    try {	eval("obj = " + data);    } catch(e) {	throw new JSONRpcClient.Exception(550, "error parsing result");    }    if(obj.error)	throw new JSONRpcClient.Exception(obj.error.code, obj.error.msg,					  obj.error.trace);    var res = obj.result;    /* Handle CallableProxy */    if(res && res.objectID && res.JSONRPCType == "CallableReference")	return new JSONRpcClient(this.serverURL, this.user,				 this.pass, res.objectID);    return res;};/* XMLHttpRequest wrapper code *//* XMLHttpRequest pool globals */JSONRpcClient.http_spare = [];JSONRpcClient.http_max_spare = 8;JSONRpcClient.poolGetHTTPRequest =function JSONRpcClient_pool_getHTTPRequest(){    if(JSONRpcClient.http_spare.length > 0) {	return JSONRpcClient.http_spare.pop();    }    return JSONRpcClient.getHTTPRequest();};JSONRpcClient.poolReturnHTTPRequest =function JSONRpcClient_poolReturnHTTPRequest(http){    if(JSONRpcClient.http_spare.length >= JSONRpcClient.http_max_spare)	delete http;    else	JSONRpcClient.http_spare.push(http);};JSONRpcClient.msxmlNames = [ "MSXML2.XMLHTTP.5.0",			     "MSXML2.XMLHTTP.4.0",			     "MSXML2.XMLHTTP.3.0",			     "MSXML2.XMLHTTP",			     "Microsoft.XMLHTTP" ];JSONRpcClient.getHTTPRequest =function JSONRpcClient_getHTTPRequest(){    /* Mozilla XMLHttpRequest */    try {	JSONRpcClient.httpObjectName = "XMLHttpRequest";	return new XMLHttpRequest();    } catch(e) {}    /* Microsoft MSXML ActiveX */    for (var i=0;i < JSONRpcClient.msxmlNames.length; i++) {	try {	    JSONRpcClient.httpObjectName = JSONRpcClient.msxmlNames[i];	    return new ActiveXObject(JSONRpcClient.msxmlNames[i]);	} catch (e) {}    }    /* None found */    JSONRpcClient.httpObjectName = null;    throw new JSONRpcClient.Exception(0, "Can't create XMLHttpRequest object");};

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产精品嫩草久久久久| 国产精品伊人色| 国产尤物一区二区在线| 色综合一区二区| 国产亚洲精品超碰| 日韩高清国产一区在线| 91论坛在线播放| 国产目拍亚洲精品99久久精品| 一区二区高清在线| 成人一区二区视频| 欧美不卡视频一区| 亚洲成av人片在www色猫咪| 99国产精品国产精品久久| 精品国产电影一区二区| 天天免费综合色| 91久久免费观看| 中文乱码免费一区二区| 国产成人精品免费视频网站| 日韩美女一区二区三区四区| 日韩精品免费专区| 欧美日韩卡一卡二| 亚洲成人三级小说| 欧美色精品天天在线观看视频| 亚洲欧美日韩小说| 99re这里都是精品| 国产精品国产精品国产专区不蜜| 国产一区二区中文字幕| 久久亚洲私人国产精品va媚药| 理论电影国产精品| 欧美精品一区二区久久婷婷| 麻豆精品视频在线观看免费| 制服丝袜成人动漫| 蜜桃av噜噜一区| www久久久久| 国产成人精品在线看| 中文字幕 久热精品 视频在线| 国产白丝精品91爽爽久久 | 亚洲免费观看高清完整版在线 | 久久超碰97人人做人人爱| 日韩欧美一级片| 国产一区二区精品久久| 久久久激情视频| 99精品国产热久久91蜜凸| 亚洲精品一卡二卡| 欧美电影一区二区三区| 免费成人美女在线观看.| 欧美xxxx老人做受| 高清久久久久久| 一区二区三区在线免费播放 | 亚洲高清一区二区三区| 5月丁香婷婷综合| 国产精品自拍在线| 亚洲人成7777| 91精品国产综合久久精品麻豆| 另类小说图片综合网| 中文字幕va一区二区三区| 色噜噜狠狠一区二区三区果冻| 天天操天天色综合| 国产三级欧美三级| 色悠悠亚洲一区二区| 免费在线观看一区| 国产精品美女一区二区三区| 欧美色视频一区| 国产精品一区二区久久精品爱涩| 亚洲欧美在线另类| 精品国精品自拍自在线| 91丨九色porny丨蝌蚪| 国产精品2024| 亚洲精品国产高清久久伦理二区| 欧美精品日韩综合在线| 风流少妇一区二区| 亚洲成人一二三| 国产精品天天看| 欧美一级搡bbbb搡bbbb| 国产成人99久久亚洲综合精品| 亚洲gay无套男同| 国产日韩欧美制服另类| 欧美精品久久天天躁| 成人app下载| 久久精品久久综合| 洋洋成人永久网站入口| 欧美激情在线免费观看| 日韩欧美国产综合| 欧美性大战久久久久久久蜜臀| 韩国三级电影一区二区| 性做久久久久久久久| 日韩美女视频一区| 日本一区二区三区久久久久久久久不| 欧美午夜片在线看| 99精品视频一区| 国产精品中文字幕日韩精品 | 福利一区福利二区| 日本成人在线不卡视频| 亚洲精品欧美激情| 国产精品久久久久影院色老大| 91精品欧美综合在线观看最新| 99精品视频一区二区三区| 国产不卡一区视频| 国产精品影视在线观看| 麻豆精品在线播放| 麻豆成人av在线| 日韩福利视频网| 亚洲chinese男男1069| 亚洲最大成人综合| 亚洲免费视频成人| 亚洲视频中文字幕| 中文字幕日本乱码精品影院| 欧美经典一区二区三区| 日本一区二区三区国色天香| 国产亚洲欧美日韩在线一区| 26uuu国产电影一区二区| 日韩精品综合一本久道在线视频| 欧美精三区欧美精三区| 在线综合+亚洲+欧美中文字幕| 欧美日韩亚洲高清一区二区| 欧美性高清videossexo| 91豆麻精品91久久久久久| 日本高清成人免费播放| 在线免费亚洲电影| 欧美日韩国产精选| 91麻豆精品国产91久久久| 欧美一级艳片视频免费观看| 欧美成人aa大片| 久久先锋影音av鲁色资源| 国产欧美日韩另类视频免费观看 | 欧美日韩五月天| 在线免费视频一区二区| 欧美日韩一级视频| 日韩一区二区在线免费观看| 精品日韩一区二区三区| 中文字幕欧美日本乱码一线二线 | 国产亚洲一区二区三区| 国产精品看片你懂得| 亚洲精品一卡二卡| 日本欧美大码aⅴ在线播放| 精品一区二区三区免费观看| 国产伦精品一区二区三区免费迷| 国产成人精品综合在线观看 | 成人av午夜影院| 91成人在线精品| 日韩三级视频中文字幕| 国产精品视频第一区| 亚洲久本草在线中文字幕| 日韩高清在线不卡| 成人午夜av电影| 51精品秘密在线观看| 国产欧美一区二区精品性色| 亚洲男同1069视频| 久久99国产精品尤物| 91丨porny丨蝌蚪视频| 91超碰这里只有精品国产| 国产色综合久久| 五月婷婷综合网| 国产精品一区二区无线| 欧美在线观看视频一区二区 | 成人听书哪个软件好| 在线观看网站黄不卡| 久久综合色播五月| 亚洲电影一区二区三区| 国产在线观看免费一区| 欧美亚洲国产一区二区三区 | 成人免费av网站| 911精品产国品一二三产区| 亚洲欧美综合另类在线卡通| 精品在线观看免费| 欧美精品乱码久久久久久按摩| 国产精品久久久久久久久久免费看 | 91视频免费看| 2020日本不卡一区二区视频| 亚洲国产另类av| 91亚洲精华国产精华精华液| 精品福利在线导航| 婷婷国产v国产偷v亚洲高清| 91性感美女视频| 欧美激情中文不卡| 日本韩国精品一区二区在线观看| 欧美一区二区三区四区高清| 亚洲图片欧美色图| 99re热这里只有精品视频| 久久久久久电影| 精品一区二区久久| 日韩亚洲欧美在线观看| 亚洲成年人影院| 欧美亚洲高清一区| 一区二区三区日韩在线观看| 成人aa视频在线观看| 国产精品色哟哟| 成人午夜精品在线| 国产欧美一区视频| 国产成人精品亚洲777人妖| 久久亚洲欧美国产精品乐播 | 五月天久久比比资源色| 在线观看网站黄不卡| 亚洲久本草在线中文字幕| 91亚洲精品久久久蜜桃| 亚洲色图视频网| 91久久线看在观草草青青| 亚洲综合视频在线观看| 欧美无砖专区一中文字| 午夜精品一区二区三区三上悠亚 |