Rendering HTML Forms con file CSS personalizzati

Il servizio Forms esegue il rendering dei moduli HTML in risposta a una richiesta HTTP inviata da un browser Web. Durante il rendering di un modulo HTML, il servizio Forms può fare riferimento a un file CSS personalizzato. È possibile creare un file CSS personalizzato per soddisfare i requisiti aziendali e fare riferimento a tale file CSS quando si utilizza il servizio Forms per eseguire il rendering dei moduli HTML.

Il servizio Forms analizza in modo invisibile il file CSS personalizzato. In altre parole, il servizio Forms non segnala errori che potrebbero verificarsi se il file CSS personalizzato non è conforme agli standard CSS. In questa situazione, il servizio Forms ignora lo stile e continua con gli stili rimanenti che si trovano nel file CSS.

L'elenco seguente specifica gli stili supportati in un file CSS personalizzato:

  • Coppie stile selettore a livello di classe: Se presente in un file CSS personalizzato, vengono utilizzati i selettori utilizzati nel modulo HTML come stili di classe. Gli stili di classe non utilizzati vengono ignorati.
  • Coppie stile selettore a livello di identificatore: Tutti gli stili di identificatore vengono utilizzati se usati nel modulo HTML.
  • Coppie stile selettore livello elemento: Tutti gli stili di elemento vengono utilizzati se utilizzati nel modulo HTML.
  • Priorità stile: La priorità di stile (come importante) è supportata e può essere utilizzata in un file CSS personalizzato.
  • Tipo di supporto: Per definire il tipo di supporto, è possibile racchiudere una o più coppie di stile selettore nello stile @media. Il servizio Forms non verifica se il tipo di supporto specificato è supportato. Il tipo di supporto specificato nel file CSS personalizzato viene unito nel modulo HTML.

È possibile recuperare un file CSS di esempio utilizzando l'applicazione FormsIVS. Caricate il modulo, selezionatelo nella pagina Struttura del modulo di prova e fate clic su GeneraCSS. Non è necessario impostare il tipo di trasformazione HTML prima di fare clic sul pulsante. Selezionare Salva. Potete modificare questo file CSS per soddisfare i vostri requisiti aziendali.

NOTA

Prima di eseguire il rendering di un modulo HTML che utilizza un file CSS personalizzato, è importante avere una conoscenza approfondita del rendering dei moduli HTML. (Vedere Rendering di Forms come HTML.)

NOTA

Per ulteriori informazioni sul servizio Forms, vedere Guida di riferimento dei servizi per AEM Forms.

Riepilogo dei passaggi

Per eseguire il rendering di un modulo HTML che utilizza un file CSS, effettuare le seguenti operazioni:

  1. Includere i file di progetto.
  2. Creare un oggetto Forms Java API.
  3. Fate riferimento al file CSS.
  4. Eseguire il rendering di un modulo HTML.
  5. Scrivere il flusso di dati del modulo nel browser Web del client.

Includi file di progetto

Includete i file necessari nel progetto di sviluppo. Se create un'applicazione client utilizzando Java, includete i file JAR necessari. Se utilizzate i servizi Web, accertatevi di includere i file proxy.

Creare un oggetto API Forms Java

Prima di eseguire un'operazione supportata dal servizio Forms a livello di programmazione, è necessario creare un oggetto client Forms.

Riferimento al file CSS

Per eseguire il rendering di un modulo HTML che utilizza un file CSS personalizzato, assicurarsi di fare riferimento a un file CSS esistente.

Eseguire il rendering di un modulo HTML

Per eseguire il rendering di un modulo HTML, è necessario specificare una struttura del modulo creata in Designer e salvata come file XDP. È inoltre necessario selezionare un tipo di trasformazione HTML. Ad esempio, potete specificare il tipo di trasformazione HTML che esegue il rendering di un HTML dinamico per Internet Explorer 5.0 o versione successiva.

Il rendering di un modulo HTML richiede anche valori, ad esempio valori URI, necessari per eseguire il rendering di altri tipi di modulo.

Scrivere il flusso di dati del modulo nel browser Web del client

Quando il servizio Forms esegue il rendering di un modulo HTML, restituisce un flusso di dati del modulo che è necessario scrivere nel browser Web del client per rendere il modulo HTML visibile all'utente.

Consulta anche

Eseguire il rendering di un modulo HTML che utilizza un file CSS utilizzando l'API Java

Inclusione file libreria Java AEM Forms

Impostazione delle proprietà di connessione

Avvio rapido di Forms Service API

Rendering di PDF forms interattivi

Rendering di Forms come HTML

Creazione di applicazioni Web per il rendering di Forms

Eseguire il rendering di un modulo HTML che utilizza un file CSS utilizzando l'API Java

Eseguire il rendering di un modulo HTML che utilizza un file CSS personalizzato utilizzando l'API Forms (Java):

  1. Includi file di progetto

    Includete file JAR client, ad esempio adobe-forms-client.jar, nel percorso di classe del progetto Java.

  2. Creare un oggetto API Forms Java

    • Creare un oggetto ServiceClientFactory che contiene le proprietà di connessione.
    • Creare un oggetto FormsServiceClient utilizzando il relativo costruttore e passando l'oggetto ServiceClientFactory.
  3. Riferimento al file CSS

    • Creare un oggetto HTMLRenderSpec utilizzando il relativo costruttore.
    • Per eseguire il rendering del modulo HTML che utilizza un file CSS personalizzato, richiamare il metodo setCustomCSSURI dell'oggetto HTMLRenderSpec e passare un valore di stringa che specifica la posizione e il nome del file CSS.
  4. Eseguire il rendering di un modulo HTML

    Richiamare il metodo FormsServiceClient dell'oggetto (Deprecated) (Deprecated) renderHTMLForm e trasmettere i seguenti valori:

    • Una stringa che specifica il nome della struttura del modulo, inclusa l'estensione del nome file. Se si fa riferimento a una struttura del modulo che fa parte di un'applicazione Forms, è necessario specificare il percorso completo, ad esempio Applications/FormsApplication/1.0/FormsFolder/Loan.xdp.
    • Un valore enum TransformTo che specifica il tipo di preferenza HTML. Ad esempio, per eseguire il rendering di un modulo HTML compatibile con HTML dinamico per Internet Explorer 5.0 o versione successiva, specificare TransformTo.MSDHTML.
    • Un oggetto com.adobe.idp.Document che contiene i dati da unire al modulo. Se non si desidera unire i dati, passare un oggetto com.adobe.idp.Document vuoto.
    • L'oggetto HTMLRenderSpec che memorizza le opzioni di runtime HTML.
    • Un valore di stringa che specifica il valore dell'intestazione HTTP_USER_AGENT, ad esempio Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 1.1.4322).
    • Un oggetto URLSpec che memorizza i valori URI richiesti per eseguire il rendering di un modulo HTML.
    • Un oggetto java.util.HashMap che memorizza gli allegati. Si tratta di un parametro facoltativo e è possibile specificare null se non si desidera allegare file al modulo.

    Il metodo (Deprecated) renderHTMLForm restituisce un oggetto FormsResult contenente un flusso di dati del modulo che deve essere scritto nel browser Web del client.

  5. Scrivere il flusso di dati del modulo nel browser Web del client

    • Creare un oggetto com.adobe.idp.Document richiamando il metodo FormsResult object ‘s getOutputContent.
    • Ottenere il tipo di contenuto dell'oggetto com.adobe.idp.Document richiamandone il metodo getContentType.
    • Impostare il tipo di contenuto dell'oggetto javax.servlet.http.HttpServletResponse richiamandone il metodo setContentType e passando il tipo di contenuto dell'oggetto com.adobe.idp.Document.
    • Creare un oggetto javax.servlet.ServletOutputStream utilizzato per scrivere il flusso di dati del modulo nel browser Web del client richiamando il metodo javax.servlet.h\ttp.HttpServletResponse dell'oggetto getOutputStream.
    • Creare un oggetto java.io.InputStream richiamando il metodo com.adobe.idp.Document dell'oggetto getInputStream.
    • Creare un array di byte e compilarlo con il flusso di dati del modulo richiamando il metodo InputStream dell'oggetto read e passando l'array di byte come argomento.
    • Richiamare il metodo javax.servlet.ServletOutputStream dell'oggetto write per inviare il flusso di dati del modulo al browser Web del client. Passate l'array di byte al metodo write.

Consulta anche

Rendering HTML Forms con file CSS personalizzati

Avvio rapido (modalità SOAP): Rendering di un modulo HTML che utilizza un file CSS utilizzando l'API Java

Inclusione file libreria Java AEM Forms

Impostazione delle proprietà di connessione

Eseguire il rendering di un modulo HTML che utilizza un file CSS utilizzando l'API del servizio Web

Eseguire il rendering di un modulo HTML che utilizza un file CSS personalizzato utilizzando l'API di Forms (servizio Web):

  1. Includi file di progetto

    • Creare classi proxy Java che utilizzano il servizio WSDL di Forms.
    • Includete le classi proxy Java nel percorso della classe.
  2. Creare un oggetto API Forms Java

    Creare un oggetto FormsService e impostare i valori di autenticazione.

  3. Riferimento al file CSS

    • Creare un oggetto HTMLRenderSpec utilizzando il relativo costruttore.
    • Per eseguire il rendering del modulo HTML che utilizza un file CSS personalizzato, richiamare il metodo setCustomCSSURI dell'oggetto HTMLRenderSpec e passare un valore di stringa che specifica la posizione e il nome del file CSS.
  4. Eseguire il rendering di un modulo HTML

    Richiamare il metodo FormsService dell'oggetto (Deprecated) renderHTMLForm e trasmettere i seguenti valori:

    • Una stringa che specifica il nome della struttura del modulo, inclusa l'estensione del nome file. Se si fa riferimento a una struttura del modulo che fa parte di un'applicazione Forms, è necessario specificare il percorso completo, ad esempio Applications/FormsApplication/1.0/FormsFolder/Loan.xdp.
    • Un valore enum TransformTo che specifica il tipo di preferenza HTML. Ad esempio, per eseguire il rendering di un modulo HTML compatibile con HTML dinamico per Internet Explorer 5.0 o versione successiva, specificare TransformTo.MSDHTML.
    • Un oggetto BLOB che contiene i dati da unire al modulo. Se non si desidera unire i dati, passare null. (Vedere Precompilazione di Forms con layout scorrevoli.)
    • L'oggetto HTMLRenderSpec che memorizza le opzioni di runtime HTML.
    • Un valore di stringa che specifica il valore dell'intestazione HTTP_USER_AGENT, ad esempio Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 1.1.4322). Se non si desidera impostare questo valore, è possibile passare una stringa vuota.
    • Un oggetto URLSpec che memorizza i valori URI richiesti per eseguire il rendering di un modulo HTML.
    • Un oggetto java.util.HashMap che memorizza gli allegati. Si tratta di un parametro facoltativo e è possibile specificare null se non si desidera allegare file al modulo.
    • Un oggetto com.adobe.idp.services.holders.BLOBHolder vuoto compilato dal metodo (Deprecated) renderHTMLForm. Questo valore del parametro memorizza il modulo di cui è stato effettuato il rendering.
    • Un oggetto com.adobe.idp.services.holders.BLOBHolder vuoto compilato dal metodo (Deprecated) renderHTMLForm. Questo parametro memorizza i dati XML di output.
    • Un oggetto javax.xml.rpc.holders.LongHolder vuoto compilato dal metodo (Deprecated) renderHTMLForm. Questo argomento memorizza il numero di pagine nel modulo.
    • Un oggetto javax.xml.rpc.holders.StringHolder vuoto compilato dal metodo (Deprecated) renderHTMLForm. Questo argomento memorizza il valore delle impostazioni internazionali.
    • Un oggetto javax.xml.rpc.holders.StringHolder vuoto compilato dal metodo (Deprecated) renderHTMLForm. Questo argomento memorizza il valore di rendering HTML utilizzato.
    • Un oggetto com.adobe.idp.services.holders.FormsResultHolder vuoto che conterrà i risultati dell'operazione.

    Il metodo (Deprecated) renderHTMLForm compila l'oggetto com.adobe.idp.services.holders.FormsResultHolder passato come ultimo valore argomento con un flusso di dati del modulo che deve essere scritto nel browser Web del client.

  5. Scrivere il flusso di dati del modulo nel browser Web del client

    • Creare un oggetto FormResult ottenendo il valore del membro di dati com.adobe.idp.services.holders.FormsResultHolder dell'oggetto value.
    • Creare un oggetto BLOB contenente dati del modulo richiamando il metodo FormsResult dell'oggetto getOutputContent.
    • Ottenere il tipo di contenuto dell'oggetto BLOB richiamandone il metodo getContentType.
    • Impostare il tipo di contenuto dell'oggetto javax.servlet.http.HttpServletResponse richiamandone il metodo setContentType e passando il tipo di contenuto dell'oggetto BLOB.
    • Creare un oggetto javax.servlet.ServletOutputStream utilizzato per scrivere il flusso di dati del modulo nel browser Web del client richiamando il metodo javax.servlet.http.HttpServletResponse dell'oggetto getOutputStream.
    • Creare un array di byte e compilarlo richiamando il metodo BLOB dell'oggetto getBinaryData. Questa attività assegna il contenuto dell'oggetto FormsResult all'array di byte.
    • Richiamare il metodo javax.servlet.http.HttpServletResponse dell'oggetto write per inviare il flusso di dati del modulo al browser Web del client. Passate l'array di byte al metodo write.

Consulta anche

Rendering HTML Forms con file CSS personalizzati

Richiamo AEM Forms con codifica Base64

In questa pagina

Adobe Summit Banner

A virtual event April 27-28.

Expand your skills and get inspired.

Register for free
Adobe Summit Banner

A virtual event April 27-28.

Expand your skills and get inspired.

Register for free