L'editor delle opzioni di generazione indica che WebSphere Application Server 5.1 è un tipo di server supportato. Tuttavia sono supportate solo le versioni 5.1.1 o successive di WebSphere Application Server.
Descrizione: durante l'esecuzione di un'istruzione openUI di un modulo console, i valori restituiti nelle variabili di bound non contengomo mai un valore ?null? . In I4GL, se non viene immesso alcun valore in un campo modulo, viene restituito un valore null.
Soluzione: se l'applicazione verifica specificamente la presenza di un valore ?null? durante o dopo un'istruzione openUI in un modulo, sarà necessario modificare la logica in modo che cerchi un valore di stringa vuota invece di null.
Descrizione: in I4GL, l'istruzione ?for I = 0 to 1 by -1 ? fa sì che il blocco di codice di ciclo venga eseguito zero (0) volte. In EGL, questo stesso blocco di codice genererà un ciclo infinito, causando una eccezione di interi fuori limite o una eccezione di overflow dello stack.
Soluzione: rielaborare EGL per l'istruzione in modo che il blocco di codice del ciclo venga eseguito il numero di volte desiderato. In alternativa, è possibile modificare il ciclo for in una istruzione while che esegue il blocco di codice il numero di volte desiderato.
Descrizione: a volte l'utilità di conversione espande i record delle schermate per tutte le colonne nella tabella anche se viene utilizzato un solo sottoinsieme di per definire i record della schermata.
Soluzione: rimuovere i nomi di colonne estranei dalle istruzioni EGL convertite.
Descrizione: le condizioni IF in "IF ! xxx" o "IF xxx" attivano errori di convalida. Le espressioni booleane non sono supportate in EGL e generano errori di convalida.
Soluzione: l'utilità di conversione automaticamente converte tali funzioni IF in base al contesto in cui sono utilizzate; questa limitazione non influenza la conversione delle applicazioni I4GL. Viene documentato qui in modo che gli utenti I4GL conoscano il livello di supporto delle condizioni IF durante la scrittura delle nuove applicazioni in EGL.
Per le espressioni booleane, convertire il risultato booleano di una condizione nel valore numerico 0 o 1.
Quando si utilizza l'editor dei moduli EGL o si modifica l'origine manualmente per una parte del modulo, verrà visualizzato il seguente messaggio quando la proprietà "validValuesMsgKey" viene utilizzata con un campo del modulo il cui tipo primitivo non è numerico, ad esempio char o db char:
IWN.VAL.5381.e 76/0 Proprietà: validValuesMsgKey. Il valore per questa proprietà per il campo ... nel modulo ... non è valida. La proprietà è relativa ad un elemento numerico.
Per utilizzare questa proprietà con un primitivo non numerico, procedere come segue:
- Aprire il file contenente il modulo con l'editor EGL. Selezionare il file con il tasto destro del mouse e selezionare Apri con > Editor EGL nella vista Esplora progetti.
- Invece di specificare un tipo primitivo nella dichiarazione del campo per cui è stato impostato validValuesMsgKey, specificare una parte dell'elemento dati nella dichiarazione del campo. La parte dell'elemento dati deve specificare lo stesso tipo primitivo del campo.
Ad esempi se il campo originale è stato definito come:
ACTION char(1) {inputRequiredMsgKey = "0003", validValues = ["I","S","U","D"], ..., validValuesMsgKey = "0004"}; //This line should have IWN.VAL.5381 error Change the definition of the field to:
ACTION charOneItem {inputRequiredMsgKey = "0003", validValues = ["I","S","U","D"], ..., validValuesMsgKey = "0004"}; //This line should have no error
Nello all'esterno di formGroup, immettere:
DataItem charOneItem char(1) { validValuesMsgKey="1000" } end
Le annotazioni XSD applicate alle definizioni di elementi dati, definizioni di record e dichiarazioni di elementi record che riflettono i facet dei tipi di dati di schema XML rilevati in un file WSDL di un servizio Web, hanno significato solo se utilizzati nei parametri di funzione dell'supportati e restituiscono valori derivati da un file WSDL.
Esempio:
DataItem weekend string {@xsd {enumeration=["Saturday", "Sunday"] }} end // this reflects the WSDL restriction on values for weekend
Interface calander
public function weekendPlanner (weekendDay weekend in, . . .); // only argument values Saturday and Sunday can be sent to this Web service function
end
La procedura guidata Creazione interfacce EGL supporta solo file WSDL di tipo RPC/Encoded, RPC/Literal e Document/Literal (Wrapped). I file WSDL di tipo Document/Literal (Unwrapped) non sono supportati.
La procedura guidata Creazione libreria binding di servizio da un servizio EGL non copia i file WSDL in un progetto diverso. Se la libreria binding di servizio viene creata in un progetto diverso da quello in cui è stato generato il servizio, l'utente dovrà inserire manualmente una copia dei file indicati come riferimento dalla libreria nel percorso specificato dal binding del Web.
Non è possibile utilizzare EGL debugger per i programmi che contengono prospetti. Il supporto per questa funzione verrà fornito in una versione futura.
I servizi generati come Servizio Web o Librerie di binding di servizio con i binding Web genereranno codice Java con errori di compilazione se vengono utilizzate matrici multidimensionali come parametri o vengono definite nei record utilizzati come parametri nel servizio o nelle funzioni dell'interfaccia, quando la generazione avviene in un progetto Web con livello J2EE 1.3.
Service myService
function f1(param string[][][] in) // causes compilation errors when generated as a Web Service to a Web Project with J2EE 1.3
. . .
end
end
Service myService
function f1(param string[] in) // generates OK to a Web Project with J2EE 1.3
. . .
end
end
I servizi generati come Servizio Web o Librerie di binding di servizio con i binding Web genereranno codice Java con errori di compilazione se vengono utilizzati record fissi che contengono elementi di dati strutturati con occorrenze > 1 come parametri o vengono definiti nei record utilizzati come parametri nel servizio o nelle funzioni dell'interfaccia, quando la generazione avviene in un progetto Web con livello J2EE 1.3.
Esempio:
Record mySubstructuredRecord 10 item1 char(10); 20 item 2 char(10); end
Service myService public function f1(param mySubstructuredRecord in) // causes compilation errors when generated as a Web Service to a Web Project with J2EE 1.3 . . . end end
Record myFlatRecord 10 item1 char(10); 10 item2 char(10); end
Service myService public function f1(param myFlatRecord in) // generates OK to a Web Project with J2EE 1.3 . . . end end
I servizi generati come Servizio Web o Librerie di binding di servizio con i binding Web genereranno codice Java con errori di compilazione se vengono utilizzate matrici multidimensionali come parametri o vengono definite nei record utilizzati come parametri nel servizio o nelle funzioni dell'interfaccia generate in un progetto Web con livello J2EE 1.3 e attiveranno una eccezione Java durante il runtime.
Utilizzando la procedura guidata Creazione interfaccia EGL con due o più file WSDL che contengono gli stessi tipi di definzione di schema XML nello stesso progetto EGL, verranno create definizioni di dati EGL duplicate che causeranno errori di convalida EGL.
Se il programma EGL accede ad un database Oracle ed utilizza l'istruzione OPEN per aprire un insieme di risultati, la proposizione SELECT dell'istruzione OPEN non sarà in grado di utilizzare i nomi delle variabili host. Se vengono specificati i nomi delle variabili host, non verrà impostato alcun valore nell'elemento corrispondente della proposizione in uso dell'istruzione OPEN.
EGL fornisce un generatore che compila i file JasperReport ad ogni salvataggio. Se le applicazioni EGL dispongono di un gestore prospetti, assicurarsi che sulla macchina di sviluppo sia installato Java SDK 1.3.1 (o un livello successivo), e che la directory SDK bin sia elencata come parte della variabile di ambiente del sistema PATH (ad esempio, C:\jdk1.3.1_14\bin). Se Java SDK non è installato, durante la generazione dei file .jrxml file verrà visualizzato un errore simile al seguente: Errore durante la compilazione del file di origine java del prospetto.
Questo refresh pack comprende diverse modifiche alla sintassi EGL precedente. Se si sono create delle parti EGL utilizzando la Versione 5.1.2 o 6.0 del prodotto, probabilmente verranno visualizzati degli errori di convalida per queste parti dopo aver installato questo refresh pack. Per aggiornare la sintassi dei file di origine, viene fornito un semplice strumento di migrazione. Per ulteriori informazioni sullo strumento di migrazione di EGL V6.0, fare riferimento alla documentazione di EGL.
Visualizza il file Readme principale
©Copyright IBM Corporation 2000, 2005. Tutti i diritti riservati.