string ls_tjbh,ls_path,ls_RequestInfo
int i,li_jd,li_cnt_select,li_rowcount
long ll_cnt
tns__uploadxml uploadxml
tns__upload upload
Long ll_ret , ll_row,ll_currentrow
String str_proxy_name = 'zywsuploadserviceimplport',ls_success
String err,wsdl
ls_success = '2'
wsdl = 'http://116.236.221.30/zywsservice/Upload?wsdl'
ls_success = ''
soapconnection lsc_conn
zywsUploadServiceImplPort lproxy_obj
try
lsc_conn = Create soapconnection
catch (runtimeerror e11)
err = '創建soapconnection 出現錯誤,錯誤訊息是: ' + e11.getMessage()
MessageBox('',err)
End try
try
lsc_conn.SetOptions("SoapLog=~"soaplog.txt~"")
catch (runtimeerror e12)
err = 'soapconnection 呼叫函式SetOptions 出現錯誤,錯誤訊息是: ' + e12.getMessage()
MessageBox('',err)
End try
debugbreak()
try
ll_ret = lsc_conn.CreateInstance(lproxy_obj,str_proxy_name,wsdl)
catch (runtimeerror e13)
err = 'soapconnection 創建實體(函式createInstance)失敗,錯誤訊息是: ' + e13.getMessage()
MessageBox('',err)
End try
try
upload.loginname ='zwtj01033'
upload.password ='8888'
upload.content = wf_get_file_blob('C:\Documents and Settings\Administrator\桌面\bb\data.zip') //把檔案轉換成資料流
uploadxml.upload = upload
lproxy_obj.uploadxml(uploadxml)
catch (soapexception e14)
MessageBox('呼叫方法','呼叫web service 失敗:' + e14.getMessage())
//運行到這里出現---------------------------
//呼叫web service 失敗:Unknown SOAP response tag: http://schemas.xmlsoap.org/wsdl/#definitions
catch (pbxruntimeerror e15)
MessageBox('呼叫方法','呼叫 函式出現 運行錯誤 錯誤!')
catch (runtimeerror e16)
MessageBox('呼叫方法','呼叫 函式出現 不可知 錯誤!'+ e16.getMessage())
End try
uj5u.com熱心網友回復:
只要結構體內是基本的資料型別 ,就肯定沒問題uj5u.com熱心網友回復:
把 wsdl 改成:wsdl = 'http://116.236.221.30/zywsservice/Upload' 試一下。uj5u.com熱心網友回復:
把 wsdl 改成:wsdl = 'http://116.236.221.30/zywsservice/Upload'出現Error while parsing SOAP XML payload: not well-formed (invalid token) 這個提示
uj5u.com熱心網友回復:
幫忙測驗一下wf_get_file_blob('C:\Documents and Settings\Administrator\桌面\bb\data.zip')函式內容
boolean lb_oldcommit
long i,ll_rowcount,j
string ls_path,ls_filename,ls_fullpath
integer li_FileNum,ll_loops
long ll_flen,bytes_read,new_pos
blob b,tot_b
tot_b=blob('')
b=blob('')
ls_fullpath=as_path
ll_flen = FileLength(ls_fullpath)
li_FileNum = FileOpen(ls_fullpath,StreamMode!,Read!,LockRead!)
IF ll_flen > 32765 THEN
IF Mod(ll_flen, 32765) = 0 THEN
ll_loops = ll_flen/32765
ELSE
ll_loops = (ll_flen/32765) + 1
END IF
ELSE
ll_loops = 1
END IF
FOR j = 1 to ll_loops
bytes_read = FileRead(li_FileNum, b)
tot_b = tot_b + b
NEXT
FileClose(li_FileNum)
return tot_b
data.zip 檔案data.zip內容
<?xml version="1.0" encoding="gb2312"?>
<exams institutionid="286549">
<exam>
<customerid>101970161</customerid>
<name>舒慶珍</name>
<sex>1</sex>
<cardnumber>422822198603075043</cardnumber>
<maritalstatus></maritalstatus>
<documentID>10197</documentID>
<unitname>上海龜屋電氣有限公司</unitname>
<unitphone>57741533</unitphone>
<areacode>310117</areacode>
<jobnumber></jobnumber>
<workage>0年1月</workage>
<idnumber>101970161</idnumber>
<harmfulage>0年1月</harmfulage>
<testdate>2010-01-20</testdate>
<createdate>2012-07-10</createdate>
<isdelete>0</isdelete>
<birthday>1986-03-07</birthday>
<harmfactors>
<harmfactor>
<parentcode>2</parentcode>
<childcode></childcode>
</harmfactor>
</harmfactors>
<zyss>
<zys>
<workbegindate></workbegindate>
<unitname></unitname>
<workshop></workshop>
<worktype></worktype>
<harmfulelement></harmfulelement>
<prevent></prevent>
</zys>
</zyss>
<jws>無</jws>
<sickname></sickname>
<checkdate></checkdate>
<checkunit></checkunit>
<isfullcured></isfullcured>
<yjcc>15</yjcc>
<tjnl></tjnl>
<yjjq>3</yjjq>
<yjzq>28</yjzq>
<yjms></yjms>
<childs>1</childs>
<lcs>0</lcs>
<zcs></zcs>
<scs></scs>
<ycts></ycts>
<smoketype>1</smoketype>
<smokevolumn></smokevolumn>
<smokeyear></smokeyear>
<drinktype>1</drinktype>
<drinkvolumn></drinkvolumn>
<drinkyear></drinkyear>
<others>無</others>
<symptoms>
</symptoms>
<othersymptom></othersymptom>
<othercheck></othercheck>
<items>
<item type='2' itemid='01'>
<checkresult>5.29</checkresult>
<checkdoctor>周宏偉</checkdoctor>
<comments></comments>
<itemname>白細胞(WBC)</itemname>
</item>
<item type='2' itemid='03'>
<checkresult>43.0</checkresult>
<checkdoctor>周宏偉</checkdoctor>
<comments></comments>
<itemname>淋巴細胞百分率(LY%)</itemname>
</item>
<item type='2' itemid='02'>
<checkresult>51.30</checkresult>
<checkdoctor>周宏偉</checkdoctor>
<comments></comments>
<itemname>中性粒細胞百分率(GR%)</itemname>
</item>
<item type='2' itemid='06'>
<checkresult>130</checkresult>
<checkdoctor>周宏偉</checkdoctor>
<comments></comments>
<itemname>血紅蛋白濃度(HGB)</itemname>
</item>
<item type='2' itemid='07'>
<checkresult>168</checkresult>
<checkdoctor>周宏偉</checkdoctor>
<comments></comments>
<itemname>血小板計數(PLT)</itemname>
</item>
<item type='2' itemid='05'>
<checkresult>4.13</checkresult>
<checkdoctor>周宏偉</checkdoctor>
<comments></comments>
<itemname>紅細胞</itemname>
</item>
<item type='2' itemid='04'>
<checkresult>4.8</checkresult>
<checkdoctor>周宏偉</checkdoctor>
<comments></comments>
<itemname>單核細胞百分率(MO%)</itemname>
</item>
<item type='2' itemid='10'>
<checkresult></checkresult>
<checkdoctor>張悅</checkdoctor>
<comments></comments>
<itemname>紅細胞(鏡檢)</itemname>
</item>
<item type='2' itemid='08'>
<checkresult>陰性</checkresult>
<checkdoctor>張悅</checkdoctor>
<comments></comments>
<itemname>蛋白PRO</itemname>
</item>
<item type='2' itemid='11'>
<checkresult>陰性</checkresult>
<checkdoctor>張悅</checkdoctor>
<comments></comments>
<itemname>尿白細胞</itemname>
</item>
<item type='2' itemid='12'>
<checkresult></checkresult>
<checkdoctor>張悅</checkdoctor>
<comments></comments>
<itemname>管型(鏡檢)</itemname>
</item>
</items>
<examresult>
<examtype>1</examtype>
<conclusions>
<conclusion code='1'>
<description1></description1>
<description2></description2>
</conclusion>
</conclusions>
</examresult>
</exam>
</exams>
uj5u.com熱心網友回復:
結構體內 還有結構體的型別,不知道uploadxml.upload = upload 這樣賦值是否正確uj5u.com熱心網友回復:
結構體內含結構體的情況下pb的webservice是支持的,靜下心找找看是否其它情況uj5u.com熱心網友回復:
在IE 里看了一下 http://116.236.221.30/zywsservice/Upload?wsdl- <xs:complexType name="upload">
- <xs:sequence>
<xs:element minOccurs="0" name="content" type="xs:base64Binary" />
<xs:element minOccurs="0" name="loginName" type="xs:string" />
<xs:element minOccurs="0" name="password" type="xs:string" />
</xs:sequence>
</xs:complexType>
其中的 name="content" type="xs:base64Binary" 是不是要把讀得的檔案資料轉成 base64 編碼。
是不是還有一個編碼字串什么的。
uj5u.com熱心網友回復:
我就把這個檔案轉換成wf_get_file_blob('C:\Documents and Settings\Administrator\桌面\bb\data.zip')函式內容
不知道這樣轉換是否 base64 編碼
還有我寫的那個傳遞的結構體是否正確
uj5u.com熱心網友回復:
不是,需要將讀到的二進制轉為Base64編碼,網上有現成的物件uj5u.com熱心網友回復:
我也碰到復合資料型別里面的xs:base64Binary, Pb9.03的, 有沒有誰解決了類似的問題啊!轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/62183.html
標籤:Web 應用
上一篇:pb11.5web開發資料。
下一篇:PB GUI
