Strumenti dei Servizi Web - Note sul rilascio


1.0 Limitazioni
   1.1 Impossibile accedere al Registro UDDI privato di WebSphere V6 con DB2(R) dopo averlo distribuito su un Registro UDDI privato esistente
   1.2 Convalida del profilo allegati WS-I 1.0 non disponibile
   1.3 Le procedure guidata utilizzano sempre EAR di progetti esistenti ed ignorano le selezioni di altri EAR
   1.4 La casella di controllo "Controllo" della procedura guidata potrebbe essere in conflitto con i controlli esistenti
   1.5 Non scegliere il tipo di proxy client della "Funzione definita dall'utente per i servizi Web"
   1.6 Avvio di Esplora servizi Web disponibile solo nella prospettiva J2EE
   1.7 IWAB0107E Errore nella procedura guidata Servizi Web durante la creazione dei servizi Web DADX
   1.8 IWAB0534E Errore nella procedura guidata Servizi Web quando il server di destinazione selezionato non esiste
   1.9 IWAB0213E Errore nella procedura guidata Servizi Web quando il server di destinazione non è installato
   1.10 L'esempio StockQuote Axis può essere eseguito solo su Tomcat 5.0
   1.11 Esecuzione di esempi client protetti nel progetto EJB e nel progetto Client di applicazioni
   1.12 I file WSDL generati per i servizi Web con parametri di tipo complesso potrebbero essere diversi per le applicazioni J2EE 1.3 e J2EE 1.4
   1.13 Modifica del nome progetto client predefinito per il nuovo progetto EJB
   1.14 Gli scenari End to End restituiscono un messaggio di errore a comparsa restartModule su Websphere Application Server abilitato alla sicurezza v5.0 e v5.1
   1.15 I progetti router e EJB devono trovarsi nello stesso EAR
   1.16 LooseApps può essere visualizzato ma non modificato mediante admin console
2.0 Problemi noti
   2.1 La conclusione dello scenario ha esito negativo con il servizio Web Struttura IBM SOAP
   2.2 Gli scenari Skeleton e client non funzionano con l'autenticazione di base HTTP protetta WSDL
   2.3 Messaggio di errore nel progetto router JMS dopo l'esecuzione di Endpoint Enabler
   2.4 Supporto didattico: la creazione di un servizio web da un Java bean non crea il nome del pacchetto corretto
   2.5 L'eliminazione di una tassonomia definita dall'utente non elimina tModel dal registro UDDI privato.
   2.6 Codice generato in una posizione non corretta per i servizi web EJB con il supporto di annotazione
   2.7 Gli esempi dei servizi web nella Galleria degli esempi potrebbero essere importati con errori
   2.8 Eccezione restituita nello scenario client quando WSDL non dispone di alcun bind SOAP
   2.9 Gli scenari Skeleton non aggiornano i file Java generati durante richiami successivi della procedura guidata dei servizi web
   2.10 NullPointerException restituita in UDDIPublish/UDDIUnpublish -profileName <nome profilo>

1.0 Limitazioni

1.1 Impossibile accedere al Registro UDDI privato di WebSphere V6 con DB2(R) dopo averlo distribuito su un Registro UDDI privato esistente

È possibile che dopo aver distribuito un Registro UDDI privato di WebSphere v6 con DB2 su un Registro UDDI privato WebSphere v6 esistente, non sia più possibile accedervi. Al termine della procedura guidata Distribuzione UDDI, l'applicazione UDDI risulterà in esecuzione sul server ma la configurazione server non è riconosciuta. L'Ear UDDI non sarà in grado di interagire con il Registro UDDI DB2, quindi tutti i comandi eseguiti nell'applicazione UDDI avranno esito negativo con un errore (Errore di inizializzazione del nodo del registro). Questo include l'aggiunta delle tassonomie definite, che verranno attivate come errore di asse.

Soluzioni:
1. Preventiva: prima di distribuire un Registro UDDI di WebSphere v6 con DB2, utilizzare la procedura guidata UDDI per rimuovere tutti gli eventuali registri UDDI precedentemente installati. Quindi, richiamare nuovamente la procedura guidata UDDI per distribuire il Registro UDDI privato di WebSphere V6 con DB2.
2. Per correggere il registro installato: se si installa un Registro UDDI di WebSphere V6 con DB2 su un registro precedente e si verificano problemi, dalla console di gestione del server, arrestare il Registro UDDI e cominciare nuovamente.

1.2 WS-I Convalida del profilo allegati WS-I 1.0 non disponibile

Le impostazioni dei livelli di compatibilità WS-I AP riportati in Finestra -> Preferenze -> Servizi Web -> Compatibilità WS-I e in Proprietà del progetto non hanno effetto sulla convalida WSDL WS-I se impostate su "suggerisci" o su "obbligatoria". Queste preferenze, per impostazione predefinita, vengono impostate su "ignora".

Non esiste alcuna soluzione. Il documento WS-I Attachments Profile Test Assertion utilizzato dal validator WS-I WSDL per verificare la compatibilità del WSDL utilizzato con il profilo, non è stato reso pubblico dall'organizzazione WS-I in tempo affinché potesse essere incluso in questo rilascio di IBM Rational Developer. Quando il documento sarà pubblico, verrà rilasciata una correzione interim per l'abilitazione di queste preferenze.

1.3 Le procedure guidata utilizzano sempre EAR di progetti esistenti ed ignorano le selezioni di altri EAR

Se il servizio o il progetto client esiste già prima di avviare la procedura guidata Servizi Web o Client di servizi Web, le procedure guidate utilizzeranno sempre l'EAR che già contiene il progetto esistente, a prescindere dalla selezione effettuata nella pagina Configurazione della distribuzione del servizio o Configurazione dell'ambiente client. Se il progetto esistente non è stato aggiunto all'EAR prima di avviare una delle procedure, l'esito della procedura sarà negativo e verrà riportato il seguente errore:

IWAB0213E Errore all'avvio del server
Dettagli:
IWAB0213E Errore all'avvio del server.
org.eclipse.core.runtime.CoreException: WebSphere v5 supporta solo le applicazioni enterprise J2EE 1.2 e 1.3.
in com.ibm.etools.websphere.tools.v51.internal.WASTestServerWorkingCopy.modifyModules(origine sconosciuta)
...

Per risolvere questo problema, assicurarsi che i progetti destinati ai servizi Web o ai client di servizi Web siano già aggiunti all'EAR prima di avviare la procedura guidata. L'unica eccezione a questa regola è rappresentata dai progetti con un server di destinazione Tomcat perché in questo caso non devono essere aggiunti all'EAR.

1.4 La casella di controllo "Controllo" della procedura guidata potrebbe essere in conflitto con i controlli esistenti

Se si crea un controllo manualmente per il server di destinazione (scegliendo Controllo -> Proprietà... nella scheda Server), quindi si esegue la procedura guidata Servizi Web e si seleziona "Controlla il servizio Web " nella prima pagina della procedura, potrebbe verificarsi il seguente errore durante l'elaborazione:

IWAB0014E Si è verificata un'eccezione imprevista. null
java.lang.NullPointerException
in com.ibm.etools.webservice.consumption.command.common.CreateMonitorCommand.hasContentWebServices(CreateMonitorCommand.java:114)
...

Per risolvere il problema, eseguire nuovamente la procedura guidata disabilitando l'opzione Controlla il servizio Web, oppure scegliere Controllo -> Proprietà... nel server, rimuovere il controllo ed eseguire nuovamente la procedura guidata con l'opzione Controlla il servizio Web abilitata.

1.5 Non scegliere il tipo di proxy client della "Funzione definita dall'utente per i servizi Web"

Nella prima pagina delle procedure guidate Servizio Web e Client di servizi Web, sono disponibili due tipi di proxy client: "Proxy Java" (il predefinito) e "Funzione definita dall'utente per i servizi Web". Se si seleziona "Funzione definita dall'utente per i servizi Web" e si tenta di completare la procedura guidata o di proseguire oltre la pagina Selezione servizio Web, si verifica l'errore "IWAB0234E Si è verificato un errore interno. Dettagli: null".

Soluzione: non utilizzare le procedure Servizi Web per creare una funzione definita dall'utente per i servizi Web, ma selezionare Nuovo -> Altro -> Dati -> Funzione definita dall'utente per i servizi Web

1.6 Avvio di Esplora servizi Web disponibile solo nella prospettiva J2EE

Il pulsante "Avvia Esplora servizi Web" e la voce di menu "Esegui > Avvia Esplora servizi Web" sono disponibili solo nella prospettiva J2EE.

Aprire la prospettiva J2EE ed avviare Esplora servizi Web, oppure, se possibile, selezionare un documento WSDL o un servizio Web nello spazio di lavoro con il tasto destro del mouse, e scegliere Servizio Web -> Verifica con Esplora servizi Web.

1.7 IWAB0107E Errore nella procedura guidata Servizi Web durante la creazione dei servizi Web DADX

Nello scenario di creazione di un servizio Web DADX o URL per WebSphere Application Server v5 con la funzione di generazione del proxy del servizio Web abilitata, la procedura guidata potrebbe avere esito negativo riportando un errore simile al seguente:

IWAB0107E Si è verificano un errore durante l'analisi della parte WSDL: input.
WSDLException: faultCode=PARSER_ERROR: Problema durante il caricamento di http://localhost:9080/SomeProject/SomeGroup/something.dtd/XSD: Connessione rifiutata: connect: Wrapped exception
java.net.ConnectException: Connessione rifiutata: connect
...

Questo problema si verifica perché la procedura guidata non riavvia il server in tempo affinché il generatore codice del client di servizi Web possa richiamare il WSDL o XSD dal server. Il problema può essere evitato in due modi:

  1. Nella procedura guidata Servizi Web, scegliere un server diverso per il client di servizi Web da quello in cui si trova il servizio Web.
  2. Nella procedura guidata Servizio Web, disabilitare la generazione del codice proxy. Eseguire la procedura guidata Client di servizi Web separatamente, dopo aver completato la procedura Servizio Web.

1.8 IWAB0534E Errore nella procedura guidata Servizi Web quando il server di destinazione selezionato non esiste

Quando si utilizza la procedura guidata Servizi Web per creare un servizio Web per un server non ancora esistente, la procedura creerà il server ma successivamente si verificherà il seguente errore:

"IWAB0534E Impossibile aggiungere il progetto EAR alla configurazione server".
Dettagli; java.lang.IllegalArgumentException:
in java.lang.Throwable.<init>(Throwable.java:59)
in java.lang.Throwable.<init>(Throwable.java:73)
in org.eclipse.core.internal.runtime.Assert.isLegal(Throwable.java)
in org.eclipse.core.internal.runtime.Assert.isLegal(Throwable.java)
in org.eclipse.core.runtime.Status.setMessage(Throwable.java)
in org.eclipse.core.runtime.Status.<init>(origine sconosciuta)
in com.ibm.wtp.server.core.internal.ServerWorkingCopy.modifyModules(origine sconosciuta)
...

Per risolvere il problema, riavviare la procedura guidata ed eseguire nuovamente l'operazione. La procedura guidata utilizzerà il server appena creato durante la precedente esecuzione.

1.9 IWAB0213E Errore nella procedura guidata Servizi Web quando il server di destinazione non è installato

Quando si utilizza la procedura guidata Servizi Web per creare un servizio Web in un progetto destinato a un tipo di server non ancora installato, si verificherà il seguente errore:

IWAB0213E Errore all'avvio del server.
org.eclipse.core.runtime.CoreException: il server WebSphere v5.1 Test Environment @ localhost non è stato avviato correttamente. Controllare la console per eventuali messaggi di errore.
in com.ibm.wtp.server.core.internal.Server.synchronousStart(origine sconosciuta)
...

Il problema si verifica perché la procedura guidata, nella pagina Configurazione di distribuzione del server o Configurazione dell'ambiente client, per impostazione predefinita fanno riferimento a un server di destinazione del progetto senza determinare prima se il server di destinazione è stato installato ed è disponibile. Questa situazione si verifica soprattutto durante l'importazione di progetti prodotti da altri utenti con altre installazioni del prodotto. Per risolvere il problema, scegliere un server nella pagina Configurazione di distribuzione del server o Configurazione dell'ambiente client, già presente nello spazio di lavoro.

1.10 L'esempio StockQuote Axis può essere eseguito solo su Tomcat 5.0

Dopo aver importato l'esempio StockQuoteAxis, se si tenta di aggiungere i progetti StockQuoteAxis e StockQuoteAxisClient a un server Tomcat 4.0 o 4.1, viene visualizzato il messaggio "Nessun progetto da aggiungere o rimuovere dal server". Se si esegue la JSP di esempio su un server Tomcat 4.0 o 4.1, viene visualizzato il messaggio "Il server selezionato non supporta la versione 1.4 della specifica modulo Web J2EE".

Il problema si verifica perché i progetti Web StockQuoteAxis e StockQuoteAxisClient nell'esempio, sono stati creati per essere eseguiti su runtime J2EE 1.4 / Servlet 2.4, mentre Tomcat 4.0 e Tomcat 4.1 non supportato la specifica Servlet 2.4. Le due soluzioni possibili sono:

  1. Eseguire l'esempio su un server Tomcat 5.0.
  2. Attenersi alle istruzioni "Creazione guidata" nella Galleria di esempi e scegliere Tomcat 4.0 o 4.1 come destinazione dei progetti Web.

1.11 Esecuzione di esempi client protetti nel progetto EJB e nel progetto Client di applicazioni

I JSP di esempio generati dalla procedura guidata per un client di servizi Web in un progetto EJB o Client di applicazioni, richiamerà il proxy client dei servizi Web in un ambiente non gestito dal contenitore. La configurazione di protezione del client di servizi Web verrà ignorata, rendendo il client non protetto e impedendogli di operare con il servizio Web protetto.

Per eseguire gli esempi client protetti in un progetto EJB, procedere come segue:

  1. Creare un metodo nel client EJB.
  2. Nel metodo, effettuare una chiamata al servizio Web attraverso il proxy.
  3. Eseguire il client EJB.
Per eseguire gli esempi client protetti nel progetto Client di applicazioni, procedere come segue:
  1. Individuare Main.java nel client di applicazioni.
  2. Nel programma principale, effettuare una chiamata al servizio Web attraverso il proxy.
  3. Eseguire il client di applicazioni.

1.12 I file WSDL generati per i servizi Web con parametri di tipo complesso potrebbero essere diversi per le applicazioni J2EE 1.3 e J2EE 1.4

Se viene creato un servizio Web bottom-up J2EE 1.3 che contiene tipi di parametri complessi, ciascun campo nella classe del parametro che dispone di un metodo getter viene associata a un elemento secondario in xsd:complexType nel WSDL. Per conformarsi alla specifica JAX-RPC 1.1 in J2EE 1.4, questo comportamento è stato modificato. Ciascuna proprietà in lettura/scrittura (come identificata dalla classe java.beans.Introspector) viene associata ad un elemento in the xsd:complexType.

1.13 Modifica del nome progetto client predefinito per il nuovo progetto EJB

Durante la creazione di un servizio Web EJB di struttura, in cui il progetto EJB di destinazione desiderato non esiste ancora, la procedura guidata Servizi Web creerà automaticamente il progetto EJB e il JAR client EJB associato. Ad esempio: EJBProjectName e EJBProjectNameClient. Il nome del progetto JAR client EJB crea un conflitto con il nome del progetto client di servizi Web selezionato dalla procedura guidata Servizi Web durante la creazione del client di servizi Web. Questa situazione causa degli errori nel progetto Client di servizi Web. Se il progetto Client di servizi Web è un progetto Web, quando viene richiesto alla procedura di generare la funzione di verifica JSP di esempio, si verificheranno errori nell'EAR del client e l'"Errore nella copia del JAR di utilità dei servizi Web".

Per risolvere il problema, scegliere un nome per il progetto client dei servizi Web diverso da EJBProjectNameClient (quando il progetto EJB è EJBProjectName ancora non esiste) o creare il progetto EJB prima di avviare la procedura guidata Servizi Web.

1.14 Gli scenari End to End restituiscono un messaggio di errore a comparsa restartModule su Websphere Application Server abilitato alla sicurezza v5.0 e v5.1

Se Websphere Application Server v5.0 o v5.1 dispone della sicurezza attivata, gli scenari end-to-end dei servizi web avranno un'attesa di timeout generando un messaggio di errore indicante "Impossibile riavviare il modulo. *". Questo errore può essere ignorato.

1.15 I progetti router e EJB devono trovarsi nello stesso EAR

Per i runtime di IBM SOAP e IBM WebSphere, è necessario posizionare il progetto EJB ed il relativo progetto router nello stesso EAR negli scenari dei servizi web EJB Web dal basso verso l'alto o viceversa.

1.16 LooseApps può essere visualizzato ma non modificato mediante admin console

Un'applicazione distribuita su Websphere Application Server v6 può essere visualizzata ma non modificata mediante admin console. Se occorrono le funzioni complete della console per l'applicazione di un prodotto Rational Developer, deselezionare "Esegui risorse dall'area di lavoro" dall'editor del server UTE. L'UTE viene, quindi, considerato come server remoto e viene generato e pubblicato un file .ear.

2.0 Problemi noti

2.1 La conclusione dello scenario ha esito negativo con il servizio Web Struttura IBM SOAP

Durante la creazione di un servizio Web di struttura da un file WSDL utilizzando il runtime IBM SOAP, se si sceglie di generare un proxy nella stessa procedura guidata, la creazione del proxy avrà esito negativo o verrà generato un proxy non corretto. Per risolvere il problema, generare prima il servizio Web di struttura, quindi utilizzare il WSDL risultante per generare il client separatamente.

2.2 Gli scenari Skeleton e client non funzionano con l'autenticazione di base HTTP protetta WSDL

Nel rilascio corrente, la procedura guidata dei servizi web non consente la creazione di un servizio web skeleton o client utilizzando un file WSDL protetto dall'autenticazione di base HTTP. Per risolvere il problema in modo alternativo, utilizzare un browser e scaricare WSDL nel file system fisico, quindi eseguire la procedura guidata dei servizi web con la copia del file WSDL.

2.3 Messaggio di errore nel progetto router JMS dopo l'esecuzione di Endpoint Enabler

Una volta eseguito Web service Endpoint Enabler per creare un endpoint JMS, viene restituito il seguente errore da ejb-jar.xml nel progetto del router JMS, "CHKJ2802E: la classe com.ibm.ws.webservices.engine.transport.jms.JMSListenerMDB o una dei relativi tipi superiori non può essere rappresentata. Verificare il percorso classe." Questo messaggio può essere ignorato.

2.4 Supporto didattico: la creazione di un servizio web da un Java bean non crea il nome del pacchetto corretto

Una volta completato il supporto didattico "Creazione e distribuzione di un servizio web da un Java bean", viene richiesto di importare il Java bean StockQuoteService da una cartella denominata Resources. La struttura della cartella nella cartella Resources non è corretta, quindi verrà creato un pacchetto che non corrisponde al nome del pacchetto in Java bean.

Per risolvere questo problema, quando vengono importate le risorse richieste, selezionare la cartella StockQuote e deselezionare le cartelle che si trovano al suo interno. Una volta importata la cartella StockQuote, selezionare il pacchetto StockQuote, fare clic con il tastino destro del mouse e selezionare Calcolo del fattore > Ridenomina, quindi ridenominare il pacchetto stockquote.

2.5 L'eliminazione di una tassonomia definita dall'utente non elimina tModel dal registro UDDI privato.

Quando una tassonomia definita dall'utente viene eliminata dalla tabella nella procedura guidata Registro UDDI privato, i dati della categoria vengono eliminati dal registro ma tModel non viene eliminato. La vista Esplora servizi web visualizza ancora la categoria eliminata quando si ricercano le categorie definite dall'utente.

2.6 Codice generato in una posizione non corretta per i servizi web EJB con il supporto di annotazione

Nel caso in cui un EJB e un progetto EJB fossero creati mediante supporto di annotazione, vengono create le interfacce remota e locale dell'EJB nella cartella secondaria gen/src dell'EJB o del progetto client EJB piuttosto che la cartella ejbModule. La procedura guidata dei servizi web genera il codice in una cartella predefinita che risulta nelle interfacce remota e locale duplicate. Ciò non condiziona l'esecuzione dei servizi web in uno scenario semplice, ma per evitare errori di compilazione, è possibile spostare le interfacce remote e locale dalla cartella gen/src nella cartella ejbModule prima di avviare la procedura guidata dei servizi web.

2.7 Gli esempi dei servizi web nella Galleria degli esempi potrebbero essere importati con errori

Se si tenta di importare l'esempio dei servizi WebSphere dalla Galleria degli esempi (WebSphere Stock Quote, Temperature Conversion o AddressBook) senza un server WebSphere V6, viene visualizzata la seguente avvertenza:

Non è stato rilevato alcun runtime del server WebSphere V6. E' necessario impostare manualmente il runtime di destinazione del server per i progetti importati una volta installato un server WebSphere V6.

Se si elimina l'esempio importato, si aggiunge manualmente un server WebSphere V6 e si procede con la reimportazione, l'esempio verrà comunque importato con errori di compilazione a causa di una destinazione del server non riuscita. Per risolvere il problema in modo alternativo, eliminare l'esempio, chiudere il workbench, riavviare e quindi importare di nuovo l'esempio.

2.8 Eccezione restituita nello scenario client quando WSDL non dispone di alcun bind SOAP

Se si crea un client dei servizi web utilizzando WebSphere Application Server v6.0, viene restituita un'eccezione se si utilizza un documento WSDL che non contiene alcun bind SOAP.

2.9 Gli scenari Skeleton non aggiornano i file Java generati durante richiami successivi della procedura guidata dei servizi web

Se è necessario creare nuovamente un servizio web esistente nello stesso progetto utilizzando un file WSDL modificato, i file Java generati non verranno aggiornati. Ciò potrebbero causare errori di compilazione o il non aggiornamento dei file Java. La soluzione alternativa è di eseguire una copia di backup ed eliminare tutti i file Java generati prima di eseguire la procedura guidata dei servizi web skeleton.

2.10 NullPointerException restituita in UDDIPublish/UDDIUnpublish -profileName <nome profilo>

Viene restituita un'eccezione NullPointerException in UDDIPublish/UDDIUnpublish -profileName <nome profilo>, se -inquiryUrl <url> non viene specificato prima di -profileName. Probabilmente, non è necessario utilizzare -profileName, poiché il valore predefinito già corrisponde al profilo installato. Se non è necessario utilizzare -profileName, è necessario specificare -inquiryUrl <url> prima di -profileName <nome profilo>.

Visualizza il file Readme principale