Ejemplo de COM: VBScript

www.altova.com Imprimir este apartado Página anterior Subir un nivel Página siguiente

Inicio >  APIs de servidor: HTTP REST, COM/.NET, Java > APIs COM y .NET >

Ejemplo de COM: VBScript

Este ejemplo de código VBScript se divide en varias partes:

 

Preparación e inicialización del objeto COM de RaptorXML
Validación de un archivo XML
Transformación XSLT y devolución del resultado en forma de cadena de texto
Procesamiento de un documento XQuery y devolución del resultado en forma de archivo
Preparación de la secuencia de ejecución del script y de su punto de entrada

 

' El objeto COM de RaptorXML

dim objRaptor

 

' Inicializar el objeto COM de RaptorXML

sub Init

 objRaptor = Null

 On Error Resume Next

 ' Intentar cargar el objeto COM de 32 bits. No emitir excepciones si no se encuentra el objeto

 Set objRaptor = WScript.GetObject( "", "RaptorXML.Server" )

 On Error Goto 0

 if ( IsNull( objRaptor ) ) then

         ' Intentar cargar el objeto COM de 64 bits (se emite una excepción si no se encuentra el objeto)

         Set objRaptor = WScript.GetObject( "", "RaptorXML_x64.Server" )

 end if

 ' Configurar el servidor: notificación de errores, nombre y puerto del servidor HTTP (IPv6 localhost en este        ejemplo)

 objRaptor.ErrorLimit = 1

 objRaptor.ReportOptionalWarnings = true

 objRaptor.ServerName = "::1"

 objRaptor.ServerPort = 8087

end sub

 

' Validar un archivo

sub ValidateXML

 ' Obtener una instancia del validador del objeto servidor

 dim objXMLValidator

 Set objXMLValidator = objRaptor.GetXMLValidator()

 

 ' Configurar los datos de entrada

 objXMLValidator.InputFileName = "MiArchivoXML.xml"

 

 ' Validar; en caso de que el archivo no sea válido, notificar el problema devuelto por RaptorXML

 if ( objXMLValidator.IsValid() ) then

         MsgBox( "La cadena de entrada es válida" )

 else

         MsgBox( objXMLValidator.LastErrorMessage )

 end if

end sub

 

' Realizar una transformación; devolver el resultado en forma de cadena de texto

sub RunXSLT

 ' Obtener una instancia del motor XSLT del objeto servidor

 dim objXSLT

 set objXSLT = objRaptor.GetXSLT

 

 ' Configurar los datos de entrada

 objXSLT.InputXMLFileName = "MiArchivoXML.xml"

 objXSLT.XSLFileName = "MiTransformación.xsl"

 

 ' Ejecutar la transformación; si finaliza correctamente, el resultado se devuelve. Si no, el motor devuelve  una lista de errores

 MsgBox( objXSLT.ExecuteAndGetResultAsString() )

end sub

 

' Ejecutar un XQuery; guardar el resultado en un archivo

sub RunXQuery

 ' Obtener una instancia del motor XQuery del objeto servidor

 dim objXQ

 set objXQ = objRaptor.GetXQuery()

 

 ' Configurar los datos de entrada

 objXQ.InputXMLFileName = "MiArchivoXML.xml"

 objXQ.XQueryFileName = "MiXQuery.xq"

 

 ' Configurar la serialización (opcional si quiere perfeccionar el formato del archivo de salida)

 objXQ.OutputEncoding = "UTF8"

 objXQ.OutputIndent = true

 objXQ.OutputMethod = "xml"

 objXQ.OutputOmitXMLDeclaration = false

 

 ' Ejecutar la consulta; el resultado se serializa en la ruta de acceso indicada

 call objXQ.Execute( "MyQueryResult.xml" )

end sub

 

' Realizar todas las funciones de muestra

sub main

 Init

 ValidateXML

 RunXSLT

 RunXQuery

end sub

 

' Punto de entrada del script; ejecutar la función principal

main

 


© 2019 Altova GmbH