Forms renderen als HTML rendering-forms-as-html
de Steekproeven en de voorbeelden in dit document zijn slechts voor AEM Forms op milieu JEE.
De Forms-service geeft formulieren als HTML weer in reactie op een HTTP-aanvraag van een webbrowser. Een voordeel van het weergeven van een formulier als HTML is dat de computer waarop de webbrowser van de client zich bevindt geen Adobe Reader, Acrobat of Flash Player vereist (voor formulierhulplijnen (afgekeurd)).
Als u een formulier wilt weergeven als HTML, moet het formulierontwerp worden opgeslagen als een XDP-bestand. Een formulierontwerp dat is opgeslagen als een PDF-bestand, kan niet worden weergegeven als HTML. Houd rekening met de volgende criteria wanneer u een formulierontwerp ontwikkelt in Designer dat wordt weergegeven als HTML:
- Gebruik niet de randeigenschappen van een object om lijnen, vakken of rasters op het formulier te tekenen. In sommige browsers worden randen mogelijk niet precies zo weergegeven als in een voorvertoning. Objecten kunnen gelaagd worden weergegeven of kunnen andere objecten van hun verwachte positie wegduwen.
- U kunt lijnen, rechthoeken en cirkels gebruiken om de achtergrond te definiëren.
- Draw-tekst iets groter dan nodig lijkt om ruimte te bieden aan de tekst. In sommige webbrowsers wordt de tekst niet leesbaar weergegeven.
(Deprecated) renderHTMLForm
en renderHTMLForm2
van het object FormServiceClient
, zijn de TIFF-afbeeldingen niet zichtbaar in het gerenderde HTML formulier dat wordt weergegeven in Internet Explorer- of Mozilla Firefox-browsers. Deze browsers bieden geen native ondersteuning voor TIFF-afbeeldingen.HTML pagina's html-pages
Wanneer een formulierontwerp wordt weergegeven als een HTML-formulier, wordt elk subformulier op het tweede niveau weergegeven als een HTML-pagina (deelvenster). U kunt de hiërarchie van een subformulier weergeven in Designer. Onderliggende subformulieren die tot het basissubformulier behoren (de standaardnaam van een basissubformulier is form1), zijn de deelvenstersubformulieren. In het volgende voorbeeld worden de subformulieren van een formulierontwerp weergegeven.
form1
Master Pages
PanelSubform1
NestedDynamicSubform
TextEdit1
PanelSubform2
TextEdit1
PanelSubform3
TextEdit1
PanelSubform4
TextEdit1
Wanneer formulierontwerpen worden weergegeven als HTML-formulieren, blijven de deelvensters beperkt tot een bepaald paginaformaat. Als u dynamische subformulieren hebt, moeten deze in het deelvenstersubformulier worden genest. Dynamische subformulieren kunnen worden uitgebreid tot een oneindig aantal HTML-pagina's.
Wanneer een formulier wordt weergegeven als een HTML-formulier, hebben paginaformaten (vereist voor paginering van formulieren die worden weergegeven als PDF) geen betekenis. Omdat een formulier met een stroombare indeling kan worden uitgebreid tot een oneindig aantal HTML-pagina's, is het belangrijk dat u geen voetteksten op de basispagina plaatst. Een voettekst onder het inhoudsgebied op een basispagina kan HTML-inhoud overschrijven die voorbij een paginagrens loopt.
U moet expliciet van deelvenster naar deelvenster gaan met de methoden xfa.host.pageUp
en xfa.host.pageDown
. U wijzigt pagina's door een formulier naar de Forms-service te verzenden en het formulier door de Forms-service terug te sturen naar het clientapparaat, meestal een webbrowser.
.fsc-ds-ssb
: Deze stijlpagina is van toepassing als er een leeg tekenveld is.
.fsc-ds-ssv
: Deze stijlpagina is van toepassing als er een geldig handtekeningveld is.
.fsc-ds-ssc
: dit stijlblad is van toepassing als er een geldig handtekeningveld is maar er gegevens zijn gewijzigd.
.fsc-ds-ssi
: Deze stijlpagina is van toepassing als er een ongeldig handtekeningveld is.
.fsc-ds-popup-bg
: Deze stijlbladeigenschap wordt niet gebruikt.
.fsc-ds-popup-btn
: Deze stijlbladeigenschap wordt niet gebruikt.
Scripts uitvoeren running-scripts
Een auteur van een formulier geeft aan of een script op de server of de client wordt uitgevoerd. De Forms-service maakt een gedistribueerde omgeving voor gebeurtenisverwerking voor de uitvoering van formulierintelligentie die kan worden gedistribueerd tussen de client en de server met behulp van het attribuut runAt
. Voor informatie over dit attribuut of het creëren van manuscripten binnen vormontwerpen, zie Forms Designer
De Forms-service kan scripts uitvoeren terwijl het formulier wordt gegenereerd. Hierdoor kunt u een formulier vooraf invullen met gegevens door verbinding te maken met een database of met webservices die mogelijk niet beschikbaar zijn op de client. U kunt ook de Click
-gebeurtenis van een knop instellen om op de server uit te voeren, zodat de client gegevens voor retournering naar de server verzendt. Hierdoor kan de client scripts uitvoeren waarvoor mogelijk serverbronnen nodig zijn, zoals een ondernemingsdatabase, terwijl een gebruiker communiceert met een formulier. Voor HTML-formulieren kunnen formele scripts alleen op de server worden uitgevoerd. Als gevolg hiervan moet u deze scripts markeren om te worden uitgevoerd op server
of both
.
U kunt formulieren ontwerpen die tussen pagina's (deelvensters) worden verplaatst door de methoden xfa.host.pageUp
en xfa.host.pageDown
aan te roepen. Dit script wordt in de gebeurtenis Click
van een knop geplaatst en het kenmerk runAt
wordt ingesteld op Both
. De reden dat u Both
kiest, is zo dat Adobe Reader of Acrobat (voor formulieren die als PDF worden gegenereerd) pagina's kan wijzigen zonder naar de server te gaan. HTML-formulieren kunnen pagina's wijzigen door gegevens naar de server af te snijden. Een formulier wordt dus naar de Forms-service verzonden en een formulier wordt als HTML weergegeven met de nieuwe pagina.
U wordt aangeraden scriptvariabelen en formuliervelden niet dezelfde namen te geven, zoals item. Sommige webbrowsers, zoals Internet Explorer, initialiseren een variabele met dezelfde naam als een formulierveld, waardoor een scriptfout optreedt. Het is een goede gewoonte om formuliervelden en scriptvariabelen verschillende namen te geven.
Bij het weergeven van HTML-formulieren die zowel paginanavigatiefuncties als formulierscripts bevatten (bijvoorbeeld, neem aan dat een script veldgegevens ophaalt uit een database telkens wanneer het formulier wordt gegenereerd), moet u ervoor zorgen dat het formulierscript de gebeurtenis form:calculate heeft in plaats van de gebeurtenis form:readyevent.
Formulierscripts in de gebeurtenis form:ready worden slechts eenmaal uitgevoerd tijdens de eerste weergave van het formulier en worden niet uitgevoerd voor volgende opvragingen van pagina's. De gebeurtenis form:calculate wordt daarentegen uitgevoerd voor elke paginanavigatie waarin het formulier wordt gegenereerd.
U kunt aangepaste scripts aanroepen voordat u een formulier verzendt. Deze functie werkt op alle beschikbare browsers. Deze kan echter alleen worden gebruikt wanneer gebruikers het HTML-formulier weergeven waarvoor de eigenschap Output Type
is ingesteld op Form Body
. De functie werkt niet wanneer de waarde Output Type
Full HTML
is. Zie Formulieren configureren in de Help voor het beheer voor stappen om deze functie te configureren.
Definieer eerst een callback-functie die wordt aangeroepen voordat het formulier wordt verzonden, waarbij de naam van de functie _user_onsubmit
is. Er wordt aangenomen dat de functie geen uitzondering genereert of dat de uitzondering wordt genegeerd als dit het geval is. Het wordt aangeraden de JavaScript-functie in de kopsectie van de HTML te plaatsen. U kunt de functie echter overal vóór het einde van de scripttags declareren die xfasubset.js
bevatten.
Wanneer de formserver een XDP teruggeeft die een drop-down lijst bevat, naast het creëren van de drop-down lijst, leidt het ook tot twee verborgen tekstgebieden. In deze tekstvelden worden de gegevens van de vervolgkeuzelijst opgeslagen (in de ene tekstveld wordt de weergavenaam van de opties opgeslagen en in de andere tekstveld wordt de waarde voor de opties opgeslagen). Elke keer dat een gebruiker het formulier verzendt, worden dus de volledige gegevens van de vervolgkeuzelijst verzonden. Ervan uitgaande dat u niet zoveel gegevens elke keer wilt verzenden, kunt u een aangepast script schrijven om dat uit te schakelen. Bijvoorbeeld: de naam van de vervolgkeuzelijst is drpOrderedByStateProv
en wordt ondergebracht onder de koptekst van het subformulier. De naam van het invoerelement HTML is header[0].drpOrderedByStateProv[0]
. De naam van de verborgen velden die de gegevens van het vervolgkeuzemenu opslaan en verzenden, heeft de volgende namen: header[0].drpOrderedByStateProv_DISPLAYITEMS_[0] header[0].drpOrderedByStateProv_VALUEITEMS_[0]
U kunt deze invoerelementen op de volgende manier uitschakelen als u de gegevens niet wilt posten. var __CUSTOM_SCRIPTS_VERSION = 1; //enabling the feature function _user_onsubmit() { var elems = document.getElementsByName("header[0].drpOrderedByStateProv_DISPLAYITEMS_[0]"); elems[0].disabled = true; elems = document.getElementsByName("header[0].drpOrderedByStateProv_VALUEITEMS_[0]"); elems[0].disabled = true; }
header[0].drpOrderedByStateProv_DISPLAYITEMS_[0] header[0].drpOrderedByStateProv_VALUEITEMS_[0]
var __CUSTOM_SCRIPTS_VERSION = 1; //enabling the feature
function _user_onsubmit() {
var elems = document.getElementsByName("header[0].drpOrderedByStateProv_DISPLAYITEMS_[0]");
elems[0].disabled = true;
elems = document.getElementsByName("header[0].drpOrderedByStateProv_VALUEITEMS_[0]");
elems[0].disabled = true;
}
XFA-subsets xfa-subsets
Wanneer u formulierontwerpen maakt die moeten worden gerenderd als HTML, moet u het script beperken tot de XFA-subset voor scripts in JavaScript-taal.
Scripts die op de client worden uitgevoerd of op zowel de client als de server worden uitgevoerd, moeten binnen de XFA-subset worden geschreven. Scripts die op de server worden uitgevoerd, kunnen het volledige XFA-scriptmodel gebruiken en ook FormCalc gebruiken. Voor informatie over het gebruiken van JavaScript, zie Designer van Forms.
Wanneer scripts op de client worden uitgevoerd, kan alleen het huidige deelvenster dat wordt weergegeven, een script gebruiken. U kunt bijvoorbeeld geen script uitvoeren op velden in deelvenster A wanneer deelvenster B wordt weergegeven. Wanneer scripts op de server worden uitgevoerd, zijn alle deelvensters toegankelijk.
Wees voorzichtig bij het gebruik van SOM-expressies (Scripting Object Model) in scripts die op de client worden uitgevoerd. Alleen een vereenvoudigde subset van SOM-expressies wordt ondersteund door scripts die op de client worden uitgevoerd.
Gebeurtenistiming event-timing
De XFA-subset definieert de XFA-gebeurtenissen die zijn toegewezen aan HTML-gebeurtenissen. Er is een klein verschil in gedrag met betrekking tot de timing van de gebeurtenissen calculate and validate. In een webbrowser wordt een volledige gebeurtenis calculate uitgevoerd wanneer u een veld verlaat. Gebeurtenissen berekenen worden niet automatisch uitgevoerd wanneer u een wijziging in een veldwaarde aanbrengt. U kunt een gebeurtenis calculate afdwingen door de methode xfa.form.execCalculate
aan te roepen.
In een webbrowser worden validatiegebeurtenissen alleen uitgevoerd wanneer een veld wordt gesloten of een formulier wordt verzonden. U kunt een gebeurtenis validate afdwingen met de methode xfa.form.execValidate
.
Forms die wordt weergegeven in een webbrowser (in tegenstelling tot Adobe Reader of Acrobat), voldoet aan de XFA null-test (fouten of waarschuwingen) voor verplichte velden.
- Als de null-test een fout veroorzaakt en u een veld verlaat zonder een waarde op te geven, wordt een berichtvenster weergegeven en wordt u naar het veld verplaatst nadat u op OK hebt geklikt.
- Als een null-test een waarschuwing produceert en u een veld verlaat zonder een waarde op te geven, wordt u gevraagd op OK of Annuleren te klikken. U kunt dan doorgaan zonder een waarde op te geven of terug te keren naar het veld om een waarde in te voeren.
Voor meer informatie over een ongeldige test, zie Forms Designer.
Formulierknoppen form-buttons
Als u op een knop Verzenden klikt, worden formuliergegevens naar de Forms-service verzonden en wordt het einde van de formulierverwerking aangegeven. De preSubmit
-gebeurtenis kan worden ingesteld op uitvoeren op de client of server. De preSubmit
-gebeurtenis wordt uitgevoerd voordat het formulier wordt verzonden als dit is geconfigureerd om op de client te worden uitgevoerd. Anders wordt de preSubmit
-gebeurtenis tijdens het verzenden van het formulier op de server uitgevoerd. Voor meer informatie over de preSubmit
gebeurtenis, zie Forms Designer.
Als er aan een knop geen clientscript is gekoppeld, worden gegevens naar de server verzonden, worden berekeningen op de server uitgevoerd en wordt het HTML-formulier opnieuw gegenereerd. Als een knop een clientscript bevat, worden er geen gegevens naar de server verzonden en wordt het clientscript in de webbrowser uitgevoerd.
HTML 4.0 webbrowser html-4-0-web-browser
Een webbrowser die alleen HTML 4.0 ondersteunt, kan het scriptmodel van de XFA-subset voor client-side niet ondersteunen. Wanneer u een formulierontwerp maakt dat zowel in HTML 4.0 als in MSDHTML of CSS2HTML werkt, wordt een script dat is gemarkeerd om op de client te worden uitgevoerd, daadwerkelijk op de server uitgevoerd. Stel dat een gebruiker op een knop klikt die zich op een formulier bevindt dat in een webbrowser van HTML 4.0 wordt weergegeven. In dit geval worden de formuliergegevens verzonden naar de server waar het clientscript wordt uitgevoerd.
U wordt aangeraden de formulierlogica in Calculate-gebeurtenissen te plaatsen, die op de server in HTML 4.0 en op de client voor MSDHTML of CSS2HTML worden uitgevoerd.
Presentatiewijzigingen behouden maintaining-presentation-changes
Bij het schakelen tussen HTML-pagina's (deelvensters) blijft alleen de status van de gegevens behouden. Instellingen zoals achtergrondkleur of verplichte veldinstellingen blijven niet behouden (als deze afwijken van de oorspronkelijke instellingen). Als u de presentatiestatus wilt behouden, moet u (gewoonlijk verborgen) velden maken die de presentatiestatus van velden aangeven. Als u een script toevoegt aan de gebeurtenis Calculate
van een veld waarmee de presentatie wordt gewijzigd op basis van verborgen veldwaarden, kunt u de presentatiestatus behouden wanneer u heen en weer gaat tussen HTML-pagina's (deelvensters).
In het volgende script wordt de waarde fillColor
van een veld behouden op basis van de waarde van hiddenField
. Stel dat dit script zich in de gebeurtenis Calculate
van een veld bevindt.
If (hiddenField.rawValue == 1)
this.fillColor = "255,0,0"
else
this.fillColor = "0,255,0"
HTML-formulieren digitaal ondertekenen digitally-signing-html-forms
U kunt geen HTML-formulier ondertekenen dat een digitaal handtekeningveld bevat als het formulier wordt weergegeven als een van de volgende HTML-transformaties:
- AHTML
- HTML4
- StaticHTML
- NoScriptXHTML
Voor informatie over digitaal het ondertekenen van een document, zie digitaal het Ondertekenen en het Certificeren Documenten
Een XHTML-formulier dat voldoet aan toegankelijkheidsrichtlijnen weergeven rendering-an-accessibility-guidelines-compliant-xhtml-form
U kunt een volledig HTML formulier weergeven dat voldoet aan toegankelijkheidsrichtlijnen. Het formulier wordt dus gegenereerd binnen volledige HTML-tags, in tegenstelling tot het HTML-formulier dat wordt weergegeven binnen body-tags (geen volledige HTML-pagina).
Formuliergegevens valideren validating-form-data
Het wordt aanbevolen om het gebruik van validatieregels voor formuliervelden te beperken bij het weergeven van het formulier als een HTML-formulier. Sommige validatieregels worden mogelijk niet ondersteund voor HTML-formulieren. Wanneer bijvoorbeeld een validatiepatroon van DD-MM-JJJJ wordt toegepast op een Date/Time
-veld in een formulierontwerp dat wordt weergegeven als een HTML-formulier, werkt het niet correct, zelfs niet als de datum correct is getypt. Dit validatiepatroon werkt echter goed voor formulieren die worden weergegeven als PDF.
Overzicht van de stappen summary-of-steps
Voer de volgende stappen uit om een HTML-formulier te genereren:
- Inclusief projectbestanden.
- Maak een Forms Client API-object.
- Stel HTML-uitvoeringsopties in.
- Een HTML-formulier weergeven.
- Schrijf de gegevensstroom van het formulier naar de webbrowser van de client.
omvat projectdossiers
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.
creeer een voorwerp van Forms Cliënt API
Voordat u gegevens via programmacode kunt importeren in een PDF formClient-API, moet u een service-client voor de integratie van formuliergegevens maken. Wanneer u een serviceclient maakt, definieert u verbindingsinstellingen die vereist zijn om een service aan te roepen.
plaats HTML runtime opties
U stelt HTML-uitvoeringsopties in wanneer u een HTML-formulier weergeeft. U kunt bijvoorbeeld een werkbalk toevoegen aan een HTML-formulier, zodat gebruikers bestandsbijlagen kunnen selecteren op de clientcomputer of bestandsbijlagen kunnen ophalen die met het HTML-formulier worden gegenereerd. Een werkbalk HTML is standaard uitgeschakeld. Als u een werkbalk wilt toevoegen aan een HTML-formulier, moet u via programmacode uitvoeringsopties instellen. Een werkbalk HTML bestaat standaard uit de volgende knoppen:
Home
: verschaft een koppeling naar de hoofdmap van de toepassing.Upload
: biedt een gebruikersinterface voor het selecteren van bestanden die u wilt bijvoegen bij het huidige formulier.Download
: biedt een gebruikersinterface voor het weergeven van de bijgevoegde bestanden.
Wanneer een werkbalk HTML op een HTML-formulier wordt weergegeven, kan een gebruiker maximaal tien bestanden selecteren die samen met de formuliergegevens moeten worden verzonden. Nadat de bestanden zijn verzonden, kan de Forms-service de bestanden ophalen.
Bij het weergeven van een formulier als HTML kunt u een gebruikersagent-waarde opgeven. Een gebruiker-agent waarde verstrekt browser en systeeminformatie. Dit is een optionele waarde en u kunt een lege tekenreekswaarde doorgeven. De weergave van een HTML-formulier met behulp van de Java API Quick start laat zien hoe u een gebruikersagent-waarde ophaalt en gebruikt om een formulier te genereren als HTML.
HTTP-URL's waarnaar formuliergegevens worden verzonden, kunnen worden opgegeven door de doel-URL in te stellen met de Forms Service Client API of kunnen worden opgegeven in de knop Verzenden in het XDP-formulierontwerp. Als het doel-URL is opgegeven in het formulierontwerp, moet u geen waarde instellen met de Forms Service Client API.
geef een vorm van HTML terug
Als u een HTML-formulier wilt genereren, geeft u een formulierontwerp op dat in Designer is gemaakt en als XDP-bestand is opgeslagen. Selecteer een transformatietype HTML. U kunt bijvoorbeeld het transformatietype HTML opgeven waarmee een dynamische HTML wordt weergegeven voor Internet Explorer 5.0 of hoger.
Voor het weergeven van een HTML-formulier zijn ook waarden vereist, zoals URI-waarden die vereist zijn om andere formuliertypen te genereren.
schrijf de stroom van vormgegevens aan cliëntWeb browser
Wanneer de Forms-service een HTML-formulier weergeeft, wordt een formuliergegevensstroom geretourneerd die u naar de webbrowser van de client moet schrijven. Wanneer het formulier naar de clientwebbrowser wordt geschreven, is het HTML-formulier zichtbaar voor de gebruiker.
zie ook
Een formulier weergeven als HTML met de Java API
Een formulier als HTML weergeven met de API voor webservices
Inclusief AEM Forms Java-bibliotheekbestanden
Verbindingseigenschappen instellen
Interactieve PDF forms renderen
Een formulier weergeven als HTML met de Java API render-a-form-as-html-using-the-java-api
Een HTML-formulier renderen met de Forms API (Java):
-
Projectbestanden opnemen
Neem client-JAR-bestanden, zoals adobe-forms-client.jar, op in het klassepad van uw Java-project.
-
Een Forms Client API-object maken
- Maak een
ServiceClientFactory
-object dat verbindingseigenschappen bevat. - Maak een
FormsServiceClient
-object door de constructor ervan te gebruiken en hetServiceClientFactory
-object door te geven.
- Maak een
-
Opties voor HTML bij uitvoering instellen
- Maak een
HTMLRenderSpec
-object met behulp van de constructor. - Als u een HTML-formulier met een werkbalk wilt weergeven, roept u de methode
setHTMLToolbar
van het objectHTMLRenderSpec
aan en geeft u een waardeHTMLToolbar
enum door. Als u bijvoorbeeld een verticale werkbalk HTML wilt weergeven, geeft u doorHTMLToolbar.Vertical
. - Als u de landinstellingswaarde voor het HTML-formulier wilt instellen, roept u de methode
setLocale
van het objectHTMLRenderSpec
aan en geeft u een tekenreekswaarde door die de landinstellingswaarde opgeeft. (Dit is een optionele instelling.) - Als u het HTML-formulier wilt renderen binnen volledige HTML-tags, roept u de methode
setOutputType
van het objectHTMLRenderSpec
aan en geeft uOutputType.FullHTMLTags
door. (Dit is een optionele instelling.)
note note NOTE Forms wordt niet gerenderd in HTML als de StandAlone
-optietrue
is en deApplicationWebRoot
verwijst naar een andere server dan de J2EE-toepassingsserver die als host fungeert voor AEM Forms (deApplicationWebRoot
-waarde wordt opgegeven met hetURLSpec
-object dat wordt doorgegeven aan deFormsServiceClient
objectmethode(Deprecated) renderHTMLForm
). WanneerApplicationWebRoot
een andere server is van de server die als host fungeert voor AEM Forms, moet de waarde van de URI van de webhoofdmap in de beheerconsole worden ingesteld als de URI-waarde van de webtoepassing van het formulier. U doet dit door u aan te melden bij de beheerconsole, op Services > Forms te klikken en de Web Root URI in te stellen als https://server-name:port/FormServer. Sla vervolgens uw instellingen op. - Maak een
-
Een HTML-formulier renderen
Roep de methode
(Deprecated) renderHTMLForm
van het objectFormsServiceClient
aan en geef de volgende waarden door:- Een tekenreekswaarde die de naam van het formulierontwerp opgeeft, inclusief de bestandsnaamextensie. Als u verwijst naar een formulierontwerp dat deel uitmaakt van een Forms-toepassing, moet u het volledige pad opgeven, bijvoorbeeld
Applications/FormsApplication/1.0/FormsFolder/Loan.xdp
. - Een
TransformTo
opsommingswaarde die het voorkeurstype HTML aangeeft. Als u bijvoorbeeld een HTML-formulier wilt genereren dat compatibel is met dynamic HTML voor Internet Explorer 5.0 of hoger, geeft uTransformTo.MSDHTML
op. - Een
com.adobe.idp.Document
-object dat gegevens bevat die met het formulier moeten worden samengevoegd. Wanneer u geen gegevens wilt samenvoegen, geeft u een leegcom.adobe.idp.Document
-object door. - Het
HTMLRenderSpec
-object dat HTML-runtime-opties opslaat. - Een tekenreekswaarde die de headerwaarde
HTTP_USER_AGENT
opgeeft, bijvoorbeeldMozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 1.1.4322)
. - Een
URLSpec
-object dat URI-waarden opslaat die vereist zijn om een HTML-formulier te genereren. - Een
java.util.HashMap
-object dat bestandsbijlagen opslaat. Dit is een optionele parameter en u kuntnull
opgeven als u geen bestanden aan het formulier wilt koppelen.
De methode
(Deprecated) renderHTMLForm
retourneert eenFormsResult
-object dat een formuliergegevensstroom bevat die naar de webbrowser van de client kan worden geschreven. - Een tekenreekswaarde die de naam van het formulierontwerp opgeeft, inclusief de bestandsnaamextensie. Als u verwijst naar een formulierontwerp dat deel uitmaakt van een Forms-toepassing, moet u het volledige pad opgeven, bijvoorbeeld
-
De formuliergegevensstroom naar de webbrowser van de client schrijven
- Maak een
com.adobe.idp.Document
-object door de methodeFormsResult
objectgetOutputContent
aan te roepen. - Haal het inhoudstype van het object
com.adobe.idp.Document
op door de methodegetContentType
ervan aan te roepen. - Stel het inhoudstype van het
javax.servlet.http.HttpServletResponse
-object in door de methodesetContentType
ervan aan te roepen en het inhoudstype van hetcom.adobe.idp.Document
-object door te geven. - Maak een
javax.servlet.ServletOutputStream
-object dat wordt gebruikt om de formuliergegevensstroom naar de webbrowser van de client te schrijven door de methodejavax.servlet.http.HttpServletResponse
objectgetOutputStream
aan te roepen. - Maak een
java.io.InputStream
-object door de methodecom.adobe.idp.Document
objectgetInputStream
aan te roepen. - Maak een bytearray en vul deze met de formuliergegevensstroom door de methode
read
van het objectInputStream
aan te roepen en de bytearray als een argument door te geven. - Roep de methode
write
van het objectjavax.servlet.ServletOutputStream
aan om de gegevensstroom van het formulier naar de webbrowser van de client te verzenden. Geef de bytearray door aan de methodewrite
.
- Maak een
zie ook
Snel starten (SOAP modus): Een HTML-formulier weergeven met de Java API
Een formulier als HTML weergeven met de API voor webservices render-a-form-as-html-using-the-web-service-api
Een HTML-formulier 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
Maak een
FormsService
-object en stel de verificatiewaarden in. -
Opties voor HTML bij uitvoering instellen
- Maak een
HTMLRenderSpec
-object met behulp van de constructor. - Als u een HTML-formulier met een werkbalk wilt weergeven, roept u de methode
setHTMLToolbar
van het objectHTMLRenderSpec
aan en geeft u een waardeHTMLToolbar
enum door. Als u bijvoorbeeld een verticale werkbalk HTML wilt weergeven, geeft u doorHTMLToolbar.Vertical
. - Als u de landinstellingswaarde voor het HTML-formulier wilt instellen, roept u de methode
setLocale
van het objectHTMLRenderSpec
aan en geeft u een tekenreekswaarde door die de landinstellingswaarde opgeeft. Voor meer informatie, zie AEM Forms API Verwijzing. - Als u het HTML-formulier wilt renderen binnen volledige HTML-tags, roept u de methode
setOutputType
van het objectHTMLRenderSpec
aan en geeft uOutputType.FullHTMLTags
door.
note note NOTE Forms wordt niet gerenderd in HTML als de StandAlone
-optietrue
is en deApplicationWebRoot
verwijst naar een andere server dan de J2EE-toepassingsserver die als host fungeert voor AEM Forms (deApplicationWebRoot
-waarde wordt opgegeven met hetURLSpec
-object dat wordt doorgegeven aan deFormsServiceClient
objectmethode(Deprecated) renderHTMLForm
). WanneerApplicationWebRoot
een andere server is van de server die als host fungeert voor AEM Forms, moet de waarde van de URI van de webhoofdmap in de beheerconsole worden ingesteld als de URI-waarde van de webtoepassing van het formulier. U doet dit door u aan te melden bij de beheerconsole, op Services > Forms te klikken en de Web Root URI in te stellen als https://server-name:port/FormServer. Sla vervolgens uw instellingen op. - Maak een
-
Een HTML-formulier renderen
Roep de methode
(Deprecated) renderHTMLForm
van het objectFormsService
aan en geef de volgende waarden door:- Een tekenreekswaarde die de naam van het formulierontwerp opgeeft, inclusief de bestandsnaamextensie. Als u verwijst naar een formulierontwerp dat deel uitmaakt van een Forms-toepassing, moet u het volledige pad opgeven, bijvoorbeeld
Applications/FormsApplication/1.0/FormsFolder/Loan.xdp
. - Een
TransformTo
opsommingswaarde die het voorkeurstype HTML aangeeft. Als u bijvoorbeeld een HTML-formulier wilt genereren dat compatibel is met dynamic HTML voor Internet Explorer 5.0 of hoger, geeft uTransformTo.MSDHTML
op. - Een
BLOB
-object dat gegevens bevat die met het formulier moeten worden samengevoegd. Geefnull
door als u geen gegevens wilt samenvoegen. (Zie Prepopulating Forms met Stroombare Lay-outs.) - Het
HTMLRenderSpec
-object dat HTML-runtime-opties opslaat. - Een tekenreekswaarde die de headerwaarde
HTTP_USER_AGENT
opgeeft, bijvoorbeeldMozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 1.1.4322)
. U kunt een lege tekenreeks doorgeven als u deze waarde niet wilt instellen. - Een
URLSpec
-object dat URI-waarden opslaat die vereist zijn om een HTML-formulier te genereren. (Zie de waarden van URIspecificeren.) - Een
java.util.HashMap
-object dat bestandsbijlagen opslaat. Dit is een optionele parameter en u kuntnull
opgeven als u geen bestanden aan het formulier wilt koppelen. (Zie dossiers aan de vormvastmaken.) - Een leeg
com.adobe.idp.services.holders.BLOBHolder
-object dat door de methode wordt gevuld. Met deze parameterwaarde wordt het gerenderde formulier opgeslagen. - Een leeg
com.adobe.idp.services.holders.BLOBHolder
-object dat door de methode wordt gevuld. In deze parameter worden de XML-uitvoergegevens opgeslagen. - 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
javax.xml.rpc.holders.StringHolder
-object dat door de methode wordt gevuld. In dit argument wordt de gebruikte HTML-renderwaarde opgeslagen. - Een leeg
com.adobe.idp.services.holders.FormsResultHolder
-object dat de resultaten van deze bewerking bevat.
Met de methode
(Deprecated) renderHTMLForm
wordt hetcom.adobe.idp.services.holders.FormsResultHolder
-object dat als laatste argumentwaarde wordt doorgegeven, gevuld met een formuliergegevensstroom die naar de webbrowser van de client moet worden geschreven. - Een tekenreekswaarde die de naam van het formulierontwerp opgeeft, inclusief de bestandsnaamextensie. Als u verwijst naar een formulierontwerp dat deel uitmaakt van een Forms-toepassing, moet u het volledige pad opgeven, bijvoorbeeld
-
De formuliergegevensstroom naar de webbrowser van de client schrijven
- Maak een
FormResult
-object door de waarde van het gegevenslid van hetcom.adobe.idp.services.holders.FormsResultHolder
objectvalue
op te halen. - Maak een
BLOB
-object dat formuliergegevens bevat door de methodeFormsResult
objectgetOutputContent
aan te roepen. - Haal het inhoudstype van het object
BLOB
op door de methodegetContentType
ervan aan te roepen. - Stel het inhoudstype van het
javax.servlet.http.HttpServletResponse
-object in door de methodesetContentType
ervan aan te roepen en het inhoudstype van hetBLOB
-object door te geven. - Maak een
javax.servlet.ServletOutputStream
-object dat wordt gebruikt om de formuliergegevensstroom naar de webbrowser van de client te schrijven door de methodejavax.servlet.http.HttpServletResponse
objectgetOutputStream
aan te roepen. - Maak een bytearray en vul deze door de methode
getBinaryData
van het objectBLOB
aan te roepen. Hierdoor wordt de inhoud van hetFormsResult
-object toegewezen aan de bytearray. - Roep de methode
write
van het objectjavax.servlet.http.HttpServletResponse
aan om de gegevensstroom van het formulier naar de webbrowser van de client te verzenden. Geef de bytearray door aan de methodewrite
.
- Maak een
zie ook
AEM Forms aanroepen met Base64-codering