DocumentatieAEM 6.5Handboek

Een DDX-document valideren met de webservice-API

Laatst bijgewerkt: 14 juli 2024
  • Van toepassing op:
  • Experience Manager 6.5
  • Onderwerpen:

Gemaakt voor:

  • Ontwikkelaar

de Steekproeven en de voorbeelden in dit document zijn slechts voor AEM Forms op milieu JEE.

Valideer een DDX-document met behulp van de API (webservice) voor vergaderingsservice:

  1. Inclusief projectbestanden.

    Creeer een Microsoft .NET project dat MTOM gebruikt. Gebruik de volgende WSDL-definitie: http://localhost:8080/soap/services/AssemblerService?WSDL&lc_version=9.0.1 .

    OPMERKING
    Vervang localhost door het IP-adres van de Forms Server.
  2. Maak een PDF Assembler-client.

    • Maak een AssemblerServiceClient -object met de standaardconstructor.

    • Maak een AssemblerServiceClient.Endpoint.Address -object met de System.ServiceModel.EndpointAddress -constructor. Geef een tekenreekswaarde die de WSDL opgeeft door aan de AEM Forms-service (bijvoorbeeld http://localhost:8080/soap/services/AssemblerService?blob=mtom ). U hoeft het attribuut lc_version niet te gebruiken. Dit kenmerk wordt gebruikt wanneer u een serviceverwijzing maakt.

    • Maak een System.ServiceModel.BasicHttpBinding -object door de waarde van het AssemblerServiceClient.Endpoint.Binding -veld op te halen. De geretourneerde waarde wordt gecast naar BasicHttpBinding .

    • Stel het veld MessageEncoding van het System.ServiceModel.BasicHttpBinding -object in op WSMessageEncoding.Mtom . Deze waarde zorgt ervoor dat MTOM wordt gebruikt.

    • Laat basisauthentificatie van HTTP door de volgende taken uit te voeren toe:

      • Wijs de gebruikersnaam van het AEM aan het veld AssemblerServiceClient.ClientCredentials.UserName.UserName toe.
      • Wijs de bijbehorende wachtwoordwaarde toe aan het veld AssemblerServiceClient.ClientCredentials.UserName.Password .
      • Wijs de constante waarde HttpClientCredentialType.Basic toe aan het veld BasicHttpBindingSecurity.Transport.ClientCredentialType .
      • Wijs de constante waarde BasicHttpSecurityMode.TransportCredentialOnly toe aan het veld BasicHttpBindingSecurity.Security.Mode .
  3. Verwijs naar een bestaand DDX-document.

    • Maak een BLOB -object met behulp van de constructor. Het BLOB -object wordt gebruikt om het DDX-document op te slaan.
    • Maak een System.IO.FileStream -object door de constructor ervan aan te roepen en een tekenreekswaarde door te geven die de bestandslocatie van het DDX-document en de modus waarin het bestand moet worden geopend, vertegenwoordigt.
    • Maak een bytearray waarin de inhoud van het object System.IO.FileStream wordt opgeslagen. U kunt de grootte van de bytearray bepalen door de eigenschap Length van het object System.IO.FileStream op te halen.
    • Vul de bytearray met streamgegevens door de methode Read van het object System.IO.FileStream aan te roepen en de bytearray, de startpositie en de lengte van de stream door te geven om te lezen.
    • Vul het object BLOB door de eigenschap MTOM ervan toe te wijzen met de inhoud van de bytearray.
  4. Stel uitvoeringsopties in om het DDX-document te valideren.

    • Maak een AssemblerOptionSpec -object dat uitvoeringsopties opslaat met behulp van de bijbehorende constructor.
    • Stel de runtime-optie in die de Assembler-service opgeeft het DDX-document te valideren door de waarde true toe te wijzen aan het validateOnly -gegevenslid van het AssemblerOptionSpec -object.
    • Stel de hoeveelheid informatie in die de Assembler-service naar het logbestand schrijft door een tekenreekswaarde toe te wijzen aan het logLevel -gegevenslid van het AssemblerOptionSpec -object. methode Bij het valideren van een DDX-document wilt u meer informatie naar het logbestand schrijven dat u helpt bij het validatieproces. Hierdoor kunt u de waarde FINE of FINER opgeven. Voor informatie over de runtime opties die u kunt plaatsen, zie de AssemblerOptionSpec klassenverwijzing in AEM Forms API Verwijzing.
  5. Voer de validatie uit.

    Roep de methode invokeDDX van het object AssemblerServiceClient aan en geef de volgende waarden door:

    • Een BLOB -object dat het DDX-document vertegenwoordigt.
    • De waarde null voor het Map -object waarin gewoonlijk PDF-documenten worden opgeslagen.
    • Een AssemblerOptionSpec -object dat uitvoeringsopties opgeeft.

    De methode invokeDDX retourneert een AssemblerResult -object dat informatie bevat die opgeeft of het DDX-document geldig is.

  6. Sla de validatieresultaten op in een logbestand.

    • Maak een System.IO.FileStream -object door de constructor ervan aan te roepen en een tekenreekswaarde door te geven die de bestandslocatie van het logbestand en de modus voor het openen van het bestand vertegenwoordigt. Controleer of de bestandsnaamextensie .xml is.
    • Maak een BLOB -object dat logboekgegevens opslaat door de waarde van het gegevenslid van het AssemblerResult object jobLog op te halen.
    • Maak een bytearray waarin de inhoud van het object BLOB wordt opgeslagen. Vul de bytearray met de waarde van het veld MTOM van het object BLOB .
    • Maak een System.IO.BinaryWriter -object door de constructor ervan aan te roepen en het System.IO.FileStream -object door te geven.
    • Schrijf de inhoud van de bytearray naar een PDF-bestand door de methode Write van het object System.IO.BinaryWriter aan te roepen en de bytearray door te geven.
    OPMERKING
    Als het DDX-document ongeldig is, wordt een OperationException gegenereerd. Binnen de catch-instructie kunt u de waarde van het jobLog -lid van het OperationException -object ophalen.

zie ook

DDX-documenten valideren

AEM Forms aanroepen met MTOM

recommendation-more-help
19ffd973-7af2-44d0-84b5-d547b0dffee2