Valide um documento DDX usando a API de serviço do Assembler (serviço da Web):
Incluir arquivos de projeto.
Crie um projeto do Microsoft .NET que use MTOM. Certifique-se de usar a seguinte definição 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 do Montador de 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 AEM Forms (por exemplo, http://localhost:8080/soap/services/AssemblerService?blob=mtom
). Não é necessário 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 como 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 transmitindo 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 transmitindo a matriz de bytes, a posição inicial e o comprimento do fluxo para leitura.BLOB
atribuindo sua propriedade MTOM
ao conteúdo da matriz de bytes.Defina as 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
do objeto logLevel
. ao validar um documento DDX, você deseja obter mais informações gravadas no arquivo de log que ajudarão 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 de classe AssemblerOptionSpec
em Referência de API da AEM Forms.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 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 transmitindo um valor de string que representa o local do arquivo de log e o modo para abrir o arquivo. Verifique se a extensão do nome do arquivo é .xml.BLOB
que armazene informações de log obtendo o valor do membro AssemblerResult
de jobLog
dados do objeto.BLOB
. Preencha a matriz de bytes obtendo o valor do campo BLOB
MTOM
do objeto.System.IO.BinaryWriter
chamando seu construtor e transmitindo 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, você pode obter o valor do membro OperationException
do objeto jobLog
.
Consulte também: