Erro de endpoint nao suportado

12 respostas
netbeansprogramaçãowebservicejava
H

Pessoal boa tarde,
Estou tentando comunicar um arquivo .wsdl porem esta explodindo esse erro:
Exception in thread “main” javax.xml.ws.WebServiceException: Unsupported endpoint address:

Minha classe é:

public class WsTeste {

/**
 * @param args the command line arguments
 */
public static void main(String[] args) {
            try {
    CabecalhoTransacao cabecalho = new CabecalhoTransacao();
    CtPrestadorIdentificacao prest = new CtPrestadorIdentificacao();
    CtElegibilidadeVerifica ctBenf = new CtElegibilidadeVerifica();
    CtContratadoDados ctPrest = new CtContratadoDados();
    IdentificacaoTransacao  tdTrans = new IdentificacaoTransacao();
    PedidoElegibilidadeWS pedidoEleg = new PedidoElegibilidadeWS();
    Destino destino = new Destino();
    Origem origem = new Origem();
    
    String nomeBenf = "";
    String cartaoBenf = "01202008116000445";
    String prestador = "012000110009";
    String tipoTransacao = "VERIFICA_ELEGIBILIDADE";
    String sequencialTransacao = "5";
    String dataRegistro = "2018-11-08";
    XMLGregorianCalendar resultData = DatatypeFactory.newInstance().newXMLGregorianCalendar(dataRegistro);        
    String horaRegistro = "10:00:00";
    XMLGregorianCalendar resultHora = DatatypeFactory.newInstance().newXMLGregorianCalendar(horaRegistro);        
    String registroANS = "348082";
    String padrao = "3.03.02";
    String hash = "0fe0aaf71b739781e037f2f650aaa273";        
    
    tdTrans.setTipoTransacao(DmTipoTransacao.VERIFICA_ELEGIBILIDADE);
    tdTrans.setSequencialTransacao(sequencialTransacao);
    tdTrans.setDataRegistroTransacao(resultData);
    tdTrans.setHoraRegistroTransacao(resultHora);
    prest.setCodigoPrestadorNaOperadora(prestador); //origem
    destino.setRegistroANS(registroANS); //destino
    cabecalho.setPadrao(padrao);
    ctPrest.setCodigoPrestadorNaOperadora(prestador);
    ctBenf.setNumeroCarteira(cartaoBenf);
    pedidoEleg.setHash(hash);
   
    
    
                try {
                    RespostaElegibilidadeWS res = tissVerificaElegibilidadeOperation(pedidoEleg);
                    res.getRespostaElegibilidade().getReciboElegibilidade();
                    
                    
                } catch (TissFault ex) {
                    Logger.getLogger(WsTeste.class.getName()).log(Level.SEVERE, null, ex);
                }
    
    
    } catch (DatatypeConfigurationException ex) {
        Logger.getLogger(WsTeste.class.getName()).log(Level.SEVERE, null, ex);
    }
          
}

private static RespostaElegibilidadeWS tissVerificaElegibilidadeOperation(br.gov.ans.padroes.tiss.schemas.PedidoElegibilidadeWS pedidoElegibilidade) throws TissFault {
    br.gov.ans.tiss.ws.tipos.tissverificaelegibilidade.v30302.TissVerificaElegibilidade service = new br.gov.ans.tiss.ws.tipos.tissverificaelegibilidade.v30302.TissVerificaElegibilidade();
    br.gov.ans.tiss.ws.tipos.tissverificaelegibilidade.v30302.TissVerificaElegibilidadePortType port = service.getTissVerificaElegibilidadePort();
    return port.tissVerificaElegibilidadeOperation(pedidoElegibilidade);
}

}

nao sei se estou fazendo certo… estou meu no escuro por nao conhecer os arquivos… voces tem alguma noção do que estou fazendo de errado?

12 Respostas

C

Você precisa informar o endereço wsdl se for online, se for local teste com um cliente tradicional como soapui ou postman

H

Sim… consigo fazer testes via soap ui normalmente, mas queria criar uma aplicação com essa comunicação.

Quando disponibilizo o wsdl online, esta explodindo erro na hora de adicionar o cliente de web service.
image

e quando utilizo os arquivos wsdl local ele gera esse erro de endereço nao suportado.

C

E você checou se o seu código realmente está como o seu cliente que está passando? Usando SSL?(pouco provavel). Você fez debug? A string da url pode ta zuada. Pode ta faltando algum cabeçalho pelo código. Você não forneceu essas informações ao postar a pergunta e o código que mostras as configurações do ws está incapsulado e a classe que você postou é a classe invocadora

H

Entao… a URL esta correta… pq via SOAP UI funciona normalmente… esse Erro que mandei a print eh exibido logo no começo do projeto… quando crio o projeto e ja peço para inserir um cliente de web service atraves de URL.

pesquisei em tudo ja e nao estou conseguindo encontrar algum lugar que tenha a solução.

D

Nesse wsdl tem import para algum xsd? já tive alguns problemas neste sentido quando ele não conseguia abrir um xsd dependente.

H

eu chamando ele localmente precisa do xsd, e funciona… mas quando import localmente ele explode o erro: Unsupported endpoint address,

via URL ele nao deixa nem inserir no projeto. Sera que o xsd da ANS tem que estar em algum diretorio?

D

O xsd pode estar remoto, você só tem que garantir que o netbeans esteja conseguindo acessar a URL do xsd. Mas por via das duvidas dá para baixar todos os arquivos e imports e apontar localmente. Neste caso você tem que mudar o endereço dos imports do wsdl para a pasta local também.

H

Entendi em partes… rsrsrsrs

Minha Url conecta em um servidor Local, entao teoricamente deveria enxergar o .xsd. Mas tentarei seguir essa logica que voce esta falando

D

rsrsrs…

O que aconteceu comigo, que o wsdl estava em uma url que eu conseguia acessar, mas o xsd estava apontando para outro ligar não acessível na minha maquina.

H

Daniel bom dia, nao consegui evoluir neste meu problema… rsrsrsrs

D

Você já tentou gerar o client deste wsdl via linha de comando usando o “wsimport”? E você consegue/pode compartilhar aqui o wsdl que você está tentando importar?

H

Bom dia Daniel…
Meu WSDL é:

http://intercambio.unimedararas.com.br:8080/htzfoundation-HTZFoundationEJB/TISSVerificaElegibilidadeV_3_03_02WS?wsdl

Criado 8 de novembro de 2018
Ultima resposta 16 de nov. de 2018
Respostas 12
Participantes 3