Web服务存根生成+ android

mud*_*dit 7 android web-services ksoap2

我想生成一个基于android(java)的STUB来访问所有的Web服务.我尝试使用以下工具生成存根:

1)用于CLDC的Sun Java(TM)Wireless Toolkit 2.5.2_01,

2)ksoap2-generating-stub-0.1-SNAPSHOT-J2me-Android.

但是我无法生成可以使用的正确存根.请建议您为此目的使用的任何库或工具.

谢谢!!

这里有人!!

更新:

sun java lib的问题: Android不支持一些java库.例如:"javax.microedition.xml.rpc.Operation"等.

ksoap2的问题:使用以下登录命令提示符获取空指针异常:

我使用Windows命令提示符运行的命令:

java -cp ksoap2-generating-stub-0.1-SNAPSHOT-jar-with-
dependencies.jar;"%JAVA_HOME%\lib\tools.jar"
ksoap2.generator.Wsdl2Android -w "http://localhost:8080/Ws2Ksoap/
services/HelloWorld?wsdl" -g .\generated
Run Code Online (Sandbox Code Playgroud)

一旦我运行此代码,我得到以下异常:

Exception in thread "main" java.lang.NullPointerException
        at ksoap2.generator.WsCompiler.compile(WsCompiler.java:86)
        at ksoap2.generator.WsCompiler.run(WsCompiler.java:78)
        at ksoap2.generator.Wsdl2J2me.run(Wsdl2J2me.java:116)
        at ksoap2.generator.Wsdl2Android.main(Wsdl2Android.java:41) 
Run Code Online (Sandbox Code Playgroud)

另一个更新:创建的Web服务不得使用java.rmi.*包的任何实例.

小智 2

您是否将 ksoap2 jar 文件包含到您的项目中...?我已经完成了使用 ksoap2 的 Web 服务示例并成功获得了它。我曾经使用过www.w3schools.com的在线网络服务,该网络服务的详细信息如下......

soap_action = "http://tempuri.org/CelsiusToFahrenheit"; method_name = "摄氏度转华氏度"; 命名空间=“http://tempuri.org/”;url = "http://www.w3schools.com/webservices/tempconvert.asmx";

希望这会帮助你。祝你好运

  • 谢谢你的视频。但这不是我正在寻找的东西。我正在寻找这个:我有一个 WSDL 文件,其中包含一些方法(返回一些复杂的对象)。现在我想使用一些工具生成java代码,我可以使用这些工具来访问这些方法。 (3认同)