Webservice - gerar de stubs

Estou tentando gerar stubs para acesso a um bando de dados externo.

Entretanto, seguindo as instruções contidas na página de help do Fluig,

Foi criado um facilitador para gerar todos os stubs, basta baixar o documento Cliente Web Service.zip. Basta descompactá-lo e executar o arquivo "fluig-ws.sh", informe o nome e porta do servidor. Após executar, será gerado o "fluig-ws-client.jar". Importe o .jar para acesso ao serviço. Aqui você encontra um exemplo (ws-soap e webservice) prático de utilização em artefatos publicados no fluig.

ao executar o arquivo fluig-ws.bat (fluig-ws 172.16.0.28 8080, no meu caso), dá erro direto, mostrando em todas as operações de implantação dos respectivos WSDL similarmente ao erro seguinte:


Gerando ECMAttributionMecanismService
parsing WSDL...


[ERROR] http://172.16.0.28:8080/webdesk/ECMAttributionMecanismService?wsdl is unreachable

Além disto, a informação dada no help acima, fala para importar o .jar gerado. Ainda não consegui chegar lá, mas o que significa 'importar' o .jar? Por qual meio eu faria isto?

O que estaria faltando?

Você consegue acessar este IP pela máquina em que está executando o bat? Pela mensagem de erro parece que este IP está inacessível. Você poderia tentar usar alguma coisa (telnet por exemplo) para ver se o ip:porta está acessível.

@Carlos, estou dentro do próprio servidor onde está instalado o Fluig e executo o fluig-ws de dentro da pasta c:\fluighom\appserver\bin

Tenta dar um ping nesse ip. ping 172.16.0.28. Mas o ping não vai ser da porta 8080, pode ser que esta porta não esteja escutando. Para isso você precisa de algo que tente conectar com IP:PORTA tipo um telnet

Não entendi, caro @Carlos, vou testar conexão estando no mesmo servidor em que pretendo fazer a importação?

Não importa se você está ou não no mesmo servidor, você tem que testar se o IP:Porta está ouvindo. O erro que está no teu log significa que o Java está te dizendo “Não consegui chegar neste servidor com esta porta” não parece ser um erro do Fluig. Parece ser algo na rede, mesmo que tudo dentro do mesmo PC pode ser erro de rede.

Tenta jogar essa URL no navegador e vê se ele abre: http://172.16.0.28:8080/webdesk/ECMAttributionMecanismService?wsdl

Caro @Carlos Amilliato, fiz sua dica. Funciona no domínio inteiro. Tanto faz eu abrir o navegador dentro do próprio servidor do Fluig como em máquina-estação, funciona do mesmo jeito. Aparece o XML corretamente.

Bom dia Mausim,

pelo que entendi você quer acessar pelo fluig dados de um banco externo. Uma forma de fazer isso é criando um Dataset com base em um serviço JDBC Dataset via Painel de Controle, os bancos suportados são mysql, sqlServer e oracle.

Esse procedimento que você está seguindo do help serve para outra situação contraria a que você mencionou, que é quando você tem uma aplicação/programa que precisa consumir os webservices da API SOAP do fluig. Para isso você geraria esse .jar contendo client para os webservices do fluig e utilizaria(importaria) dentro desse seu programa externo.

Caro @Diogo, obrigado pela resposta. Sempre gentil. O que acontece é que não posso testar uma conexão qualquer com um banco de dados externo, antes da criação dos stubs. Seria normal esse erro no próprio bat criado pela Totus, procedimento preliminar?

Mausim, o bat faz apenas a chamada do wsimport do java de sua máquina. Pode testar direto no terminal: wsimport http://172.16.0.28:8080/webdesk/ECMAttributionMecanismService?wsdl . Se não funcionar tente passar http://localhost:8080/webdesk/ECMAttributionMecanismService?wsdl . Caso o localhost funcione, evidencia que é um problema de rede com esse IP assim como o Carlos falou anteriormente.