[RESOLVIDO] Aplicação Java Acessando Web Sevices .NET

Bom dia,

Tenho uma aplicação Java SE e estou precisando acessar um web services .Net.

Preciso passar uma string (CNPJ) e ele me retornar uma outra string com uma data.

Alguém sabe como fazer isso?

Desde já agradeço quem puder me ajudar.

tem muitos exemplos no guj e no google…

exemplos com framework e exemplos sem framework…

vc pesquisou algo?

exemplo: http://www.guj.com.br/search?cx=partner-pub-9448585618971060%3A4001950301&cof=FORID%3A10&ie=UTF-8&q=Java+Acessando+Web+Sevices+.NET&x=0&y=0&siteurl=www.guj.com.br%252F#1238

att,

Olá pedruhenrik,

Já pesquisei muito, mas estou sempre encontrando pessoas com problemas diferentes, e quando alguém fala que conseguil resolver o problema, não mostra a solução.

Meu código está assim:

import java.net.MalformedURLException;
import java.rmi.RemoteException;
import javax.xml.rpc.ServiceException;
import org.apache.axis.client.Call;
import org.apache.axis.client.Service;


public class TesteWebServices {

    public static void main(String[] args) throws ServiceException, RemoteException, MalformedURLException {
        // Endereço, local onde encontra-se o Web Service
        String local = "http://www.newtecnologia.net/new/ValidadorSistemaCEF.asmx";

        Call call = (Call) new Service().createCall();

        call.setTargetEndpointAddress(local);
        
        //Nome do método no Web Services
        call.setOperationName("VerificarValidadeSistemaCEF");

        //CNPJ válido e cadastrado no banco de dados do Web Services
        String result = (String)call.invoke(new Object[]{"61.578.118/0019-15"});
        
        //O resultado teria que ser uma data em string no formato dd/MM/yyyy 
        System.out.println("Resultado : " + result);
    }
}

Ele me retorna o seguinte erro:

[color=red]Exception in thread “main” AxisFault
faultCode: {http://schemas.xmlsoap.org/soap/envelope/}Client
faultSubcode:
faultString: System.Web.Services.Protocols.SoapException: Server did not recognize the value of HTTP Header SOAPAction: .
at System.Web.Services.Protocols.Soap11ServerProtocolHelper.RouteRequest()
at System.Web.Services.Protocols.SoapServerProtocol.RouteRequest(SoapServerMessage message)
at System.Web.Services.Protocols.SoapServerProtocol.Initialize()
at System.Web.Services.Protocols.ServerProtocolFactory.Create(Type type, HttpContext context, HttpRequest request, HttpResponse response, Boolean& abortProcessing)[/color]

Se você puder me ajudar, fico agradecido.

deve ta faltando informações do Header.

já q vc ta usando axis, experimenta gerar as classes por ele.

da uma olhada no axis.

aqui tem a tentativa de um tutorial: http://www.guj.com.br/java/237281-tutorial-consumir-webservice-nfe-20

att,

Olá Pedro,

Consegui resolver usando o seu tutorial “Tutorial acessando WebService NFE” o “NFE2” eu achei muito complicado e não consegui implementá-lo, já o primeiro foi bem fácil e rápido.

Muito obrigado pela ajuda.