java调用webservice怎么那么难啊. 发布一个webservice早发布好了c#调用也试过了....okjava调用就是过不去啊....谁有好的文章或者代码借我用用啊..... 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 通过axis2,cxf等生成客户端呗 我是用xfire发布的webservice咋弄啊..... 慢慢来,如果手工搞的话,确实蛋疼...能避免用WebService就尽量避免。 我淡淡都爆掉了C# 都调用成功了java就不行java还不是完全不行在另外一个项目中调用就不行在发布webservice的项目中测试调用可以.同样的代码... 我以前也遇到过这个问题,后来觉得麻烦 就直接用http代替了、 xfire插件很好,并且效率要比axis高,还很简单,不妨试试 用apache cxf 以你可以直接调用的 http://www.ayandy.com/Service.asmx?WSDL 这个接口为例1:到 http://cxf.apache.org/download.html 去下载最新的 Apache CXF 包,下载好后解压到某个目 录中,比如:d:/apache/cxf-2.1.4 中;2:在控制台中进入 d:/apache/cxf-2.1.4/bin 目录,执行这个命令:wsdl2java -p com.zmcn.widget.ws -client http://www.ayandy.com/Service.asmx?WSDL有个前提,设置JAVA_HOME环境变量3:在d:/apache/cxf-2.1.4/bin目录下 会生成com.zmcn.widget.ws目录结构,将其下的文件copy到你web工程下的com.zmcn.widget.ws目录(自己建目录)4:到 Apache CXF 包 的 lib 目录中把这些文件加载到 Eclipse 的 classpath 中去:cxf-2.2.3.jargeronimo-activation_1.1_spec-1.0.2.jargeronimo-annotation_1.0_spec-1.1.1.jargeronimo-jaxws_2.1_spec-1.0.jargeronimo-stax-api_1.0_spec-1.0.1.jargeronimo-ws-metadata_2.0_spec-1.1.2.jarjaxb-api-2.1.jarjaxb-impl-2.1.12.jarsaaj-api-1.3.jarwsdl4j-1.6.2.jarwstx-asl-3.2.8.jarXmlSchema-1.4.5.jar5 测试类:public class Test {private static final QName SERVICE_NAME = new QName("http://tempuri.org/", "ServiceSoap"); private static final QName PORT_NAME = new QName("http://tempuri.org/", "ServiceSoapPort"); public static void main(String[] args) { Service service = Service.create(SERVICE_NAME); String endpointAddress = "http://www.ayandy.com/Service.asmx"; service.addPort(PORT_NAME, SOAPBinding.SOAP11HTTP_BINDING, endpointAddress); ServiceSoap hw = service.getPort(ServiceSoap.class); ArrayOfString as = hw.getWeatherbyCityName("上海", TheDayFlagEnum.TODAY); for(String str : as.getString()) { System.out.println(str); } }} java的ArrayList如何分页?? js 使li 可编辑 获取特定字符串之间的值 关于OpenSessionInViewFilter jstl 标签 CVS版本控制工具??? 谁知道j2ee的规范都有哪些? 关于学习ActiveMQ请教 tomcat5.5.17,在Linux下启动没有控制台? 如何在struts中的action forward到另一个action hibernate 按时间段更新数据问题 下面这个方法改为hibernate,有点复杂,求指导。
后来觉得麻烦 就直接用http代替了、
以你可以直接调用的 http://www.ayandy.com/Service.asmx?WSDL 这个接口为例1:到 http://cxf.apache.org/download.html 去下载最新的 Apache CXF 包,下载好后解压到某个目 录中,比如:d:/apache/cxf-2.1.4 中;2:在控制台中进入 d:/apache/cxf-2.1.4/bin 目录,执行这个命令:
wsdl2java -p com.zmcn.widget.ws -client http://www.ayandy.com/Service.asmx?WSDL有个前提,设置JAVA_HOME环境变量3:在d:/apache/cxf-2.1.4/bin目录下 会生成com.zmcn.widget.ws目录结构,将其下的文件copy到
你web工程下的com.zmcn.widget.ws目录(自己建目录)4:到 Apache CXF 包 的 lib 目录中把这些文件加载到 Eclipse 的 classpath 中去:cxf-2.2.3.jar
geronimo-activation_1.1_spec-1.0.2.jar
geronimo-annotation_1.0_spec-1.1.1.jar
geronimo-jaxws_2.1_spec-1.0.jar
geronimo-stax-api_1.0_spec-1.0.1.jar
geronimo-ws-metadata_2.0_spec-1.1.2.jar
jaxb-api-2.1.jar
jaxb-impl-2.1.12.jar
saaj-api-1.3.jar
wsdl4j-1.6.2.jar
wstx-asl-3.2.8.jar
XmlSchema-1.4.5.jar
5 测试类:public class Test {
private static final QName SERVICE_NAME = new QName("http://tempuri.org/", "ServiceSoap");
private static final QName PORT_NAME = new QName("http://tempuri.org/", "ServiceSoapPort");
public static void main(String[] args) {
Service service = Service.create(SERVICE_NAME);
String endpointAddress = "http://www.ayandy.com/Service.asmx";
service.addPort(PORT_NAME, SOAPBinding.SOAP11HTTP_BINDING, endpointAddress);
ServiceSoap hw = service.getPort(ServiceSoap.class);
ArrayOfString as = hw.getWeatherbyCityName("上海", TheDayFlagEnum.TODAY);
for(String str : as.getString()) {
System.out.println(str);
}
}
}