当web服务为简单类型时,没有问题。当web服务为对象时,报错。
我想不管是简单类型还是对象之类的复杂类型,是不是都是xml,我获得这个字符串然后解析就是了。
结果报错,不知如何改
部分代码:
 Service service=new Service();
 Call call= (Call) service.createCall();
 call.setTargetEndpointAddress(new java.net.URL("http://211.144.32.147/myServer/Service.asmx"));
 call.setOperationName(new QName("http://211.144.32.147/","HelloWorld"));
 call.setUseSOAPAction(true);
 call.setReturnType(org.apache.axis.Constants.XSD_STRING); 
 call.setSOAPActionURI("http://211.144.32.147/HelloWorld");
call.invoke(new Object[] {})http://211.144.32.147/myServer/Service.asmx这个页面可以用IE访问。
如何获得这个服务中的HelloWord的xml字符串?

解决方案 »

  1.   

    你是不是贴错版了。。这是JAVA的。你是不是想要关于WEBSERVICE java调用C#的啊,你最好还是用SOAP协议,写那个好理解。。去找一个也很方便
      

  2.   

    你用stub模式,把C# web service涉及的类,转换成JAVA中的类,然后调用不就可以了吗。
      

  3.   

    是用java调用c#的webService。返回的不是简单类型,是一个类
    楼上能否稍微讲的详细些..
      

  4.   

    你在C#端应该生成WSDL文件,
    通过Axis的org.apache.axis.wsdl.WSDL2Java工具生成相应的stub类和其他类,
    这样你在JAVA程序中使用WS里面涉及的类就跟使用自己的类一样了。LZ可以试下
    关于org.apache.axis.wsdl.WSDL2Java工具的使用,可以参看这个URL下的Creating a WSDL Test一节。
    http://ws.apache.org/axis/java/developers-guide.html#UsingSOAPMonitorToMonitorFunctionalTests