Valide um documento DDX usando a API do Serviço de Assembler (serviço da Web):
Inclua arquivos de projeto.
Crie um projeto do Microsoft .NET que use MTOM. Certifique-se de usar a seguinte definição de WSDL: http://localhost:8080/soap/services/AssemblerService?WSDL&lc_version=9.0.1
.
Substitua localhost pelo endereço IP do servidor de formulários.
Crie um cliente Assembler do PDF.
Crie um objeto AssemblerServiceClient
usando seu construtor padrão.
Crie um objeto AssemblerServiceClient.Endpoint.Address
usando o construtor System.ServiceModel.EndpointAddress
. Passe um valor de string que especifica o WSDL para o serviço do AEM Forms (por exemplo, http://localhost:8080/soap/services/AssemblerService?blob=mtom
). Você não precisa usar o atributo lc_version
. Esse atributo é usado ao criar uma referência de serviço.
Crie um objeto System.ServiceModel.BasicHttpBinding
obtendo o valor do campo AssemblerServiceClient.Endpoint.Binding
. Converta o valor de retorno em BasicHttpBinding
.
Defina o campo System.ServiceModel.BasicHttpBinding
MessageEncoding
do objeto para WSMessageEncoding.Mtom
. Esse valor garante que o MTOM seja usado.
Ative a autenticação HTTP básica executando as seguintes tarefas:
AssemblerServiceClient.ClientCredentials.UserName.UserName
.AssemblerServiceClient.ClientCredentials.UserName.Password
.HttpClientCredentialType.Basic
ao campo BasicHttpBindingSecurity.Transport.ClientCredentialType
.BasicHttpSecurityMode.TransportCredentialOnly
ao campo BasicHttpBindingSecurity.Security.Mode
.Faça referência a um documento DDX existente.
BLOB
usando seu construtor. O objeto BLOB
é usado para armazenar o documento DDX.System.IO.FileStream
chamando seu construtor e passando um valor de string que representa o local do arquivo do documento DX e o modo para abrir o arquivo.System.IO.FileStream
. Você pode determinar o tamanho da matriz de bytes obtendo a propriedade System.IO.FileStream
do objeto Length
.System.IO.FileStream
do objeto Read
e passando a matriz de bytes, a posição inicial e o comprimento do fluxo a ser lido.BLOB
atribuindo sua propriedade MTOM
ao conteúdo da matriz de bytes.Defina opções de tempo de execução para validar o documento DDX.
AssemblerOptionSpec
que armazene opções de tempo de execução usando seu construtor .AssemblerOptionSpec
do objeto validateOnly
.AssemblerOptionSpec
membro de dados logLevel
do objeto. método Ao validar um documento DDX, você deseja que mais informações sejam gravadas no arquivo de log que ajudará no processo de validação. Como resultado, você pode especificar o valor FINE
ou FINER
. Para obter informações sobre as opções de tempo de execução que podem ser definidas, consulte a referência da classe AssemblerOptionSpec
em AEM Forms API Reference.Execute a validação.
Chame o método AssemblerServiceClient
do objeto invokeDDX
e passe os seguintes valores:
BLOB
que representa o documento DDX.null
para o objeto Map
que geralmente armazena documentos PDF.AssemblerOptionSpec
que especifica as opções de tempo de execução.O método invokeDDX
retorna um objeto AssemblerResult
que contém informações que especificam se o documento DDX é válido.
Salve os resultados de validação em um arquivo de log.
System.IO.FileStream
chamando seu construtor e passando um valor de string que representa o local do arquivo de log e o modo para abrir o arquivo. Certifique-se de que a extensão do nome de arquivo seja .xml.BLOB
que armazena informações de log obtendo o valor do AssemblerResult
membro de dados jobLog
do objeto.BLOB
. Preencha a matriz de bytes obtendo o valor do campo BLOB
do objeto MTOM
.System.IO.BinaryWriter
chamando seu construtor e passando o objeto System.IO.FileStream
.System.IO.BinaryWriter
do objeto Write
e transmitindo a matriz de bytes.Se o documento DDX for inválido, um OperationException
será lançado. Na declaração catch , é possível obter o valor do membro OperationException
do objeto jobLog
.
Consulte também:
Chamar o AEM Forms usando MTOM