我正在尝试使用Eclipse和Apache CXF来使用WEBSERVICE(http://www.detecno.mx/WCFTimbrador/DetecnoPac.svc?wsdl)。
我已经从http://cxf.apache.org/下载了最新的Apache CXF版本(2.5.2),并且已经在Eclipse Preferences>中配置了它的位置。 Web服务> CXF 2.x首选项
尝试在项目中创建新的Web Service Client时,我无法选择Apache CXF作为WS运行时(禁用“确定”按钮)
我的项目不是动态网络项目,它与此有关吗?它是一个普通的Java项目,其JAR包含在其他动态Web项目中。
答案 0 :(得分:1)
禁用“确定”按钮的原因是您尚未选择现有服务器。由于它是普通的Java项目,因此您可能没有或不需要配置服务器。
您也可以在不使用Eclipse向导的情况下创建Web服务客户端,这可能更简单。
使用wsimport命令(在JDK中可用),您可以从WSDL生成所需的Java源文件。
wsimport -s E:\workspace\cxf\src http://www.detecno.mx/WCFTimbrador/DetecnoPac.svc?wsdl
以下是访问Web服务的方法示例。
public static void main(String[] args) {
ServiceDetecnoPAC serviceDetecnoPAC = new ServiceDetecnoPAC();
IDetecnoPac port = serviceDetecnoPAC.getPort(IDetecnoPac.class);
((BindingProvider) port).getRequestContext().put(BindingProvider.ENDPOINT_ADDRESS_PROPERTY, "http://www.detecno.mx/WCFTimbrador/DetecnoPac.svc?wsdl");
Client client = ClientProxy.getClient(port);
org.apache.cxf.endpoint.Endpoint cxfEndpoint = client.getEndpoint();
port.obtenerHoraServidor();
}