执行下面函数的时候报错,红色标记的行是报错行, 报错信息: DOM parser operation failed err = 4602
Function DomToDoc(idoc As NotesDocument,info As String)As Boolean
On Error GoTo errhandle
Dim inputStream As NotesStream
Dim domParser As NotesDOMParser
Dim docNode As NotesDOMDocumentNode
Dim docList As NotesDOMNodeList
Dim eNode,eNodes As Variant
Dim item As NotesItem
Dim itemname As String
Dim i As Integer
DomToDoc=False
Set inputStream = session.CreateStream
If Len(info)<1 Then Exit Function
inputStream.WriteText (info)
Set domParser=session.CreateDOMParser(inputStream)
domParser.Process // 在这个地方报错,info的内容见下面
Set docNode = domParser.Document
Set docList = docNode.GetElementsByTagName ("item")
For i = 1 To docList.NumberOfEntries
Set eNode = docList.GetItem(i)
itemname=eNode.GetAttribute("name")
If eNode.HasChildNodes Then Set eNode=eNode.FirstChild
If eNode.HasChildNodes Then
Set eNode=eNode.FirstChild
Do While Not(eNode.IsNull)
If eNode.HasChildNodes Then
Set eNodes=eNode.FirstChild
If item Is Nothing Then
Print "itemname = " & eNodes.NodeValue
Set item= idoc.ReplaceItemValue(itemname,eNodes.NodeValue)
Else
Call item.AppendToTextList(eNodes.NodeValue)
End If
Else
If item Is Nothing Then
Set item= idoc.ReplaceItemValue(itemname,eNode.NodeValue)
Else
Call item.AppendToTextList(eNode.NodeValue)
End If
End If
Set eNode = eNode.NextSibling
Loop
Else
Set item= idoc.ReplaceItemValue(itemname,eNode.NodeValue)
End If
Set item=Nothing
Next
Call idoc.Save(1,0)
DomToDoc=True
Exit function
errhandle:
Print "erl=" & CStr(erl) & "error = " & CStr(error) & "err = " &cstr(err)
Exit Function
End Function
参数 info 的内容:
replicaid='48257972000804F6' form='fm_DSC_GetByDocId'>
20140117T164058,14+08
20140117T164101,36+08
20140117T164101,36+08
- 3E7F119C5817A5C248257B5A00245D93
收起