Host Transport XFA esplicito
Unità: HPDFXFARuntime
Dichiarazione
Options := TXFAWidgetRuntimeOptions.Default;
Options.ScriptOptions.EnableJavaScript := True;
Options.HostTransport := ApplicationHost.Transport;
Options.OnHostTransactionCompleted := ApplicationHost.Completed;
Comportamento
Configura callback applicative esplicite per eseguire xfa.host.messageBox, response, beep, print, gotoURL, submitForm, importData ed exportData, e FormCalc Get, Post e Put
La libreria non invoca automaticamente dialoghi, reader, richieste di rete né trasferimenti di file; la callback implementa il transport applicativo e restituisce una risposta tipizzata
Ogni richiesta inviata gira una volta dentro una transazione runtime contenitore; i retry di sospensione QuickJS e il replay di sessioni committate consumano le risposte registrate senza ripetere le callback
Le richieste preservano gli argomenti posizionali come stringhe Unicode, argomenti vuoti inclusi; la sequenza delle richieste parte da zero per ogni transazione
Le transazioni fallite ripristinano lo stato di documento e oggetti script e notificano la callback di completamento con Committed=False; l'applicazione deve fare staging o compensare i suoi effetti esterni perché il rollback del documento non può annullare un'operazione esterna
Le callback di completamento girano una volta dopo validazione e layout del documento riusciti o dopo il rollback, prima dei normali osservatori di successo; le callback non devono sollevare eccezioni né rientrare nel runtime
Le callback host richiedono la sessione QuickJS fornita; callback JavaScriptEvaluator personalizzate non forniscono il contratto di checkpoint e replay
Conteggio richieste, conteggio argomenti, byte delle richieste codificate e byte delle risposte hanno limiti positivi indipendenti; il tempo trascorso della callback conta contro il deadline della transazione, ma il codice applicativo sincrono non può essere interrotto forzatamente
Le funzioni script ricevono number, Boolean, string, null o undefined secondo il Kind della risposta; le risposte numeriche devono essere finite e le risposte Unicode devono contenere surrogate pair validi
API correlate
Host Transport XFA esplicito, TXFAHostTransaction e Runtime widget XFA dinamico interattivo