1.0 Introduzione
2.0 Problemi noti
2.1 Ambiente di sviluppo Web
2.2 Debug su WebSphere Application Server
2.3 Debugger JavaScript
2.4 Debugger delle procedure memorizzate SQL
2.5 Strumenti per il test e la distribuzione (strumenti server)
2.6 Debugger JTD (Java Development Tools)
2.7 Debugger di linguaggio compilato
2.8 Limitazioni relative alla lingua nazionale
2.9 Debugger SQLJ
2.10 Debug di script attivi
I debugger in WebSphere Studio forniscono gli strumenti necessari per eseguire il debug di applicazioni Web JavaScript del server, Java, Script attivi, SQLJ, Procedure memorizzate SQL e linguaggi compilati. Questo file readme descrive i problemi noti e le limitazioni associate ai debugger di WebSphere Studio.
Debug JSP:
- I file JSP possono essere sottoposti a debug durante la verifica su WebSphere Application Server. Se si esegue la verifica su un server Tomcat, il debugger non si fermerà ai punti di interruzione JSP.
- I punti di interruzione possono essere impostati nei file all'interno dei seguenti tag:
- Scriptlet del modulo: <% %>
- Espressioni JSP del modulo: <%= %>
- Dichiarazioni JSP con formato: <%! %>
- Tag jsp:useBean, jsp:getProperty e jsp:setProperty
- Tag personalizzati
- I punti di interruzione non possono essere impostati per i seguenti insiemi di tag:
- Codice HTML
- Direttive JSP
- Tutti gli altri tag JSP standard (jsp:include, jsp:forward e così via)
- Se si esegue la migrazione di uno spazio di lavoro da una vecchia versione di WebSphere Studio alla versione corrente, è necessario eliminare i punti di interruzione JSP e ricrearli.
- La modalità di debug per passi avrà esito negativo con alcuni metodi locali EJB: se si utilizza l'adattatore di debug di WebSphere Application Server per avviare una sessione di debug, la modalità di debug per passi non si arresterà per alcuni metodi locali EJB. Per eseguire il debug di questi metodi è necessario utilizzare i punti di interruzione.
- L'operazione di inversione da Java a JavaScript non è supportata: utilizzare i punti di interruzione se si desidera ritornare al codice JavaScript da Java.
- Debug dei JSP:
- Il debug per passi non verrà eseguito per i JSP che non contengono codice eseguibile.
- Se si utilizza l'adattatore di debug di WebSphere Application Server per avviare una sessione di debug, non sarà possibile esaminare o visualizzare variabili o espressioni JSP.
- Nei JSP non è supportata la funzione di esecuzione fino alla riga.
- L'impostazione dei punti di interruzione JSP potrebbe essere lenta. Più numerosi sono i punti di interruzione JSP, maggiore dovrà essere il tempo previsto per consentire al debugger di eseguire l'inizializzazione.
- I punti di interruzione sulle variabili statiche nei blocchi di dichiarazioni JSP non funzionano e potrebbero causare altri problemi ai punti di interruzione.
- Alcune proprietà dei punti di interruzione, come ad esempio numero passaggi, condizione, thread selezionato o i criteri di sospensione della VM, non sono supportate per i punti di interruzione JSP.
- Non impostare punti di interruzione Java nell'editor Debugger: i punti di interruzione Java devono essere impostati nell'editor Java e non nell'editor Debugger.
- Utilizzo della voce del menu di scelta rapida della vista Cambia file di origine: se si modifica il file di origine visualizzato utilizzando la voce del menu di scelta rapida Cambia file di origine nel frame dello stack, il nuovo file potrebbe non essere visualizzato nell'editor. Per risolvere questo problema, fare clic su un altro frame dello stack e quindi fare clic di nuovo sul frame dello stack originale. In questo modo il nuovo file dovrebbe essere aperto nell'editor.
- Console di debug: nella console di debug, i collegamenti ipertestuali ai tipi aperti non funzionano.
- Etichette del frame dello stack dopo una sostituzione in modalità attiva: se, dopo la sostituzione del codice attivo, alcuni frame dello stack hanno etichette come
<unknown receiving type>(<unknown declaring type>). <unknown method name>(<unknown arguments>) line: not available <unknown line number>è possibile ottenere le etichette corrette passando ad un'altra prospettiva e tornando alla prospettiva Debug.
- Non è possibile esaminare un oggetto JavaScript fino al completamento del relativo costruttore: è possibile passare attraverso l'esecuzione del costruttore, ma non è possibile esaminare l'oggetto in costruzione fino al completamento della costruzione (chiusura del costruttore).
- Avanzamento per passi e frame dello stack sottostanti al frame dello stack superiore: in JavaScript le operazioni Passa su o Passa a precedente relative ai frame dello stack diversi da quello superiore, non sono consentite.
- JSP include: non è supportato il debug JavaScript in JSP include.
- Uscita da funzioni ricorsive: quando si esegue il debug di funzioni JavaScript ricorsive, in caso di uscita, si ritorna al primo livello di esecuzione.
- Non espandere oggetti contenenti variabili writer o inputStream: durante l'esame di oggetti JavaScript, gli utenti vengono avvisati di non espandere oggetti contenenti le variabili writer o inputStream. Questa operazione infatti interromperebbe le comunicazioni con il debugger.
- Ambiente di test: il debug di JavaScript non funziona quando si utilizza WebSphere V5 Test Environment. Questo problema è stato risolto con la correzione APAR #PQ73036.
- L'importazione e l'eliminazione del database nella vista Definizione dati può provocare la perdita dei punti di interruzione impostati: se si esegue il debug di una procedura memorizzata SQL prima di importare il database in una cartella della vista Definizione dati e poi si importa il database, tutti i punti di interruzione di riga creati andranno persi. Una volta importato il database, il debugger utilizzerà quella cartella per visualizzare l'origine. Se si eliminano le informazioni sul database importato, si perderanno anche quelle sui punti di interruzione la volta successiva che si tenta di eseguire il debug di una procedura memorizzata SQL. In tal modo, non si ripristineranno i punti di interruzione persi quando il database viene importato la prima volta.
Per evitare questo problema, si consiglia di importare il database prima di eseguire il debug di una procedura memorizzata.
- Il debug delle procedure memorizzate Java non è supportato: l'editor consente di aggiungere punti di interruzione al codice di origine di una procedura memorizzata Java. Tuttavia, questi punti di interruzione vengono ignorati in quanto il debug delle procedure Java non è ancora supportato.
- Nomi delle procedure memorizzate limitati: il debugger delle procedure memorizzate SQL fornisce supporto limitato per le procedure con supporto e nomi determinati. Tali procedure dovranno essere avviate dalla finestra Avvia configurazione e non dal menu di scelta rapida nella vista Definizione dati.
- Supporto per più sessioni per il debug di procedure memorizzate SQL attive allo stesso tempo: nella versione 5.0 di questo prodotto, non era possibile avere più di una sessione per il debug delle procedure memorizzate SQL aperta allo stesso tempo. Questa limitazione non riguarda la versione 5.0.1 o le versioni successive di questo prodotto.
- Procedure memorizzate per argomenti FOR BIT DATA: le procedure memorizzate che contengono argomenti con l'attributo FOR BIT DATA non possono essere sottoposte a debug con il debug delle procedure memorizzate SQL di WebSphere Studio.
- La configurazione di avvio creata con la versione EA (Early Availability) del prodotto potrebbe non essere riconosciuta nel prodotto corrente: se è stata installata la versione EA (Early Availability) di questo prodotto in cui è stata creata la configurazione di avvio del debugger delle procedure memorizzate, è possibile che le impostazioni della configurazione non vengano riconosciute dalla versione corrente di questo prodotto. Le impostazioni della configurazione di attivazione salvate nella versione EA (Early Availability), potrebbero essere annullate ripristinando i valori predefiniti se questa configurazione viene aperta nella versione corrente del prodotto.
Quando si esegue un server in modalità debug, ricordarsi che:
- L'avvio e l'esecuzione del server può essere più lenta rispetto a un'altra modalità.
- La compilazione delle pagine JSP può durare più a lungo.
Le informazioni relative ai problemi noti e alle limitazioni degli strumenti di sviluppo Java, sono disponibili nelle note sul rilascio di JDT (Java Development Tools) e del Workbench (IDE). I collegamenti a tali argomenti sono disponibili nel readme installato con il prodotto.
- Errore "Impossibile trovare DLL": se quando si avvia una sessione debug compilata viene riprodotto il messaggio Windows che indica che è impossibile rilevare la DLL, eliminare la variabile di ambiente LOCPATH.
- Impossibile trovare una stringa esistente in un'origine o in una vista di elenco di un programma: se si lavora con un origini o elenchi di file di ampie dimensioni, la funzione trova dell'editor Debugger potrebbe non essere in grado di individuare le stringhe. Questa situazione può verificarsi quando solo una parte dell'origine o dell'elenco viene caricata nell'editor.
- Le viste di archivio mostrano caratteri non corretti: quando la vista Memoria viene formattata come "esadecimale e carattere", i dati esadecimali risulteranno corretti, ma verranno visualizzati correttamente solo i caratteri con codifica a singolo byte .
- Lo scorrimento salta più righe del previsto: lo scorrimento in avanti o indietro nell'Editor del debugger, potrebbe saltare più righe del previsto. Per andare ad una riga specifica, utilizzare l'azione Vai alla riga (Ctrl-L).
- Limitazioni BiDi (Bidirectional): non è possibile utilizzare l'editor Debugger quando si esegue il debug dei JSP che sono stati codificati con una codepage diversa da quella nativa.
- Debugger linguaggio compilato:
- In sistemi a byte singolo (SBCS), il debugger per il linguaggio compilato non supporta i nomi dei programmi o il passaggio di parametri del programma contenenti caratteri superiori a 0x7F.
- L'uso di caratteri nazionali nei nomi e negli argomenti di debug non è supportato.
Durante l'esecuzione di swap attivi durante il debug con J9 JVM, se vi sono metodi SQLJ sullo stack di chiamate, verrà visualizzata la finestra Metodi obsoleti nello stack. Se lo swap attivo era riferito a una classe SQLJ, la classe verrà ricaricata nella JVM, ma il nuovo codice in esecuzione non verrà visualizzato fino al prossimo richiamo di un metodo nella classe.
Se si esegue lo swap attivo di una classe SQLJ, i punti di interruzione SQLJ non funzioneranno per la classe durante la sessione di debug corrente.
Applicazione script HTML
È possibile che si verifichino i seguenti problemi quando si tenta di avviare una sessione di debug di un'applicazione script HTML:
- Un messaggio di errore "Errore durante la creazione della destinazione di debug".
- Durante il tentativo di collegarsi a un browser esistente per il debug, il debugger non sarà in grado di richiamare un elenco dei browser in esecuzione.
Per risolvere questi problemi, procedere come segue:
- Chiudere tutti i browser in esecuzione e le finestre di Microsoft(R) Windows Explorer prima di avviare un'altra sessione di debug.
- Se il problema non si risolve in questo modo, significa che il processo mdm.exe è danneggiato. Chiudere tutti i browser in esecuzione e le viste file, quindi arrestare mdm.exe da Task Manager di Windows(R). Riavviare la sessione di debug.
Durante il tentativo di collegarsi a un browser esistente per il debug, non collegarsi al browser interno del workbench di WebSphere Studio. Questa operazione potrebbe causare l'arresto del workbench e potrebbero verificarsi risultati non previsti.
È possibile che si verifichino i seguenti problemi durante una sessione di debug di un'applicazione script HTML:
- Il percorso corrente non è evidenziato nell'editor quando la sessione di debug viene sospesa.
- Non è possibile installare i punti di interruzione.
- L'origine non è disponibile per la visualizzazione se l'origine è esterna allo spazio di lavoro del workbench.
Per risolvere questi problemi, procedere come segue:
- Il browser potrebbe non aver caricato la pagina correttamente. Aggiornare la pagina in Microsoft(R) Internet Explorer (potrebbe essere necessario ripetere l'operazione più volte).
- Se l'aggiornamento della pagina non risolve il problema, terminare la sessione di debug. Chiudere tutti i browser in esecuzione e le viste file, e riavviare la sessione di debug.
- Se il problema non si risolve in questo modo, significa che il processo mdm.exe è danneggiato. Chiudere la sessione di debug, tutti i browser in esecuzione e le viste file. Quindi terminare mdm.exe da Task Manager di Windows(R) e riavviare la sessione di debug.
Se la finestra della guida del workbench o il browser interno sono aperti durante il debug di uno script attivo, la sessione di debug potrebbe subire interferenze e causare risultati non previsti.
I punti di interruzione impostati prima di una sessione di debug vengono ignorati se la pagina viene distribuita in un server. Per impostare i punti di interruzione, sospendere la sessione di debug per visualizzare l'origine e impostare il punto di interruzione nella pagina temporanea. Per ulteriori informazioni, fare riferimento alla sezione "Impostazione punti di interruzione riga".
Il debugger degli script attivi utilizza Microsoft(R) Script Debugger per ottenere le informazioni di debug. Per ulteriori informazioni su Microsoft(R) Script Debugger, fare riferimento al relativo file ReadMe.htm.
Applicazione host di script
È possibile che si verifichino i seguenti problemi quando si tenta di avviare una sessione di debug di un'applicazione host di script:
- Un messaggio di errore "Errore durante la creazione della destinazione di debug".
Per risolvere questo problema, procedere come segue:
- Chiudere tutti i browser in esecuzione e le finestre di Microsoft(R) Windows Explorer prima di avviare un'altra sessione di debug.
- Se il problema non si risolve in questo modo, significa che il processo mdm.exe è danneggiato. Chiudere tutti i browser in esecuzione e le viste file, quindi arrestare mdm.exe da Task Manager di Windows(R). Riavviare la sessione di debug.
Visualizza il file Readme principale
(C) Copyright IBM Corporation 2000, 2003. Tutti i diritti riservati.