Herramientas de canalización

Las herramientas de canalización proporcionadas con el Kit de desarrollo de software (SDK) de Microsoft BizTalk Server permiten comprobar que una canalización funciona correctamente sin tener que configurar el entorno de BizTalk Server, como los puertos de envío y recepción. Además, puede usar las herramientas de canalización para:

  • Depurar los componentes de canalización de terceros fuera del entorno de servidor.

  • Diagnosticar mensajes de error del motor de análisis.

  • Experimentar con distintos esquemas sin la carga de compilación, implementación, anulación de la implementación y nueva compilación.

  • Explorar archivo sin formato y comportamiento de ensamblador y desensamblador XML.

  • Ver salida de desensamblador y descubrir las propiedades de contexto de mensaje que se promocionan, así como sus valores.

  • Ejecutar canalizaciones de envío y recepción sin componentes de desensamblador y de ensamblador (por ejemplo, puede ver la salida del decodificador de S/MIME).

  • Realizar mediciones de rendimiento precisas solo del componente (en lugar del subsistema de mensajería completo).

Ubicación en SDK

<Ruta de> instalación\SDK\Utilities\PipelineTools

Use herramientas de canalización para ejecutar, depurar y generar perfiles de canalizaciones, además de componentes de canalización (es decir, archivo sin formato y componentes de ensamblador y desensamblador XML).

Inventario de archivos

En la siguiente tabla se enumeran los archivos de herramientas de canalización y se describe el propósito de cada uno.

Archivos Descripción
DSDump.exe Permite volcar la estructura de esquemas de documento, que es una representación ligera en memoria de uno o varios esquemas XSD, con o sin anotaciones de archivo sin formato. Esta herramienta puede resultar útil al obtener errores del motor de análisis, por ejemplo, $Root$0$3$2 y cuando sea necesario descodificarlos. Los números detrás de $ quieren decir índices o registros de base 0 cuando aparecen en el esquema de documentos.
FFAsm.exe Ejecuta el componente de ensamblador de archivos sin formato, invocándolo directamente mediante la emulación de un componente de canalización que permite ver cómo serializa o ensambla documentos de XML de usuarios en un documento de archivo sin formato.
FFDasm.exe Ejecuta el componente de desensamblador de archivo sin formato, invocándolo directamente mediante la emulación de un componente de canalización de recepción que permite ver cómo analiza o desensambla un documento de archivo sin formato de usuario en uno o varios documentos XML.
Pipeline.exe Ejecuta una canalización de envío o de recepción; acepta uno o varios documentos de entrada y sus partes, esquemas XSD e información relacionada y produce un documento de salida una vez que se ejecute la canalización. Pipeline.exe no tiene acceso a BizTalk Server bases de datos, por lo que es posible que no se admitan canalizaciones que contengan componentes de ensamblador y desensamblador de BizTalk Framework que accedan a BizTalk Server bases de datos durante la ejecución.
XMLAsm.exe Ejecuta el componente de ensamblador XML, invocándolo directamente mediante la emulación de una canalización de envío que permite ver cómo serializa, ensambla o protegen con doble cifrado documentos XML de usuario en un documento XML de salida.
XMLDasm.exe Ejecuta el componente de desensamblador XML, invocándolo directamente mediante la emulación de una canalización de recepción que permite ver cómo analizar, desensamblar o desproteger un documento XML de usuario con doble cifrado en uno o varios documentos XML.

Uso

En las secciones que se muestran a continuación se proporciona una descripción más detallada de cada uno de los archivos.

DSDump.exe

DSDump.exe permite volcar la estructura de esquemas de documento, que es una representación ligera en memoria de uno o varios esquemas XSD, con o sin anotaciones de archivo sin formato.

DSDump.exe (herramienta de volcado de esquemas de documentos) es compatible con el siguiente parámetro de línea de comandos:

DSDump.exe schemaFileName  

En caso de que se realice de forma correcta, DSDump imprime el esquema de documentos en la consola.

FFAsm.exe

FFAsm.exe (ensamblador de archivo sin formato) es compatible con los siguientes parámetros de línea de comandos:

usage: ffasm document... [-dm documentMask...]-bs bodySchema [ -hs headerSchema ] [ -ts trailerSchema ] [ -c ] [ -d ] [ -sb ] [ -m filenamemask ] [ -en encoding ] [ -v ]  

where:  
  document           XML document(s)  
  documentMask       XML document(s) file mask, e.g., c:\\documents\\*.xml  
  bodySchema         Flat File body schema  
  headerSchema       Flat File header schema  
  trailerSchema      Flat File trailer schema  
  -c                 Display assembled FF message on the console  
  -d                 Demote properties  
  -sb                Set body schema(s) as design-time property  
  -m                 Output file name mask (default is %MessageID%)  
  encoding           Output message encoding name (e.g. windows-1252) or   
                         code page (e.g. 936)  
  -v                 Verbose mode  

file name macros:  
  %MessageID%        FF message identifier (Guid)  
  %MessagePartID%    FF message part identifier (Guid)  

Por ejemplo, si desea ensamblar tres documentos XML de entrada en un único documento de archivo sin formato con una degradación de encabezado y de propiedad, use el siguiente comando:

FFAsm.exe file_in1.xml file_in2.xml file_in3.xml –hs myHeaderSchema.xsd –bs myBodySchema.xsd -d  

FFDasm.exe

FFDasm.exe (desensamblador de archivos sin formato) es compatible con los siguientes parámetros de línea de comandos:

usage: ffdasm document -bs bodySchema [ -hs headerSchema ] [ -ts trailerSchema ] [ -s ] [ -c ] [ -p ] [ -m filenamemask ] [ -en encoding ] [ -v ]  

where:  
  document           Flat File document  
  bodySchema         Flat File body schema  
  headerSchema       Flat File header schema  
  trailerSchema      Flat File trailer schema  
  -s                 Validate document structure  
  -c                 Display disassembled XML message on the console  
  -p                 Display promoted properties on the console  
  encoding           Input message body part encoding name (e.g. windows-1252) or code page (e.g., 396)  
  -m                 Output file name mask (default is %MessageID%)  
  -v                 Verbous mode  

file name macros:  
  %MessageID%        XML message identifier (Guid)  
  %MessagePartID%    XML message part identifier (Guid)  

Por ejemplo, si desea desensamblar un documento de archivo sin formato que tiene un encabezado, cuerpo y finalizador, y se muestran los resultados en la consola, use el siguiente comando:

FFDasm.exe file_in.txt –hs myHeaderSchema.xsd –bs myBodySchema.xsd –ts myTrailerSchema.xsd –c  

Pipeline.exe

Pipeline.exe (herramienta de canalización) es compatible con los siguientes parámetros de línea de comandos:

usage: pipeline ( pipeline[.btp] | -pt pipelineTypeName [ -an assemblyName ] ) -d document... [ -part part... ] [ -s schema[.xsd][:namespace.type]... ] [ -proj project[.btproj] ] [ -p ] [ -c ] [ -t ] [ -m filenamemask ] [ -pm partfilenamemask ] [ -en encoding ] [ -v ]  

where:  
  pipeline                Pipeline file name  
  pipelineTypeName     Compiled pipeline assembly qualified type name (e.g.   
"MyPipelines.ReceivePipeline, MyPipelines,   
Version=1.0.0.0, Culture=neutral,   
PublicKeyToken=e03965cb5971ad66" or full name (e.g.   
"MyPipelines.ReceivePipeline") if assembly name is   
specified  
  assemblyName         Compiled pipeline assembly file name (e.g.   
MyPipelines.dll) or name (e.g. "MyPipelines,   
Version=1.0.0.0, Culture=neutral,   
PublicKeyToken=e03965cb5971ad66")  
  document             Input document(s)  
  part                 Input document's part  
  schema               Schema file name  
  namespace            Schema namespace (as in BizTalk project system)  
  type                 Schema type (as in BizTalk project system)  
  project              BizTalk project file  
  -p                   Display promoted context properties for receive and   
send pipelines, and promote context properties for   
send pipelines  
  -c                      Display output document on the console  
  -t                      Display elapsed time of components execution  
  filenamemask         Output message file name mask (default is   
Message_%MessageID%.out)  
  partfilenamemask     Output part file name mask (default is   
Part_%MessagePartID%.out)  
  encoding             Output message encoding name (e.g. windows-1252)   
or code page (e.g. 936)  
  -v                   Verbous mode  

note:  
You can specify namespace and type for schemas either using namespace.type notation in schema file reference or by using BizTalk project file.  

file name macros:  
  %MessageID%           Message identifier (Guid)  
  %MessagePartID%       Message part identifier (Guid)  
  %MessageNumber%       Message number  

Por ejemplo, si desea ejecutar una canalización de recepción desde el archivo ReceivePipeline.btp (que tiene componentes de desensamblador XML y de validador de XML) mediante mySchema.xsd y mostrar los resultados en la consola, use el siguiente comando:

Pipeline.exe ReceivePipeline.btp –d file_in.xml –s MySchema.xsd:MyProject.MySchema -c  

O bien

Pipeline.exe ReceivePipeline.btp –d file_in.xml –s MySchema.xsd –proj MyProject.btproj -c  

En el primer ejemplo, se incluye un nombre de tipo completo (MyProject.MySchema) para el esquema como argumento de línea de comandos. En el segundo ejemplo, el esquema se obtiene del archivo de proyecto de BizTalk especificado.

También puede ejecutar canalizaciones desde los archivos de proyecto de BizTalk Server compilados, como en el ejemplo siguiente (su nombre de tipo calificado por ensamblado hace referencia a la canalización):

Pipeline.exe -pt "TestBtsProject.ReceivePipeline, TestBtsProject, Version=1.0.0.0, Culture=neutral, PublicKeyToken=e03965cb5971ad66" -d in.xml -s PO.xsd -proj TestBtsProject.btproj –c  

En el siguiente ejemplo, se hace referencia por separado a una canalización mediante el nombre de tipo y el nombre de archivo de ensamblado:

Pipeline.exe -pt TestBtsProject.ReceivePipeline –an TestBtsProject.dll -d in.xml -s PO.xsd -proj TestBtsProject.btproj –c   

En el siguiente ejemplo se muestra una canalización a la que se hace referencia mediante el nombre de ensamblado:

Pipeline.exe -pt TestBtsProject.ReceivePipeline –an "TestBtsProject, Version=1.0.0.0, Culture=neutral, PublicKeyToken=e03965cb5971ad66" -d in.xml -s PO.xsd -proj TestBtsProject.btproj –c  

Pipeline.exe se ejecuta con cualquiera de las credenciales usadas para iniciarlo. No usa la cuenta en la que se ejecutan normalmente BizTalk Server instancias de host, por lo que es posible que no pueda ejecutar canalizaciones que contengan componentes que requieran acceso a la base de datos. Asegúrese de que ejecuta Pipeline.exe en una cuenta que dispone de todos los privilegios necesarios.

Solo debe usar Pipeline.exe para comprobar las canalizaciones personalizadas sin componentes personalizados de terceros. Si usa pipeline.exe para comprobar una canalización personalizada con componentes personalizados de terceros, Pipeline.exe producirá el resultado deseado. Sin embargo, si implementa la misma canalización personalizada con componentes personalizados de terceros, use la canalización en un puerto de envío o de recepción y, a continuación, usa Pipeline.exe para enviar un mensaje a la canalización, la canalización producirá errores y el servidor BizTalk Server devolverá un error.

XMLAsm.exe

XMLAsm.exe (herramienta ensamblador XML) admite los siguientes parámetros de línea de comandos:

usage: xmlasm document...[-dm documentmask...] -ds documentSchema... [ -es envelopeSchema... ] [ -c ] [ -d ] [ -sd ] [ -m filenamemask ] [ -v ]  

where:  
  document           XML document(s)  
  documentMask       XML document(s) file mask, e.g., c:\\documents\\*.xml  
  documentSchema     XML document schema(s)  
  envelopeSchema     XML envelope schema(s)  
  -c                 Display assembled XML message on the console  
  -d                 Demote properties  
  -sd                Set document schema(s) as design-time property  
  -d                 Demote properties  
  -m                 Output file name mask (default is %MessageID%)  
  -v                 Verbous mode  

file name macros:  
  %MessageID%        XML message identifier (Guid)  
  %MessagePartID%    XML message part identifier (Guid)  

Por ejemplo, si desea ensamblar dos documentos XML de entrada en un único documento XML con un sobre y mostrar los resultados en la consola, use el siguiente comando:

FFAsm.exe file_in1.xml file_in2.xml–es myEnvelopeSchema.xsd –ds myBodySchema.xsd –c  

XMLDasm.exe

XMLDasm.exe es compatible con los siguientes parámetros de línea de comandos:

usage: xmldasm document -ds documentSchema... [ -es envelopeSchema... ] [ -s ] [ -c ] [ -p ] [ -sd ] [ -se ] [ -m filenamemask ] [ -en encoding ] [ -v ]  

where:  
  document           XML document  
  documentSchema     XML document schema(s)  
  envelopeSchema     XML envelope schema(s)  
  -s                 Validate document structure  
  -c                 Display disassembled XML message on the console  
  -p                 Display promoted properties on the console  
  -sd                Set document schema(s) as design-time property  
  -se                Set envelope schema(s) as design-time property  
  -m                 Output file name mask (default is %MessageID%)  
  encoding           Input message body part encoding name (e.g., windows-1252) or code page (e.g., 936)  
  -v                 Verbous mode  

file name macros:  
  %MessageID%        XML message identifier (Guid)  
  %MessagePartID%    XML message part identifier (Guid)  
  %MessageNumber%    XML message number  

Por ejemplo, si desea desensamblar un documento XML con dos sobres anidados y mostrar los resultados en la consola, use el siguiente comando:

XmlDasm.exe file_in.txt –ds myDocumentSchema.xsd –es myEnvelopeSchema1.xsd –es myEnvelopeSchema2.xsd –c  

Consulte también

Utilidades del SDK