Caros colegas,
estou tendo um problema na recepção na resposta de uma requisição SOA, o qual não estou conseguindo identificar a causa exata e gostaria do auxílio em como lidar com situações como essas, se o problema é na biblioteca do Axis, se o problema é no servidor SOA, visto que no momento estou sem acesso a servidor.
Estou usando :
Eclipse 3.3.2
Windows XP
Axis 1.4
Fiz a geração dos subs utilizando a URL do wsld, o que ocorreu sem o lançamento de erros
java org.apache.axis.wsdl.WSDL2Java http://urldeacesso
após o procedimento, executei a classe dentro de um projetinho teste dentro do eclipse:
package simpleclient;
public class HelloClient{
public static void main(String[] args) {
try {
HelloClient client = new HelloClient();
client.doTest(args);
} catch(Exception e) {
e.printStackTrace();
}
}
/**
* @param args
*/
public void doTest(String[] args) {
try {
IConsCnesserviceLocator service = new IConsCnesserviceLocator();
System.out.println("Retrieving the port from the following service: " + service);
IConsCnes port = service.getIConsCnesPort();
System.out.println("Usando metodo consultaEstab");
String response = port.consultaEstab("350010");//350010
System.out.println(response);
System.out.println("Usando metodo validaCnes");
response = port.validaCnes("350010");
System.out.println(response);
System.out.println("Usando metodo verificaGeral");
response = port.verificaGeral();
System.out.println(response);
} catch(Exception e) {
e.printStackTrace();
}
}
}
E obtive no console as seguintes mensagens:
[color=red]
Retrieving the port from the following service: simpleclient.IConsCnesserviceLocator@b988a6
Usando metodo consultaEstab
Erro na Abertura de Queries ou Banco
<DADOS_GERAIS_ESTABELECIMENTOS
<DADOS_PROFISSIONAIS NO_PROFISSIONAL="" CPF_PROFISSIONAL="" CO_MUNICIPIO_IBGE="" LOGRADOURO="" NU_NUMERO="" DS_COMPLEMENTO="" NO_BAIRRO_DISTRITO="" NU_CEP="" DS_EMAIL="" DT_ATUALIZACAO="" >
<VINCULOS_PROF>
<DADOS_VINC_PROF CO_CBO="" DS_CBO="">
</DADOS_VINC_PROF>
</VINCULOS_PROF>
</DADOS_PROFISSIONAIS>
</DADOS_GERAIS_ESTABELECIMENTOS>
Usando metodo validaCnes
Erro na Abertura de Queries ou Banco
Usando metodo verificaGeral
OLA
[/color]
Busquei uma ferramente de sniffing da internet que resultou nas seguintes informações:
[color=red]
POST /urlUsada HTTP/1.0
Content-Type: text/xml; charset=utf-8
Accept: application/soap+xml, application/dime, multipart/related, text/*
User-Agent: Axis/1.4
Host: host
Cache-Control: no-cache
Pragma: no-cache
SOAPAction: "urn:ConsCnesIntf-IConsCnes#ConsultaEstab"
Content-Length: 446
<soapenv:Envelope xmlns:soapenv=“http://schemas.xmlsoap.org/soap/envelope/” xmlns:xsd=“http://www.w3.org/2001/XMLSchema” xmlns:xsi=“http://www.w3.org/2001/XMLSchema-instance”>
soapenv:Body
<ns1:ConsultaEstab soapenv:encodingStyle=“http://schemas.xmlsoap.org/soap/encoding/” xmlns:ns1=“urn:ConsCnesIntf-IConsCnes”>
350010
</ns1:ConsultaEstab>
</soapenv:Body>
</soapenv:Envelope>
//(Resposta)
HTTP/1.1 200 OK
Content-Length: 1354
Content-Type: text/xml
Server: Microsoft-IIS/6.0
Content:
X-Powered-By: ASP.NET
Date: Thu, 16 Apr 2009 12:40:51 GMT
Connection: close
<SOAP-ENV:Envelope xmlns:SOAP-ENV=“http://host/” xmlns:xsd=“http://www.w3.org/2001/XMLSchema” xmlns:xsi=“http://www.w3.org/2001/XMLSchema-instance” xmlns:SOAP-ENC=“http://host/”>
<SOAP-ENV:Body SOAP-ENV:encodingStyle=“http://host/”>
<NS1:ConsultaEstabResponse xmlns:NS1=“urn:ConsCnesIntf-IConsCnes”>
Erro na Abertura de Queries ou Banco
<DADOS_GERAIS_ESTABELECIMENTOS
<PROFISSIONAIS>
<DADOS_PROFISSIONAIS NO_PROFISSIONAL="" CPF_PROFISSIONAL="" CO_MUNICIPIO_IBGE="" LOGRADOURO="" NU_NUMERO="" DS_COMPLEMENTO="" NO_BAIRRO_DISTRITO="" NU_CEP="" DS_EMAIL="" DT_ATUALIZACAO="" >
<VINCULOS_PROF>
<DADOS_VINC_PROF CO_CBO="" DS_CBO="">
</DADOS_VINC_PROF>
</VINCULOS_PROF>
</DADOS_PROFISSIONAIS>
</PROFISSIONAIS>
<LEITOS>
</LEITOS>
<HABILITACOES>
</HABILITACOES>
</DADOS_GERAIS_ESTABELECIMENTOS>
</ESTABELECIMENTOS>
<SUMARIO QTD_ESTABELECIMENTOS=“0” QTD_PROFISSIONAIS=“1” QTD_CBO=“1” QTD_LEITOS=“0” QTD_HABILITACAO=“0”/>
</ROOT></NS1:ConsultaEstabResponse></SOAP-ENV:Body>
</SOAP-ENV:Envelope>
[/color]
Sei da existência de um sistema feito em delphi que consegue recuperar essas informações e que ele envia no caso o método validaCnes(“350010”).
Alguém teria uma idéia de como identificar o que pode estar ocorrendo?