Hi,
I get importer error:
<?xml version='1.0'?>Invalid document structure
The main XML document cannot be empty
DXL importer failed
when i run the script below.
I get no errors on NotesXSLTransformer?!?
lotusscript code:
Dim Sess As NotesSession
Dim Stream As NotesStream
Dim Importer As NotesDXLImporter
Dim ThisDb As NotesDatabase
Dim SelectedDocs As NotesDocumentCollection
Dim OneDoc As NotesDocument
Dim XmlFilePath As String, NoteID As String, RepID As String
On Error Goto ErrorReturn
Set Sess = New NotesSession
Set ThisDb = New NotesDatabase( "", "xxx.nsf" )
Dim session As New NotesSession
Dim InputStream As NotesStream
Dim Transformer As NotesXSLTransformer
Dim Stylesheet As String
Set InputStream = session.CreateStream
InputStream.Open ("c:\\temp\\test.xml")
Stylesheet = "C:\\temp\\ft.xsl"
Dim xslin As NotesStream
Set xslin=session.CreateStream
xslin.Open(StyleSheet)
Set Transformer = session.CreateXSLTransformer (InputStream, xslin)
Set Importer = session.CreateDXLImporter (Transformer,ThisDb)
Transformer.process
done:
InputStream.Close
NormalReturn:
Exit Sub
ErrorReturn:
Msgbox Importer.log
Msgbox "Problem. Error message is: " & Error$, MB_ICONSTOP, "Error"
Resume ErrorReturn2
ErrorReturn2:
Exit Sub
XML-file:
<?xml version='1.0' encoding='utf-8'?><database xmlns=‘http://www.lotus.com/dxl’ version=‘7.0’ replicaid=‘C125710000275212’
path=‘XXX.nsf’ title=‘XXX’ usejavascriptinpages=‘false’
maintainunread=‘false’ defaultlanguage=‘sv’>
<databaseinfo dbid=‘C125710000275212’ odsversion=‘43’ diskspace=‘9699328’
percentused=‘96.3788006756757’ numberofdocuments=‘3’><datetime
20060124T085607,92+01<datetime
20060124T080943,19+01
<noteslaunch whenopened=‘openframeset’ frameset=‘fs_Main’
previewdefault=‘bottomright’/>
20060119T080027,06+01
20060124T080943,27+01
20060119T085458,26+01
20060124T080943,26+01
20060124T080943,26+01
CN=xxx/OU=xxx/O=xxx
20060119T080027,04+01
[Technical]
106
Mail msg. Länkat dokument har fått tidigare arkiveringsdatum. [SendLinkEndDateExpNot, Db: NystQue, Scriptlibrary: Agents]
Subject
OBS! Ett dokument www.lotus.com som du har länkat till kommer att arkiveras om
Body1
Ett dokument som du har länkat till har ett tidigare arkiveringsdatum än ditt, och kommer att tas bort om
Body2
dag(ar).Du måste därför ta www.lotus.com bort länken från din sida eller lägga in ett tidigare arkiveringsdatum i ditt dokument.
body3
Klicka på länken för att öppna länkdokumentet.
Subject2
dag(ar).
fMessage
xsl-file:
<?xml version="1.0"?><xsl:stylesheet xmlns:xsl=“XSLT Namespace” version=“1.0”>
<xsl:template name=“replace-string”>
<xsl:param name="text"/>
<xsl:param name="from"/>
<xsl:param name="to"/>
<xsl:choose>
<xsl:when test="contains($text, $from)">
<xsl:variable name="before" select="substring-before($text, $from)"/>
<xsl:variable name="after" select="substring-after($text, $from)"/>
<xsl:variable name="prefix" select="concat($before, $to)"/>
<xsl:value-of select="$before"/>
<xsl:value-of select="$to"/>
<xsl:call-template name="replace-string">
<xsl:with-param name="text" select="$after"/>
<xsl:with-param name="from" select="$from"/>
<xsl:with-param name="to" select="$to"/>
</xsl:call-template>
</xsl:when>
<xsl:otherwise>
<xsl:value-of select="$text"/>
</xsl:otherwise>
</xsl:choose>
</xsl:template>
<xsl:template match=“/”>
<xsl:call-template name=“replace-string”>
<xsl:with-param name="text"
select="'www.lotus.com'"/>
<xsl:with-param name="from" select="'ww.lo'"/>
<xsl:with-param name="to" select="'ww.ft.lo'"/>
</xsl:call-template>
</xsl:template>
</xsl:stylesheet>
Any help would be nice, thanks in advance
/Janken