Você poderá encontrar um problema quando não puder acessar o Registro UDDI Privado DB2 do WebSphere v6 depois de implementá-lo sobre um Registro UDDI Privado existente do WebSphere v6. No final do assistente de Implementação de UDDI, o aplicativo UDDI está em execução no servidor mas as configurações do servidor não são reconhecidas. O sintoma seria que o Ear do UDDI não pode interagir com o Registro UDDI DB2. Isso significa que todos os comandos executados no Aplicativo UDDI falhariam com o Erro (Erro ao inicializar o Nó de Registro). Isso abrange a inclusão de taxinomias definidas, que emitiriam uma falha do Axis.
Soluções alternativas:
1. Preventiva: Antes de implementar um Registro UDDI DB2 do WebSphere v6, utilize o assistente de UDDI para remover quaisquer Registros UDDI instalados anteriormente. Em seguida, chame novamente o Assistente de UDDI para implementar um Registro UDDI Privado DB2 do WebSphere V6.
2. Para corrigir o Registro instalado: Se você instalou um Registro UDDI DB2 do WebSphere V6 sobre um registro anterior e encontrou problemas, no console Admin do servidor, poderá parar o Aplicativo UDDIRegistry e iniciá-lo novamente.
As configurações de nível de conformidade de WS-I AP localizadas em Janelas -> Preferências -> Serviços da Web -> Conformidade de WS-I e em Propriedades do Projeto não têm efeito sobre a validação de WSDL WS-I quando definida para "sugerir" ou "exigir". Por padrão, essas preferências são definidas como "ignorar".
Não há uma solução alternativa. A Documentação de Asserção de Teste do WS-I Attachments Profile utilizada pelo validador WS-I WSDL para testar o WSDL quanto à conformidade com o perfil não se tornou pública pela organização do WS-I a tempo de ser incluída neste release do produto IBM Rational Developer. Uma correção temporária para ativar a preferência será emitida depois que o Documento de Declaração de Teste torna-se público.
Nota: Isso foi corrigido na V6.0.0.1.
Se o serviço ou projeto de cliente existir antes da ativação do assistente de Serviço da Web ou do Cliente de Serviço da Web, os assistentes sempre utilizarão o EAR que já contém o projeto existente, independentemente do que for selecionado na página Configuração da Implementação do Serviço ou Configuração do Ambiente do Cliente. Se o projeto existente não foi incluído em um EAR antes da ativação dos assistentes, os assistentes falharão com o seguinte erro:
IWAB0213E Erro ao iniciar o servidor
Detalhes:
IWAB0213E Erro ao iniciar o servidor.
org.eclipse.core.runtime.CoreException: O WebSphere v5 suporta apenas os aplicativos corporativos 2EE 1.2 e 1.3.
em com.ibm.etools.websphere.tools.v51.internal.WASTestServerWorkingCopy.modifyModules(Origem Desconhecida)
...Para solucionar essa limitação, assegure-se de que quaisquer projetos destinados aos serviços da Web e aos clientes de serviços da Web já estejam incluídos em um EAR antes do assistente ser ativado. A única exceção a essa regra são os projetos com um destino do servidor Tomcat, porque eles não precisam ser incluídos em um EAR.
Nota: Isso foi corrigido na V6.0.0.1.
Se você criar manualmente um monitor para seu servidor de destino (utilizando Monitoração -> Propriedades... na guia Servidores) e, em seguida, executar o assistente de Serviço da Web e selecionar "Monitorar o Serviço da Web" na primeira página do assistente de Serviço da Web, o assistente poderá falhar durante o processamento com o seguinte erro:
IWAB0014E Ocorreu uma exceção inesperada. nulo
java.lang.NullPointerException
em com.ibm.etools.webservice.consumption.command.common.CreateMonitorCommand.hasContentWebServices(CreateMonitorCommand.java:114)
...Para solucionar o problema, reexecute o assistente com Monitorar o Serviço da Web desativado ou abra Monitoração -> Propriedades... no servidor, remova o monitor e reexecute o assistente com Monitorar o Serviço da Web ativado.
Na primeira página dos assistentes de Serviço da Web e Cliente de Serviço da Web, dois tipos de proxy do Cliente estão disponíveis: "Proxy Java" (o padrão comum) e "Função Definida pelo Usuário do Serviço da Web". Se você selecionar "Função Definida pelo Usuário do Serviço da Web" e tentar concluir o assistente ou prosseguir além da Página de Seleção de Serviço da Web, o assistente falhará com o erro "IWAB0234E Ocorreu um erro interno. Detalhes: nulo".
Solução alternativa: Não utilize os assistentes de Serviço da Web para criar uma função definida pelo usuário do serviço da Web. Em vez disso, selecione Novo -> Outro -> Dados -> Função Definida pelo Usuário do Serviço da Web.
Nota: Isso foi corrigido na V6.0.0.1.
O botão "Ativar o Explorador de Serviços da Web" e o item de menu "Executar > Ativar o Explorador de Serviços da Web" estão disponíveis apenas a partir da perspectiva J2EE.
Abra a perspectiva JEE e ative o Explorador de Serviços da Web ou, se aplicável, clique com o botão direito do mouse em um documento WSDL ou serviço da Web em seu espaço de trabalho e selecione Serviço da Web -> Testar com o Explorador de Serviços da Web.
Nota: Isso foi corrigido na V6.0.0.1.
Em um cenário de criação do serviço da Web DADX ou URL para o WebSphere Application Server v5 com a geração de proxy do serviço da Web ativada, o assistente poderá falhar com um semelhante ao seguinte:
IWAB0107E Erro encontrado ao tentar analisar parte do WSDL: entrada.
WSDLException: faultCode=PARSER_ERROR: Problema ao carregar http://localhost:9080/SomeProject/SomeGroup/something.dtd/XSD: Conexão negada: conectar: Exceção agrupada
java.net.ConnectException: Conexão negada: conectar
...
Esse problema ocorre porque o assistente não reinicia o servidor a tempo para o gerador de código do cliente de serviço da Web recuperar o WSDL ou XSD do servidor. O problema pode ser evitado de pelo menos duas maneiras:
- No assistente de Serviço da Web, escolha um servidor para hospedar seu cliente de serviço da Web que seja diferente do servidor que hospeda o serviço da Web.
- No assistente de Serviço da Web, desative a geração do código proxy. Execute o assistente de Cliente de Serviço da Web separadamente, após a conclusão do assistente de Serviço da Web.
Nota: Isso foi corrigido na V6.0.0.1.
Ao utilizar o assistente de Serviço da Web para criar um serviço da Web para um servidor que ainda não existe, o assistente criará o servidor mas depois falhará com o seguinte erro:
"IWAB0534E Impossível incluir o projeto EAR na Configuração do Servidor."
Detalhes: java.lang.IllegalArgumentException:
em java.lang.Throwable.<init>(Throwable.java:59)
em java.lang.Throwable.<init>(Throwable.java:73)
em org.eclipse.core.internal.runtime.Assert.isLegal(Throwable.java)
em org.eclipse.core.internal.runtime.Assert.isLegal(Throwable.java)
em org.eclipse.core.runtime.Status.setMessage(Throwable.java)
em org.eclipse.core.runtime.Status.<init>(Origem Desconhecida)
em com.ibm.wtp.server.core.internal.ServerWorkingCopy.modifyModules(Origem Desconhecida)
...Para solucionar o problema, reative o assistente e tente novamente. O assistente utilizará o servidor que foi criado com êxito pelo assistente anterior logo antes de seu defeito.
Nota: Isso foi corrigido na V6.0.0.1.
Ao utilizar o assistente de Serviço da Web para criar um serviço da Web em um projeto destinado a um tipo de servidor que não foi instalado, o assistente pode falhar com a seguinte mensagem:
IWAB0213E Erro ao iniciar o servidor.
org.eclipse.core.runtime.CoreException: O servidor, denominado Ambiente de Teste do WebSphere v5.1 @ host local, não foi iniciado corretamente. Verifique se existem mensagens de erro no Console.
em com.ibm.wtp.server.core.internal.Server.synchronousStart(Origem Desconhecida)
...O problema ocorre porque o assistente, em sua página Configuração da Implementação do Servidor ou Configuração do Ambiente do Cliente, assume como padrão o servidor de destino do projeto sem antes determinar se o servidor de destino foi instalado e está disponível. É mais provável que essa situação ocorra ao importar projetos produzidos por outros usuários com outras instalações do produto. A solução alternativa é escolher explicitamente um servidor na página Configuração da Implementação do Servidor ou Configuração do Ambiente do Cliente que exista em seu espaço de trabalho.
Nota: Isso foi corrigido na V6.0.0.1.
Depois de importar a amostra StockQuoteAxis, se você tentar incluir os projetos StockQuoteAxis e StockQuoteAxisClient em um servidor Tomcat 4.0 ou 4.1, receberá a mensagem "Não há projetos que possam ser incluídos ou removidos do servidor". Se você tentar executar os JSPs de amostra em um servidor Tomcat 4.0 ou 4.1, receberá a mensagem "O servidor selecionado não suporta a versão 1.4 da especificação do módulo da Web J2EE".
O problema ocorre porque os projetos da Web StockQuoteAxis e StockQuoteAxisClient na Amostra foram criados para serem executados em um tempo de execução do J2EE 1.4 / Servlet 2.4 e nem o Tomcat 4.0 nem o Tomcat 4.1 suportam a especificação do Servlet 2.4. Há duas soluções alternativas:
- Execute a amostra em um servidor Tomcat 5.0.
- Siga as instruções de "Construa Você Mesmo" na Samples Gallery e escolha para destinar seus projetos da Web para o Tomcat 4.0 ou 4.1.
Nota: Isso foi corrigido na V6.0.0.1.
Os JSPs de amostra gerados pelo assistente para um cliente de serviço da Web em um projeto EJB ou de Cliente Aplicativo chamarão o proxy do cliente de serviço da Web em um ambiente não gerenciado por contêiner. A configuração de segurança para o cliente de serviço da Web será ignorada, processando o cliente efetivamente de modo não protegido e impedindo-o de interoperar com o serviço da Web protegido.
Para executar as amostras de cliente seguras no projeto EJB:
Para executar as amostras de cliente seguras no projeto de Cliente Aplicativo:
- Crie um método no EJB do cliente.
- No método, faça uma chamada de serviço da Web por meio do proxy.
- Execute o EJB do cliente.
- Localize o Main.java no Cliente Aplicativo.
- No programa principal, faça uma chamada de serviço da Web por meio do proxy.
- Execute o Cliente Aplicativo.
Se você criar um serviço da Web ascendente J2EE 1.3 que contenha parâmetros de tipos complexos, todo campo na classe de parâmetro que tiver um getter será mapeado para um elemento-filho sob o xsd:complexType no WSDL. Para ficar em conformidade total com a especificação JAX-RPC 1.1 no J2EE 1.4, esse comportamento foi alterado. Cada propriedade de leitura/gravação (conforme identificada pela classe java.beans.Introspector) será mapeada para um elemento no xsd:complexType.
Nota: Isso foi corrigido na V6.0.0.1.
Ao criar um serviço da Web de estrutura EJB no qual o projeto EJB de destino pretendido ainda não existe, o assistente de serviço da Web criará o projeto EJB e um JAR associado ao cliente EJB. Por exemplo: EJBProjectName e EJBProjectNameClient.Esse nome de projeto JAR do cliente EJB é conflitante com o nome do projeto padrão do cliente de serviço da Web selecionado pelo assistente de Serviço da Web quando ele tenta criar seu cliente de serviço da Web. Isso resulta em erros no projeto de cliente de serviço da Web. Se o projeto de cliente de serviço da Web for um projeto da Web, você obterá erros no EAR do cliente, bem como um "Erro ao copiar o Jar do Utilitário de Serviço da Web" se solicitar ao assistente para gerar o recurso de teste do JSP de Amostra.
A solução alternativa é selecionar um nome para o projeto de cliente de serviço da Web que seja diferente de EJBProjectNameClient (quando o projeto EJB EJBProjectName ainda não existir) ou criar o projeto EJB antes de iniciar o assistente de Serviço da Web.
Nota: Isso foi corrigido na V6.0.0.1.
Se o Websphere Application Server v5.0 ou v5.1 tiver a segurança ativada, os cenários ponta a ponta do serviço da Web terão uma espera de tempo de limite e gerarão uma mensagem de erro informando "Não foi possível reiniciar o módulo. *". Esse erro pode ser seguramente ignorado.
Nota: Isso foi corrigido na V6.0.0.1.
Para os tempos de execução do IBM SOAP e do IBM WebSphere, você deve colocar o projeto EJB e seu projeto de roteador no mesmo EAR nos cenários de serviço da Web do EJB descendente ou ascendente.
Um aplicativo implementado no Websphere Application Server v6 pode ser visualizado mas não modificado por meio do console admin. Se a capacidade total do console for necessária para um aplicativo do produto Rational Developer, você poderá cancelar a seleção de "Executar recursos a partir do espaço de trabalho" do editor do servidor UTE. Isso trata essencialmente do UTE como um servidor remoto e um arquivo .ear é gerado e publicado.
Se você criar um serviço da Web Skeleton a partir de um arquivo WSDL utilizando o tempo de execução do IBM SOAP e escolher para gerar um proxy no mesmo assistente, o proxy poderá falhar ao gerar ou poderá gerar incorretamente. A solução alternativa é primeiro gerar o serviço da Web skeleton e, em seguida, utilizar o WSDL resultante para gerar o cliente separadamente.
Nota: Isso foi corrigido na V6.0.0.1.
No release atual, o assistente de serviço da Web não pode criar um serviço da Web skeleton ou cliente de serviço da Web utilizando um arquivo WSDL protegido pela autenticação básica HTTP. A solução alternativa é utilizar um navegador e fazer download do WSDL para o sistema de arquivo físico e executar o assistente de serviço da Web com essa cópia do arquivo WSDL.
Nota: Isso foi corrigido na V6.0.0.1.
Depois de executar o serviço da Web Ativador de Nó de Extremidade para criar um nó de extremidade JMS, o seguinte erro é relatado a partir do ejb-jar.xml no projeto de roteador JMS, "CHKJ2802E: a classe com.ibm.ws.webservices.engine.transport.jms.JMSListenerMDB, ou um de seus supertipos, não pode ser refletida. Verifique o caminho de classe." Essa mensagem de erro pode ser seguramente ignorada.
Nota: Isso foi corrigido na V6.0.0.1.
Ao concluir o tutorial "Criar e Implementar um Serviço da Web a partir de um Java Bean", será solicitado que você importe o Java bean StockQuoteService de uma pasta denominada Resources. A estrutura de pastas dentro da pasta Resources está incorreta e resultará na criação de um pacote que não corresponde ao nome do pacote no Java bean.
Para corrigir isso, ao importar os recursos necessários, selecione a pasta StockQuote e cancele a seleção das pastas dentro dela. Após a importação da pasta StockQuote, selecione o pacote StockQuote, clique com o botão direito do mouse e selecione Refatorar > Renomear e renomeie o pacote stockquote.
Nota: Isso foi corrigido na V6.0.0.1.
Quando uma taxinomia Definida pelo Usuário é excluída da tabela no assistente do Private UDDI Registry, os dados da categoria são excluídos do registro mas o tModel em si ainda permanece. O Explorador de Serviços da Web ainda mostra a categoria excluída ao procurar Categorias Definidas pelo Usuário.
No caso em que um EJB e um projeto EJB foram criados por meio do suporte à anotação, as interfaces home e remota do EJB são criadas na subpasta gen/src do EJB e do projeto do cliente EJB em vez da pasta ejbModule. O assistente de serviço da Web gerará código na pasta padrão, o que resulta em interfaces home e remota duplicadas. Isso não parece afetar a execução do serviço da Web em um cenário simples mas, para evitar o erro de compilação, os usuários podem mover as interfaces home e remota da pasta gen/src para a pasta ejbModule antes de ativar o assistente de serviço da Web.
Se você tentar importar uma amostra WebSphere de serviço da Web a partir da Samples Gallery (Cotas de Ações, Conversão de Temperatura ou Catálogo de Endereços do WebSphere) sem um servidor WebSphere V6, aparecerá o aviso:
Nenhum tempo de execução do servidor WebSphere V6 detectado. Você precisará definir manualmente o tempo de execução de destino do servidor para os projetos importados após a instalação de um servidor WebSphere V6.
Se você excluir a amostra importada, incluir manualmente um servidor WebSphere V6 e prosseguir com a reimportação, a amostra continuará importando com erros de compilação devido a um defeito na destinação do servidor. Para solucionar o problema, exclua a amostra, encerre o workbench, reinicie e, em seguida, reimporte a amostra.
Nota: Isso foi corrigido na V6.0.0.1.
Se criar um cliente de serviço da Web utilizando o WebSphere Application Server v6.0, uma exceção será emitida se você utilizar um documento WSDL que não contém ligações SOAP.
Nota: Isso foi corrigido na V6.0.0.1.
Se você precisar recriar um serviço da Web existente no mesmo projeto utilizando um arquivo WSDL modificado, os arquivos Java gerados não serão atualizados. Isso pode resultar em erros de compilação ou nos arquivos Java ficando inalterados. A solução alternativa para isso é fazer backup e excluir todos os arquivos Java gerados antes de executar o assistente de serviço da Web skeleton.
Nota: Isso foi corrigido na V6.0.0.1.
Uma NullPointerException é emitida em UDDIPublish/UDDIUnpublish -profileName <nome do perfil>, se -inquiryUrl <url> não for especificado antes de -profileName. Você provavelmente não precisará utilizar -profileName porque o padrão já corresponde ao perfil instalado. Se não precisar utilizar -profileName, você deverá especificar -inquiryUrl <url> antes de -profileName <nome do perfil>.
Nota: Isso foi corrigido na V6.0.0.1.
Retornar para o Arquivo Leia-me Principal