现在用java连接。net webservice 接口,
使用 cxf 的JaxWsDynamicClientFactory 动态连接,
对于普通类型的返回没有问题,比如 string int 等,
但是针对于自定义的对象类型,怎么才能实现。

解决方案 »

  1.   

    cxf不会,感觉JAX-WS(JDK6自带的,不依赖任何容器,就是简单的JAVA SE程序)比较简单...
      

  2.   

    返回值都写在xml里,要么生成一个客户端,要么自己解析xml,生成java对象
      

  3.   

    如何调用的?给个demo 看下
      

  4.   

    JAVA的CLIENT都是通过WSDL生成的数据类型与代码,按常理,只要JAVA能生成客端代码,就可以调用成功.
    .net里服务启动后可以看到WSDL.那你的自定义类型就自动可以被序列化了.
      

  5.   

    传入WSDL,cxf会有一个wsdl2java工具生成java接口,再利用jax-ws api
    生成代理及所用的所有对象,利用jaxb解释WSDL中的schema,根据schema,将
    这些对象作为参数序列化到soap消息和xml文档消息中,向.net服务端发送消息
      

  6.   

    自定义类型只要在类中加入jaxb注解,大部分注解可以不加,另外有一些事必须加的
    像java的HashMap,需要专门写XmlAdapter,才可以正常被序列化。网上有这样的资
    料,LZ自己查就行。
      

  7.   

    .NET写的WS用JAVA调用确实存在一定的问题,主要体现在自定义类型以及相互不兼容的容器类,解决的方法是手动修改WSDL文件。
      

  8.   


    如何直接获取到xml,自己解析。 
      

  9.   

    这个要在 WSDL里面定义数据类型吧。Apache官方文档中肯定有自定义数据类型的例子的。。去找下
      

  10.   

    问题是这个wsdl文件是由.net 生成的。
      

  11.   

    现在怎么通过java 获取webservice返回来的xml
      

  12.   

    webservices不就是通过http访问一些服务么,直接通过浏览器访问服务就能得到xml结果
    如果不知道这个url是什么样的,用soapUI访问一下服务,url就出来了