Strumenti servizi Web - Note sul rilascio

1.0 Introduzione
2.0 Software supportato e specifiche
3.0 Modifiche rispetto alla versione precedente
4.0 Problemi noti
   4.1 Esplora servizi Web
   4.2 Registro UDDI privato
   4.3 Interoperabilità con il runtime di IBM SOAP
   4.4 Generazione di un documento WSDL da un file DAD
   4.5 Generazione JSP degli strumenti Web
   4.6 Utilizzo del client di test universale
   4.7 Casi particolari in cui i servizi Web DADX supportano output multipli
   4.8 Le preferenze del driver JDB possono essere utilizzate solo su Linux
   4.9 I file di esempio DAD devono essere aggiornati se l'extender XML non è stato installato nella directory principale
   4.10 Problemi relativi ai servizi Web DADX
   4.11 Supporto per la generazione di DADX
   4.12 Errori WSDL dopo l'importazione di un file dei servizi Web da 4.0.x
   4.13 Problemi con l'utilizzo della riga comandi dei servizi Web
   4.14 Creazione servizi Web senza un server esistente
   4.15 Generazione dell'applicazione di esempio dei servizi Web
   4.16 Importazione file WSDL con l'autenticazione di base HTTP
   4.17 Problema con l'utilizzo del runtime di WebSphere v5.0.2 runtime
   4.18 Impostazione di un gruppo DADX con informazioni sull'origine dati
   4.19 Caricamento dell'indicatore di posizione utilizzando il client di test universale
   4.20 Preferenze delle risorse non rispettate
   4.21 Problemi con l'utilizzo del runtime di Apache Axis 1.0
   4.22 Impossibile compilare la JSP di esempio dei servizi Web
   4.23 Problemi con la riga comandi dei servizi Web in tedesco
   4.24 Errore se localhost non è definito
   4.25 Limitazioni permanenti con l'utilizzo del runtime di IBM SOAP
   4.26 Servizi Web e client che utilizzano runtime diversi
   4.27 Selezione di Fine nella procedura guidata Client dei servizi Web
   4.28 Pagina di aiuto dei Servizi Web

1.0 Introduzione

La funzione Strumenti servizi Web consente di individuare, creare e pubblicare i servizi Web per i bean Java, DADX, i bean enterprise e gli URL. In questo file Readme vengono descritti i problemi noti, le limitazioni e le soluzioni associate alle seguenti funzioni di Strumenti servizi Web:

2.0 Software supportato e specifiche

Esplora servizi Web supporta i seguenti browser Web:

Questa versione degli strumenti dei servizi Web consente di generare codice conforme alle seguenti specifiche:

Questa versione degli strumenti dei servizi Web supporta:

Se si desidera avviare l'ambiente di test WORF esternamente al workbench utilizzando Mozilla, si consiglia di utilizzare almeno la versione 1.3.1 di Mozilla. L'output ottenuto richiamando il servizio Web e la descrizione dei file potrebbe non essere visualizzato correttamente nelle versioni precedenti del browser Mozilla.

Il runtime di DADX richiede DB2 7.2 fix pack 6 o successivo. oppure DB2 8.1 o versione successiva.

3.0 Modifiche rispetto alla versione precedente

Di seguito sono riportate le nuove funzioni aggiunte agli strumenti dei servizi Web nella versione 5.1:

4.0 Problemi noti

4.1 Esplora servizi Web

4.2 Registro UDDI privato

4.3 Interoperabilità con il runtime di IBM SOAP

4.4 Generazione di un documento WSDL da un bean DADX

4.5 Generazione JSP degli strumenti Web

Durante l'avvio di Universal Test Client dalla procedura guidata Servizi Web, l'URL del fornitore JNDI è impostato sulla porta predefinita 2809 di WebSphere v5. Se si utilizza un server WebSphere v4 o se è stato modificato il numero di porta, non sarà possibile eseguire la ricerca nella directory JNDI. Tentando di accedere a tale directory si otterrà il seguente messaggio di errore:

IWAD0403E Impossibile creare la struttura JNDI: rilevato CORBA.COMM_FAILURE durante la risoluzione del riferimento iniziale=WsnNameService

Per risolvere il problema:

  1. Fare doppio clic sul server che si sta utilizzando, in modo da visualizzarne le proprietà.
  2. Selezionare la scheda Porte.
  3. Copiare la porta bootstrap Orb.
  4. Aprire la finestra delle proprietà JNDI nel client di test universale.
  5. Incollare la porta bootstrap nella casella di immissione testo relativa all'URL del fornitore.

4.7 Casi particolari in cui i servizi Web DADX supportano output multipli

Generalmente gli strumenti non supportano output multipli in un servizio Web; ciò non vale per i servizi Web DADX, che possono supportare output multipli se si imposta la proprietà Utilizza gruppo di stile documento su true. In questo caso, se stile documento è impostato su true, gli output multipli vengono riuniti in un unico documento XML.

4.8 Le preferenze del driver JDB possono essere utilizzate solo su Linux

È stata aggiunta una nuova categoria di preferenze dei servizi Web denominata driver JDBC a cui è possibile accedere selezionando Finestra > Preferenze > Servizi Web. Anche se tale preferenza è disponibile in tutte le piattaforme, è stata concepita per l'utilizzo esclusivo in Linux. In Linux può risultare difficile determinare il percorso del file JAR che contiene i driver JDBC. Questa pagina delle preferenze è stata aggiunta per poter specificare il file JAR da utilizzare. Attualmente, solo il codice di convalida DADX utilizza le informazioni del file JAR.

4.9 I file di esempio DAD devono essere aggiornati se l'extender XML non è stato installato nella directory principale

I file DAD memorizzati nella directory WSinstall_dir\wstools\eclipse\plugins\com.ibm.etools.webservice_<version>\samples\DADX_examples devono esser modificati in due punti per rispettare la configurazione del sistema.

Accanto alla parte iniziale del file è possibile individuare una riga simile a quella riportata di seguito:

<!DOCTYPE DAD SYSTEM "c:\dxx\dtd\dad.dtd">

Se l'extender XML è stato memorizzato in un percorso diverso rispetto a c:\dxx è necessario modificare tale stringa in modo che riporti l'attuale percorso dell'extender XML. Questo vale anche per i sistemi Linux, in cui la posizione è solitamente /usr/IBMdb2xml.

4.10 Problemi relativi ai servizi Web DADX

4.11 Supporto per la generazione di DADX

Anche se le funzioni definite dall'utente sono elencate nella procedura guidata Generazione di DADX, attualmente non è possibile generare DADX dalle funzioni definite dall'utente. Il supporto è disponibile solo per la generazione di DADX dai file DAD, dalle procedure memorizzate e dalle istruzioni SQL. Selezionando una UDF verrà generata una semplice struttura DADX.

4.12 Errori WSDL dopo l'importazione di un file dei servizi Web da 4.0.x

Se viene importato un file dei servizi Web da 4.0.x, è possibile che vengano visualizzati i seguenti messaggi di errore:

Errore La parte 'result' contiene un valore 'anyElement' non valido definito per un suo tipo. Le dichiarazioni dei tipi devono fare riferimento a valori validi definiti in uno schema.

Errore La parte 'return' contiene un valore 'findPatientResult' non valido definito per un suo elemento. Le dichiarazioni degli elementi devono fare riferimento a valori validi definiti in uno schema.

Errore La parte 'response' contiene un valore 'findPatientResponse' non valido definito per un suo elemento. Le dichiarazioni degli elementi devono fare riferimento a valori validi definiti in uno schema.

Per risolvere il problema:

  1. Eliminare i file WSDL.
  2. Rigenerare i servizi Web eseguendo nuovamente la procedura guidata dei servizi Web.

4.13 Problemi con l'utilizzo della riga comandi dei servizi Web

4.14 Creazione servizi Web senza un server esistente

4.15 Generazione dell'applicazione di esempio dei servizi Web

4.16 Importazione file WSDL con l'autenticazione di base HTTP

Durante la generazione delle strutture o dei client da un file WSDL le cui importazioni relative e autenticazione di base HTTP sono protette, verrà visualizzato un messaggio di errore che indica che il file WSDL non può essere risolto anche immettendo l'ID utente e la password corretti. Il problema è dovuto al fatto che l'ID utente e la password sono utilizzati solo per richiamare il file WSDL originale, e non i file importati.

Per risolvere il problema, è possibile scaricare il file WSDL e tutti i file che importa nel workbench e successivamente generare la struttura o il client dal file WSDL scaricato.

4.17 Problemi con l'utilizzo del runtime di WebSphere v5.0.2

4.18 Impostazione di un gruppo DADX con informazioni sull'origine dati

Se WebSphere Application Server V5.0 viene utilizzato per contenere un servizio Web DADX, il file group.properties del gruppo DADX dovrà utilizzare la seguente proprietà initialContextFactory:

initialContextFactory=com.ibm.websphere.naming.WsnInitialContextFactory

Inoltre, al file web.xml del progetto che contiene il gruppo DADX, dovrà essere aggiunto quanto segue (ammesso che il nome JNDI dell'origine dati sia jdbc/hospital):

       <resource-ref id="ResourceRef_1058550453092">
              <res-ref-name>jdbc/hospital</res-ref-name>
              <res-type>javax.sql.DataSource</res-type>
              <res-auth>CONTAINER</res-auth>
              <res-sharing-scope>Shareable</res-sharing-scope>
       </resource-ref>
 

4.19 Caricamento dell'indicatore di posizione utilizzando il client di test universale

Se il client di test universale non è in grado di precaricare la classe locator del client mediante il runtime di WebSphere v5.0.2 o Axis, la causa è che il nome della classe del bean Java nel progetto Web del servizio è lo stesso della classe SEI nel progetto Web del client. Per risolvere questo problema:

  1. Rimuovere il progetto Web del client dallo spazio di lavoro
  2. Creare il progetto Web del client in un EAR differente, il cui nome preceda in ordine alfabetico il nome del progetto EAR del servizio.  Ad esempio, se il nome del progetto EAR del servizio è "DefaultEAR", creare un nuovo nome "ClientEAR".
  3. Eseguire nuovamente la procedura guidata Servizi Web.

 

4.20 Preferenze delle risorse non rispettate

Le preferenze di sovrascrittura file, creazione cartelle e estrazione automatica dei file non vengono osservate durante la creazione dei servizi Web utilizzando i runtime di WebSphere v5.0.2 e Axis. La creazione di cartelle sarà sempre consentita e l'estrazione automatica dei file non sarà mai abilitata.

Durante l'utilizzo del runtime di WebSphere v5.0.2, il file WSDL, SEI e le risorse di distribuzione (serializer e deserializer) vengono sempre sovrascritti. Le risorse di sviluppo (bean di servizio, bean di tipo complesso, classe holder e helper) non vengono mai sovrascritti. Tuttavia, verrà visualizzato un messaggio di avviso relativo alla sovrascrittura dei descrittori, se esistenti. Per sovrascrivere i descrittori di distribuzione e continuare con la procedura scegliere OK, oppure scegliere Annulla se non di desidera sovrascrivere i descrittori.

Durante l'utilizzo del runtime di Apache Axis 1.0, gli emittenti Axis rigenerano ogni volta tutti i file Java del server/client, deploy.wsdd and undeploy.wsdd. WSDL2Java per la generazione del servizio genererà solo il file di implementazione della struttura, se non ancora creato. Se questa implementazione esiste già, non verrà sovrascritta.

4.21 Problemi con l'utilizzo del runtime di Apache Axis 1.

4.22 Impossibile compilare la JSP di esempio dei servizi We

Durante la generazione delle strutture o dei proxy del servizio Web da un file WSDL che utilizza lo stesso nome per uno dei suoi <servizio> elemento e <porta> elemento, non utilizzare le JSP di esempio come client di verifica. Le JSP di esempio generate contengono errori e non verranno compilate. Qualsiasi tentativo di esecuzione delle JSP di esempio sul server produrrà l'ERRORE 500 nel browser che indica che le JSP di esempio non possono essere caricate, e una serie di eccezioni nella console del server che indicano che il contenitore servlet non è stato in grado di compilare le JSP di esempio.

4.23 Problemi con la riga comandi dei servizi Web in tedesco

Quando si esegue lo strumento riga comandi su Windows un tedesco, alcuni caratteri vengono visualizzati come "?" nell'output del prompt dei comandi. Questo carattere corrisponde a una dieresi.

4.24 Errore se localhost non è definito

La procedura guidata Creazione servizi Web potrebbe avere esito negativo durante la generazione di WSDL se il nome host "localhost" non è definito nel computer. Se "localhost" non è definito è possibile anche che UTF non venga avviato correttamente.

In Windows, la seguente voce deve essere inserita nel file [INSTALL-DRIVE]\WINNT\system32\drivers\etc\hosts:

127.0.0.1 localhost

In Linux, la seguente voce deve essere inserita nel file /etc/hosts:

127.0.0.1 localhost

4.25 Limitazioni permanenti con l'utilizzo del runtime di IBM SOAP

Il runtime di IBM SOAP dovrebbe essere utilizzato soprattutto per motivi di compatibilità con versioni precedenti. Si consiglia vivamente di utilizzare la procedura guidata Servizi Web con il runtime di IBM WebSphere 5.0.2 per tutta la produzione. Quando si utilizza la procedura guidata Servizi Web con il runtime di IBM SOAP, potrebbero verificarsi le seguenti limitazioni permanenti:

4.26 Servizi Web e client che utilizzano runtime diversi

Se si crea un servizio Web da un bean Java o EJB, scegliendo IBM SOAP come runtime del servizio e Apache Axis 1.0 come runtime del client, potrebbe essere visualizzato il seguente errore:
WSDL non trovato

Per evitare questo problema, creare prima il servizio Web senza generare un proxy. Quindi creare un client per il servizio Web dal file WSDL generato.

4.27 Selezione di Fine nella procedura guidata Client dei servizi Web

Procedendo con la procedura guidata Client dei servizi Web, scegliendo fine nella pagina Configurazione dell'ambiente del client, verrà visualizzato l'errore:

"null" non risolvibile

Per risolvere il problema, premere Avanti nella pagina e nella pagina successiva, quindi Fine.

4.28 Pagina di aiuto dei Servizi Web

Nelle pagine di aiuto Creazione, verifica e convalida di un servizio Web compatibile con WS-I e Creazione di un servizio Web da un file WSDL, se si utilizza il file HelloService.wsdl da wsad_install/wstools/eclipse/plugins/com.ibm.etools.cs.wsdl.content_5.1/examples, modificare il percorso della porta del servizio in base ai diversi runtime, come mostrato di seguito:

Per IBM Soap:

location="http://localhost:9080/HelloWorldSample/servlet/rpcrouter"

Per i runtime di Apache Axis o WebSphere 5.0.2:

location="http://localhost:9080/HelloWorldSample/services/Hello_Port"

Se si desidera importare un file wsdl personalizzato, assicurarsi che il percorso sia stato impostato correttamente in base al runtime selezionato come indicato precedentemente.

Visualizza il file Readme principale