使用WSDL NB的Codenameone - ClassDefNotFound

时间:2012-09-09 15:11:36

标签: ant jar wsdl lwuit codenameone

我已经使用NB通过NB界面将“客户端Web服务”添加到Codename one应用程序。这在模拟器中工作正常。

WSDL类是在构建期间自动生成的,我将它们登陆到com.myco.myapp.generated包中。

检查生成的JAR后,WSDL类就可以了。

但是当我把这个推向“build for Android”到codename1时,在我得到的设备上运行

An Internal application error occurred : java.lang.NoClassDefFoundError: com.myco.myapp.generated.SimpleStockList_Service

但是JAR肯定会上课。

我确信它与JAR及其清单有关,但从来没有真正必须使用Ant和JAR以及构建以了解该做什么。

由于这些类是在ant构建期间生成的,所以我无法将它们打包到库中。 (尝试过并因同一类的2个实例而失败。)

2 个答案:

答案 0 :(得分:1)

Codename One目前不支持二进制库,您需要将源代码集成到构建过程中。在这样的设置中支持二进制库涉及许多复杂性。

答案 1 :(得分:1)

感谢Shai的帮助。

最终答案不是使用WSDL,因为移动对象依赖于小型Java包中未包含的序列化。

由于这个原因,我创建了一个自定义servlet,其中codename1 ConnectionRequest可以通过标准HTTP请求来处理。

这就是我实现它的方式 http://www.jamesarbrown.com/?p=164