[XSL-LIST Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message] Saxon Process is not releasing my output file
Hi List,
Hope this is an "in Scope" question. I'm using Saxon to run a process in .net. The basic scenario is my xslt takes an XML called new, compares it to an XML document called old. Then the "new" XML document is copied over "old". The problem is when the copy happens I get the dreaded "The process cannot access the file 'L:\file_path\old.xml' because it is being used by another process". The call: Dim x As New Saxon x.Transform(strDir & "my.xsl", strDir & "new.xml", strRepository & "difference.xml") x = Nothing ' Error occurs here File.Copy(strDir & "Stat.xml", strDir & "stat_old.xml", True)
Public Sub Transform(ByVal xslDoc As String, ByVal xmlDoc As String, _ ByVal output As String)
Try u = New Uri(xslDoc) transformer = _ processor.NewXsltCompiler().Compile(u).Load() Catch ex As Exception u = Nothing MsgBox("Exception" & ex.ToString) MsgBox(ex.StackTrace) Throw New Exception(ex.Message) End Try 'Set the root node of the source document to be the initial context node transformer.InitialContextNode = input 'Create the serializer Dim serializer As New Serializer Dim fi As FileStream Try fi = New FileStream(output, FileMode.Create, FileAccess.Write) serializer.SetOutputStream(fi) 'Transform the source XML transformer.Run(serializer) 'fi.Flush() 'fi.Dispose() fi.Close() Catch ex As Exception Throw New Exception(ex.Message) Finally u = Nothing serializer = Nothing transformer = Nothing processor = Nothing input = Nothing fi = Nothing End Try End Sub Thanks for any help.. Spencer
|
PURCHASE STYLUS STUDIO ONLINE TODAY!Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced! Download The World's Best XML IDE!Accelerate XML development with our award-winning XML IDE - Download a free trial today! Subscribe in XML format
|