De prestaties van de Forms-service optimaliseren optimizing-the-performance-of-theforms-service
De prestaties van de Forms-service optimaliseren optimizing-the-performance-of-the-forms-service
Bij het weergeven van een formulier kunt u uitvoeringsopties instellen die de prestaties van de Forms-service optimaliseren. Een andere taak die u kunt uitvoeren om de prestaties van de Forms-service te verbeteren, is het opslaan van XDP-bestanden in de opslagplaats. In deze sectie wordt echter niet beschreven hoe deze taak moet worden uitgevoerd. (Zie Een service aanroepen met een Java-clientbibliotheek.)
Overzicht van de stappen summary-of-steps
Voer de volgende taken uit om de prestaties van de Forms-service te optimaliseren tijdens het genereren van een formulier:
- Inclusief projectbestanden.
- Maak een Forms Client API-object.
- Stel opties voor de uitvoeringstijd in.
- Het formulier weergeven.
- Schrijf de gegevensstroom van het formulier naar de webbrowser van de client.
Projectbestanden opnemen
Neem de benodigde bestanden op in uw ontwikkelingsproject. Als u een clienttoepassing maakt met Java, neemt u de benodigde JAR-bestanden op. Als u webservices gebruikt, dient u de proxybestanden op te nemen.
Een Forms Client API-object maken
Voordat u programmatisch een client-API-bewerking voor Forms-services kunt uitvoeren, moet u een Forms-serviceclient maken. Als u de Java API gebruikt, maakt u een FormsServiceClient
object. Als u de Forms-webservice-API gebruikt, maakt u een FormsService
object.
Opties voor het uitvoeren van de prestaties instellen
U kunt de volgende uitvoeringsopties voor de prestaties instellen om de prestaties van de Forms-service te verbeteren:
- Formulier in cache plaatsen: U kunt een formulier dat als PDF wordt weergegeven, in het cachegeheugen van de server in cache plaatsen. Elk formulier wordt in de cache geplaatst nadat het voor het eerst wordt gegenereerd. Als het formulier in de cache vervolgens wordt gerenderd en het nieuwer is dan de tijdstempel van het formulierontwerp, wordt het formulier opgehaald uit de cache. Door formulieren in cache te plaatsen, verbetert u de prestaties van de Forms-service, omdat het formulierontwerp niet hoeft op te halen uit een opslagplaats.
- Het kan langer duren om formulierhulplijnen (afgekeurd) te renderen dan andere transformatietypen. U wordt aangeraden hulplijnen (afgekeurd) in cache te plaatsen om de prestaties te verbeteren.
- Standalone, optie: Als u niet wilt dat de Forms-service serverberekeningen uitvoert, kunt u de optie Standalone instellen op
true
, wat ertoe leidt dat formulieren worden gegenereerd zonder statusinformatie. Statusinformatie is nodig als u een interactief formulier wilt genereren voor een eindgebruiker die vervolgens gegevens in het formulier invoert en het formulier terugstuurt naar de Forms-service. De Forms-service voert vervolgens een berekeningsbewerking uit en geeft het formulier weer aan de gebruiker met de resultaten die in het formulier worden weergegeven. Als een formulier zonder statusinformatie wordt teruggestuurd naar de Forms-service, zijn alleen de XML-gegevens beschikbaar en worden geen berekeningen op de server uitgevoerd. - Lineaire PDF: Een gelineariseerd PDF-bestand is geordend om efficiƫnte incrementele toegang in een netwerkomgeving mogelijk te maken. Het PDF-bestand is in alle opzichten geldig PDF en is compatibel met alle bestaande viewers en andere PDF-toepassingen. Een gelineariseerde PDF kan dus worden weergegeven terwijl het bestand nog wordt gedownload.
- Deze optie verbetert de prestaties niet wanneer een PDF-formulier op de client wordt gegenereerd.
- GuideRSL, optie: Hiermee schakelt u het genereren van een formulierhulplijn (afgekeurd) in met gezamenlijke bibliotheken bij uitvoering. Dit betekent het eerste verzoek een kleiner SWF-bestand zal downloaden, plus grotere gedeelde bibliotheken die in het browsercache zijn opgeslagen. Zie RSL in de documentatie van Flex voor meer informatie.
- U kunt ook de prestaties van de Forms-service verbeteren door een formulier op de client te genereren. (Zie Forms renderen op de client.)
Het formulier renderen
Als u het formulier wilt genereren nadat u prestatieopties hebt ingesteld, gebruikt u dezelfde toepassingslogica als voor het weergeven van een formulier zonder prestatieopties.
De formuliergegevensstroom naar de webbrowser van de client schrijven
Nadat de Forms-service een formulier heeft gegenereerd, wordt een formuliergegevensstroom geretourneerd die u moet schrijven naar de webbrowser van de client. Wanneer het formulier naar de webbrowser van de client wordt geschreven, is het zichtbaar voor de gebruiker.
Zie ook
Inclusief AEM Forms Java-bibliotheekbestanden
Verbindingseigenschappen instellen
Interactieve PDF forms renderen
Webtoepassingen maken die Forms renderen
De prestaties optimaliseren met de Java API optimize-the-performance-using-the-java-api
Een formulier met optimale prestaties renderen met de Forms API (Java):
-
Projectbestanden opnemen
Neem client-JAR-bestanden, zoals adobe-forms-client.jar, op in het klassenpad van uw Java-project.
-
Een Forms Client API-object maken
- Een
ServiceClientFactory
object dat verbindingseigenschappen bevat. - Een
FormsServiceClient
object door de constructor ervan te gebruiken en door te gevenServiceClientFactory
object.
- Een
-
Opties voor het uitvoeren van de prestaties instellen
- Een
PDFFormRenderSpec
object met behulp van de constructor. - Stel de optie voor de cache van het formulier in door de
PDFFormRenderSpec
objectsetCacheEnabled
methode en doorgeventrue
. - Stel de optie Gelineariseerd in door de
PDFFormRenderSpec
objectsetLinearizedPDF
methode en doorgeventrue.
- Een
-
Het formulier renderen
De
FormsServiceClient
objectrenderPDFForm
en geeft de volgende waarden door:- Een tekenreekswaarde die de naam van het formulierontwerp opgeeft, inclusief de bestandsnaamextensie.
- A
com.adobe.idp.Document
object dat gegevens bevat die met het formulier moeten worden samengevoegd. Als u geen gegevens wilt samenvoegen, geeft u een lege waarde doorcom.adobe.idp.Document
object. - A
PDFFormRenderSpec
-object dat uitvoeringsopties opslaat om de prestaties te verbeteren. - A
URLSpec
object dat URI-waarden bevat die door de Forms-service worden vereist. - A
java.util.HashMap
object waarin bestandsbijlagen zijn opgeslagen. Dit is een optionele parameter en u kuntnull
als u geen bestanden aan het formulier wilt koppelen.
De
renderPDFForm
methode retourneert eenFormsResult
object dat een formuliergegevensstroom bevat die naar de webbrowser van de client moet worden geschreven. -
De formuliergegevensstroom naar de webbrowser van de client schrijven
- Een
javax.servlet.ServletOutputStream
object dat wordt gebruikt om een formuliergegevensstroom naar de webbrowser van de client te verzenden. - Een
com.adobe.idp.Document
door het object aan te roepenFormsResult
object 'sgetOutputContent
methode. - Een
java.io.InputStream
door het object aan te roepencom.adobe.idp.Document
objectgetInputStream
methode. - Maak een bytearray en vul deze met de formuliergegevensstroom door de
InputStream
objectread
en de bytearray doorgeven als een argument. - De
javax.servlet.ServletOutputStream
objectwrite
methode om de formuliergegevensstroom naar de webbrowser van de client te verzenden. Geef de bytearray door aan dewrite
methode.
- Een
Zie ook
Snel starten (SOAP-modus): Prestaties optimaliseren met de Java API
Inclusief AEM Forms Java-bibliotheekbestanden
Verbindingseigenschappen instellen
De prestaties optimaliseren met de webservice-API optimize-the-performance-using-the-web-service-api
Een formulier met optimale prestaties renderen met de Forms API (webservice):
-
Projectbestanden opnemen
- Maak Java-proxyklassen die gebruikmaken van de Forms-service WSDL.
- Neem de Java-proxyklassen op in het klassepad.
-
Een Forms Client API-object maken
Een
FormsService
-object en stel verificatiewaarden in. -
Opties voor het uitvoeren van de prestaties instellen
- Een
PDFFormRenderSpec
object met behulp van de constructor. - Stel de optie voor de cache van het formulier in door de
PDFFormRenderSpec
objectsetCacheEnabled
en waar doorgeven. - Stel de zelfstandige optie in door de
PDFFormRenderSpec
objectsetStandAlone
en waar doorgeven. - Stel de optie Gelineariseerd in door de
PDFFormRenderSpec
objectsetLinearizedPDF
en waar doorgeven.
- Een
-
Het formulier renderen
De
FormsService
objectrenderPDFForm
en geeft de volgende waarden door:- Een tekenreekswaarde die de naam van het formulierontwerp opgeeft, inclusief de bestandsnaamextensie.
- A
BLOB
object dat gegevens bevat die met het formulier moeten worden samengevoegd. Als u geen gegevens wilt samenvoegen, geeft u doornull
. - A
PDFFormRenderSpecc
-object dat uitvoeringsopties opslaat. - A
URLSpec
object dat URI-waarden bevat die door de Forms-service worden vereist. - A
java.util.HashMap
object waarin bestandsbijlagen zijn opgeslagen. Dit is een optionele parameter en u kuntnull
als u geen bestanden aan het formulier wilt koppelen. - Een leeg
com.adobe.idp.services.holders.BLOBHolder
object dat door de methode wordt gevuld. Hiermee slaat u het gerenderde PDF formulier op. - Een leeg
javax.xml.rpc.holders.LongHolder
object dat door de methode wordt gevuld. (In dit argument wordt het aantal pagina's in het formulier opgeslagen). - Een leeg
javax.xml.rpc.holders.StringHolder
object dat door de methode wordt gevuld. (In dit argument wordt de waarde van de landinstelling opgeslagen.) - Een leeg
com.adobe.idp.services.holders.FormsResultHolder
-object dat de resultaten van deze bewerking bevat.
De
renderPDFForm
wordt decom.adobe.idp.services.holders.FormsResultHolder
object dat wordt doorgegeven als de laatste argumentwaarde met een formuliergegevensstroom die naar de webbrowser van de client moet worden geschreven. -
De formuliergegevensstroom naar de webbrowser van de client schrijven
- Een
FormResult
object door de waarde van het object op te halencom.adobe.idp.services.holders.FormsResultHolder
objectvalue
lid. - Een
javax.servlet.ServletOutputStream
object dat wordt gebruikt om een formuliergegevensstroom naar de webbrowser van de client te verzenden. - Een
BLOB
object dat formuliergegevens bevat door hetFormsResult
objectgetOutputContent
methode. - Maak een bytearray en vul deze door het
BLOB
objectgetBinaryData
methode. Deze taak wijst de inhoud van toeFormsResult
object naar de bytearray. - De
javax.servlet.http.HttpServletResponse
objectwrite
methode om de formuliergegevensstroom naar de webbrowser van de client te verzenden. Geef de bytearray door aan dewrite
methode.
- Een
Zie ook
AEM Forms aanroepen met Base64-codering