Validera ett DX-dokument med webbtjänstens API
- Gäller:
- Experience Manager 6.5
Skapat för:
- Utvecklare
Exempel och exempel i det här dokumentet gäller endast för AEM Forms i JEE-miljö.
Validera ett DX-dokument med Assembler Service API (webbtjänsten):
-
Inkludera projektfiler.
Skapa ett Microsoft .NET-projekt som använder MTOM. Kontrollera att du använder följande WSDL-definition:
http://localhost:8080/soap/services/AssemblerService?WSDL&lc_version=9.0.1
.NOTE
Ersätt localhost med IP-adressen för Forms Server. -
Skapa en PDF Assembler-klient.
-
Skapa ett
AssemblerServiceClient
-objekt med hjälp av dess standardkonstruktor. -
Skapa ett
AssemblerServiceClient.Endpoint.Address
-objekt med konstruktornSystem.ServiceModel.EndpointAddress
. Skicka ett strängvärde som anger WSDL till AEM Forms-tjänsten (till exempelhttp://localhost:8080/soap/services/AssemblerService?blob=mtom
). Du behöver inte använda attributetlc_version
. Det här attributet används när du skapar en tjänstreferens. -
Skapa ett
System.ServiceModel.BasicHttpBinding
-objekt genom att hämta värdet för fältetAssemblerServiceClient.Endpoint.Binding
. Skicka returvärdet tillBasicHttpBinding
. -
Ställ in
System.ServiceModel.BasicHttpBinding
-objektetsMessageEncoding
-fält tillWSMessageEncoding.Mtom
. Detta värde garanterar att MTOM används. -
Aktivera grundläggande HTTP-autentisering genom att utföra följande åtgärder:
- Tilldela användarnamnet för AEM formulär till fältet
AssemblerServiceClient.ClientCredentials.UserName.UserName
. - Tilldela motsvarande lösenordsvärde till fältet
AssemblerServiceClient.ClientCredentials.UserName.Password
. - Tilldela konstantvärdet
HttpClientCredentialType.Basic
till fältetBasicHttpBindingSecurity.Transport.ClientCredentialType
. - Tilldela konstantvärdet
BasicHttpSecurityMode.TransportCredentialOnly
till fältetBasicHttpBindingSecurity.Security.Mode
.
- Tilldela användarnamnet för AEM formulär till fältet
-
-
Referera till ett befintligt DDX-dokument.
- Skapa ett
BLOB
-objekt med hjälp av dess konstruktor. ObjektetBLOB
används för att lagra DDX-dokumentet. - Skapa ett
System.IO.FileStream
-objekt genom att anropa dess konstruktor och skicka ett strängvärde som representerar filplatsen för DDX-dokumentet och läget som filen ska öppnas i. - Skapa en bytearray som lagrar innehållet i objektet
System.IO.FileStream
. Du kan bestämma storleken på bytearrayen genom att hämtaSystem.IO.FileStream
-objektetsLength
-egenskap. - Fyll i bytearrayen med strömdata genom att anropa
System.IO.FileStream
-objektetsRead
-metod och skicka bytearrayen, startpositionen och strömlängden som ska läsas. - Fyll objektet
BLOB
genom att tilldela dessMTOM
-egenskap med innehållet i bytearrayen.
- Skapa ett
-
Ange körningsalternativ för att validera DDX-dokumentet.
- Skapa ett
AssemblerOptionSpec
-objekt som lagrar körningsalternativ med hjälp av dess konstruktor. - Ange det körningsalternativ som instruerar Assembler-tjänsten att validera DDX-dokumentet genom att tilldela värdet true till
AssemblerOptionSpec
-objektetsvalidateOnly
-datamedlem. - Ange den mängd information som Assembler-tjänsten skriver till loggfilen genom att tilldela ett strängvärde till
AssemblerOptionSpec
-objektetslogLevel
-datamedlem. -metod När du validerar ett DX-dokument vill du att mer information ska skrivas till loggfilen som ska vara till hjälp vid valideringsprocessen. Du kan därför ange värdetFINE
ellerFINER
. Mer information om de körningsalternativ du kan ange finns i klassreferensenAssemblerOptionSpec
i AEM Forms API Reference.
- Skapa ett
-
Utför valideringen.
Anropa
AssemblerServiceClient
-objektetsinvokeDDX
-metod och skicka följande värden:- Ett
BLOB
-objekt som representerar DDX-dokumentet. - Värdet
null
för detMap
-objekt som vanligtvis lagrar PDF-dokument. - Ett
AssemblerOptionSpec
-objekt som anger körningsalternativ.
Metoden
invokeDDX
returnerar ettAssemblerResult
-objekt som innehåller information som anger om DDX-dokumentet är giltigt. - Ett
-
Spara valideringsresultaten i en loggfil.
- Skapa ett
System.IO.FileStream
-objekt genom att anropa dess konstruktor och skicka ett strängvärde som representerar platsen för loggfilen och läget som filen ska öppnas i. Kontrollera att filnamnstillägget är .xml. - Skapa ett
BLOB
-objekt som lagrar logginformation genom att hämta värdet förAssemblerResult
-objektetsjobLog
-datamedlem. - Skapa en bytearray som lagrar innehållet i objektet
BLOB
. Fyll i bytearrayen genom att hämta värdet förBLOB
-objektetsMTOM
-fält. - Skapa ett
System.IO.BinaryWriter
-objekt genom att anropa dess konstruktor och skickaSystem.IO.FileStream
-objektet. - Skriv bytearrayens innehåll till en PDF-fil genom att anropa
System.IO.BinaryWriter
-objektetsWrite
-metod och skicka bytearrayen.
NOTE
Om DDX-dokumentet är ogiltigt genereras enOperationException
. I catch-satsen kan du hämta värdet förOperationException
-objektetsjobLog
-medlem. - Skapa ett