⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 webservice.htc

📁 java开发时好多地方用javascript是很方便的,看看这个,对你有好处.
💻 HTC
📖 第 1 页 / 共 4 页
字号:
<!--
Copyright (c) 2000-2001 Microsoft Corp. All rights reserved.
Version 1.0.1.824
-->

<PUBLIC:COMPONENT  ID=_webservice  Name="WEBSERVICE" >
<PUBLIC:PROPERTY NAME="version"
VALUE="Microsoft WebService Behavior 1.0.1.824" />
<PUBLIC:PROPERTY NAME="showProgress" VALUE=false />
<PUBLIC:METHOD   NAME="useService"/>
<PUBLIC:METHOD   NAME="createCallOptions"/>
<PUBLIC:METHOD   NAME="createUseOptions"/>
<PUBLIC:METHOD   NAME="invokeNext"/>
<PUBLIC:EVENT    ID="eventResult"  NAME="onresult"/>
<PUBLIC:EVENT    ID="eventService" NAME="onserviceavailable"/>
</PUBLIC:COMPONENT>
<SCRIPT LANGUAGE="JavaScript">
<!--
var _nextId  = 0;
var _nextNsQ = 0;
var _sdl = new Array();
var _mProg = null;
var _fVBon = false;
var _aXmlHttp = new Array();
var xsi99 = "http://www.w3.org/1999/XMLSchema-instance";
var xsi01 = "http://www.w3.org/2001/XMLSchema-instance";
var xsd01 = "http://www.w3.org/2001/XMLSchema";
var xsd99 = "http://www.w3.org/1999/XMLSchema";
var _st = {
"negativeInteger" : 0,
"unsignedShort"   : 0,
"unsignedByte"    : 0,
"unsignedLong"    : 0,
"unsignedInt"     : 0,
"decimal"         : 0,
"boolean"         : 0,
"integer"         : 0,
"double"          : 0,
"float"           : 0,
"short"           : 0,
"byte"            : 0,
"long"            : 0,
"int"             : 0,
"QName"           : 1,
"string"          : 1,
"normalizedString": 2,
"timeInstant"     : 3,
"dateTime"        : 3,
"date"            : 4,
"time"            : 5,
"base64Binary"    : 6,
"base64"          : 7};
function ErrDetail(errCode, errString, errRaw)
{
this.code = errCode;
this.string = errString;
this.raw = errRaw;
}
var L_InProgress_Text = "In Progress";
var L_InvalArg_Text = "Invalid argument";
var L_NotReady_Text = "Service unavailable";
var L_InvalRes_Text = "Invalid response";
var L_UnsupFun_Text = "Function not found";
var L_UnknownS_Text = "Unknown server error";
var L_AcDenied_Text = "Access denied";
var L_SoapUnav_Text = "Soap not available";
var L_HtcInter_Text = "HTC internal error";
var L_InvaPort_Text = "Invalid active port";
var L_InvaHead_Text = "Invalid headers";
var _errInvalArg = new ErrDetail("Client", L_InvalArg_Text, null);
var _errNotReady = new ErrDetail("Client", L_NotReady_Text, null);
var _errInvalRes = new ErrDetail("Server", L_InvalRes_Text, null);
var _errUnsupFun = new ErrDetail("Client", L_UnsupFun_Text, null);
var _errUnknownS = new ErrDetail("Server", L_UnknownS_Text, null);
var _errAcDenied = new ErrDetail("Server", L_AcDenied_Text, null);
var _errSoapUnav = new ErrDetail("Client", L_SoapUnav_Text, null);
var _errHtcInter = new ErrDetail("Client", L_HtcInter_Text, null);
var _errInvaPort = new ErrDetail("Client", L_InvaPort_Text, null);
var _errInvaHead = new ErrDetail("Client", L_InvaHead_Text, null);
var _aryError = new Array(
_errInvalArg,
_errNotReady,
_errInvalRes,
_errUnsupFun,
_errUnknownS,
_errAcDenied,
_errSoapUnav,
_errHtcInter,
_errInvaPort,
_errInvaHead
);
function postError(oCall, refError)
{
if (oCall.co != null && !oCall.co.async)
return returnError(oCall, refError);
var s = function(){returnError(oCall, refError);};
setTimeout(s, 0);
return oCall.id;
}
function returnError(oCall, refError)
{
hideProgress();
var r = new Object();
r.id = oCall.id;
r.error = true;
r.errorDetail = _aryError[refError];
if (oCall.co != null && oCall.co.async == false)
{
return r;
}
var cb = oCall.cb;
if (cb == null)
{
var evt = createEventObject();
evt.result = r;
try { eventResult.fire(evt); } catch(e) {};
}
else
{
try { cb(r); } catch(e) {};
}
return oCall.id;
}
function createCallOptions(fn, pn, cm, to, un, pw, hd, ep, pr)
{
var o = new Object();
o.funcName = fn;
o.portName = pn;
o.async    = cm;
o.timeout  = to;
o.userName = un;
o.password = pw;
o.SOAPHeader= hd;
o.endpoint = ep;
o.params   = pr;
return o;
}
function createUseOptions(rc, sh)
{
var o = new Object();
o.reuseConnection = rc == true;
o.SOAPHeader = sh;
return o;
}
function cloneObject(co)
{
var o = new Object();
for (var x in co)
o[x] = co[x];
return o;
}
function ensureVBArray(d)
{
if (!_fVBon)
{
var s1 =
"Function VBGetArySize(a, d)\n"
+ "Dim x\n"
+ "Dim s\n"
+ "s=UBound(a, 1)\n"
+ "For x = 2 To d \n"
+ 's = s & "," & UBound(a, x)\n'
+ "Next\n"
+ "VBGetArySize=s\n"
+ "End Function";
var o = document.createElement("script");
o.language = "VBS";
o.text = s1;
document.body.appendChild(o);
_fVBon = true;
}
var fn = "VBGetAryItem" + d;
if (eval("typeof " + fn) != 'undefined')
return;
var a  = new Array();
for (var i = 0; i < d; i++)
a[i] = 'p' + i;
var sp = a.join(",");
var s2 = "Function " + fn + "(a," + sp + ")\n"
+ fn + "=a(" + sp + ")\n"
+ "End Function\n";
var o = document.createElement("script");
o.language = "VBS";
o.text = s2;
document.body.appendChild(o);
}
var _b64="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";
function encb64hlp(a, k, s, iFrom, iTo, fStr)
{
var d = 0;
for (var i = 0; i + iFrom <= iTo; i ++)
d |= (fStr ? s.charCodeAt(i + iFrom) : s[i + iFrom]) << (16 - 8*i);
for (var i = 0; i <= iTo - iFrom + 1; i ++)
a[k++] = _b64.charAt(d>>>(18 - i*6)&0x3f);
return k;
}
function decb64hlp(a, ai, ca, iFrom, iTo)
{
var d = 0;
var l = iTo - iFrom;
for (var i = 0; i + iFrom <= iTo; i ++)
d |= ca[i + iFrom] << (18 - 6*i);
for (var i = 0; i < l; i ++)
a[ai + i] = (d >>> (16 - i*8)) & 0xff;
return ai + i;
}
function encb64(s)
{
var fStr = typeof(s) == "string";
var i;
var l = s.length;
var a = new Array();
var k = 0;
for (i = 2; i < l; i = i + 3)
{
k = encb64hlp(a, k, s, i - 2, i, fStr);
if ((i+1) % 57 == 0)
a[k++] = "\r\n";
}
var padd = l - i + 2;
if (padd > 0)
{
k = encb64hlp(a, k, s, i - 2, l-1, fStr);
a[k] = (padd > 1) ? "=" : "==";
}
return a.join("");
}
var _b64rsc = "\n\r\t";
function decb64(s, fStr)
{
var i, j = 0;
var ip = s.indexOf('=');
var l = ip >= 0 ? ip : s.length;
var ca = new Array();
for (i = 0; i < l; i++)
{
var c = s.charAt(i);
if (_b64rsc.indexOf(c) >= 0)
continue;
ca[j++] = _b64.indexOf(c);
}
var l = j;
var a = new Array();
var ai = 0;
for (i = 3; i < l; i = i + 4)
ai = decb64hlp(a, ai, ca, i-3, i);
if (i-4 < l)
ai = decb64hlp(a, ai, ca, i-3, l-1);
if (!fStr)
return a;
var r = '';
try
{
r = String.fromCharCode.apply(element, a);
}
catch (E)
{
for (i = 0; i < a.length; i++)
r += String.fromCharCode(a[i]);
}
return r;
}
function ensureWsdlUrl(szService)
{
if (szService.indexOf("://") > 0)
return szService;
var baseUrl = element.document.URL;
var qi = baseUrl.lastIndexOf("?");
var url2 = qi > 0 ? baseUrl.substr(0, qi) : baseUrl;
return  url2.substr(0, baseUrl.lastIndexOf("/"))
+ "/" + szService + (szService.indexOf(".")>=0 ? "" : ".asmx?wsdl");
}
function allocCall()
{
var o = new Object();
o.fDone = false;
o.next = null;
o.id = _nextId;
_nextId++;
return o;
}
function fnShowProgress()
{
if (_mProg == null)
{
var s = "<MARQUEE WIDTH=160 HEIGHT=20 BEHAVIOR=alternate SCROLLDELAY=1"
+ " STYLE='background:lightblue;position:absolute;top:0;left:0'>"
+ "</MARQUEE>";
_mProg = element.document.createElement(s);
_mProg.innerHTML = L_InProgress_Text;
}
if (_mProg.parentElement == null)
element.document.body.insertAdjacentElement("beforeEnd",_mProg);
}
function isSimpleType(os, oschm, t)
{
return oschm == null || oschm.sTypes[t.type]!=null;
}
function isPrimitive(os, t)
{
return os.ns[t.ns] == os.ns["xsd"];
}
function getSdl()
{
var szService = null;
for (var aService in _sdl)
{
if (_sdl[aService] == null)
continue;
var xmlisld = _sdl[aService]._oXml;
if (xmlisld == null)
continue;
if (   _sdl[aService].fPending
&&  xmlisld.XMLDocument.readyState == 4)
{
_sdl[aService].fPending = false;
szService = aService;
break;
}
}
if (szService == null)
return;
var oS = _sdl[szService];
var fImportDone = loadImports(oS);
if (fImportDone)
processService(oS);
}
function processService(oS)
{
var xmlSdl = oS._oXml.documentElement;
parseSdl(oS, xmlSdl);
var evt = createEventObject();
evt.serviceUrl = oS.url;
evt.userName = oS._oXml.service;
evt.serviceAvailable = xmlSdl != null;
oS._oXml.removeNode(true);
oS._oXml = null;
if (xmlSdl == null)
{
for (var nc = oS.nextCall; nc != null; nc = nc.next)
returnError(nc, 1);
_sdl[oS.url] = null;
eventService.fire(evt);
return;
}
eventService.fire(evt);
if (oS.fSeq)
return callNext(oS);
while (oS.nextCall != null)
{
var nc = oS.nextCall;
oS.nextCall = oS.nextCall.next;
_invoke(nc);
}
}
function onImportLoaded(oS)
{
for (var i = 0; i < oS.imports.length; i++)
{
if (    oS.imports[i] == null
||  !oS.imports[i].fPending
||  oS.imports[i].XMLDocument.readyState!=4)
continue;
var oImp = oS.imports[i].documentElement;
if (oImp == null)
continue;
oS.imports[i].fPending = false;
oS.cImporting --;
var xmlSdl = oS._oXml.documentElement;
switch (oImp.baseName)
{
case "definitions" :
for (var j = 0; j < oImp.attributes.length; j++)
{
var oAtt = oImp.attributes.item(j);
if (oAtt.name == "xmlns")
continue;
var ii = oAtt.name.indexOf("xmlns:");
if (ii != 0)
continue;
var nsn = oAtt.name.substring(6, oAtt.name.length);
if (oS.ns[nsn] != null)
continue;
oS.ns[nsn] = oAtt.value;
oS.nsalias[oAtt.value] = nsn;
}
for (var j = oImp.childNodes.length - 1; j >= 0; j --)
xmlSdl.appendChild(oImp.childNodes[j]);
break;
case "types" :
case "message" :
case "portType" :
case "binding" :
case "service" :
xmlSdl.appendChild(oImp);
break;
default :
var nsq = getQualifier(xmlSdl.nodeName);
nsq = nsq.length == 0 ? "" : (nsq + ":");
var nt = oS._oXml.XMLDocument.createElement(nsq + "types");
xmlSdl.appendChild(nt);
nt.appendChild(oImp);
}
oS.imports[i].removeNode(true);
oS.imports[i] = null;
if (oS.cImporting == 0)
{
processService(oS);
return;
}
}
}
function loadImports(oS)
{
var xmlSdl = oS._oXml.documentElement;
if (xmlSdl == null)
return true;
var nsq = getQualifier(xmlSdl.nodeName);
nsq = nsq.length == 0 ? "" : (nsq + ":");
var nImp     = xmlSdl.selectNodes(nsq + "import");
if (nImp.length == 0)
return true;
oS.imports = new Array();
oS.cImporting = 0;
for (var i = 0; i < nImp.length; i++)
{
oImp = document.createElement("XML");
document.body.appendChild(oImp);
oImp.fPending = true;
oImp.onreadystatechange = function() {onImportLoaded(oS)};
var impUrl = getAttrib(nImp[i], "location");
if (impUrl == null)
continue;
oS.imports[i] = oImp;
oS.cImporting ++;
oImp.src = impUrl;
}
return false;
}
function invokeNext(svcName)
{
var oS = _sdl[svcName];
if (oS == null)
return;
var oC = oS.nextCall;
if (oC == null)
return null;
oS.nextCall = oC.next;
if (oS.nextCall == null)
oS.lastCall = null;
_invoke(oC);
}
function callNext(oS)
{
if (oS.fSeq)
setTimeout(element.uniqueID + '.invokeNext("' + oS.url + '")', 0);
}
function getAttrib(o, sAName)
{
if (o.attributes == null)
return null;
var a = o.attributes.getNamedItem(sAName);
if (a != null)
return a.value;
return null;
}
function getBaseName(str)
{
var a = str.split(":");
if (a.length > 1)
return a[1];
return str;
}
function getQualifier(str)
{
var a = str.split(":");
if (a.length > 1)
return a[0];
return '';
}
function getNextNsq(oS)
{
var nsq1;
do
{
nsq1 = "mswsb" + _nextNsQ;
_nextNsQ ++;
}
while (oS.ns[nsq1] != null)
return nsq1;
}
function getUniqueNsq(oS, o, litNsq)
{
if (litNsq == null || litNsq == '')
return litNsq;
var nsuri = getAttrib(o,'xmlns:'+litNsq);
if (nsuri == null)
return litNsq;
var nsq1 = oS.nsalias[nsuri];
if (nsq1 != null)
return nsq1;
litNsq = getNextNsq(oS);
oS.ns[litNsq] = nsuri;
oS.nsalias[nsuri] = litNsq;
return litNsq;
}
function parseSimpleType(oS, oschm, o, ssffx)
{
var ns = getQualifier(o.tagName);
var o1 = o.firstChild;
if (o1 == null)
return null;
var sn = getAttrib(o, "name");
if (sn == null)
return null;
sn = getBaseName(sn);
var ot = new Object();
ot.name = sn;
switch(o1.baseName)
{
case 'restriction' :
var base = getAttrib(o1, "base");
if (base == null)
{
ot.ns = "xsd";
ot.type = "string";
}
else
{
ot.type = getBaseName(base);
ot.ns = getQualifier(base);
}
oschm.sTypes[sn] = ot;
break;
case 'list' :
case 'union' :
ot.type = "string";
ot.ns = "xsd";
oschm.sTypes[sn] = ot;
break;

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -