3

我有一个 java 后端,需要向在以下环境中运行的客户端公开服务:

  • J2ME
  • 视窗手机
  • 苹果手机

我正在为每个平台寻找最好的工具。
我不会寻找一种无处不在的技术。
我需要适合低速互联网访问的“轻量级”。

现在我正在使用 SOAP。它很冗长,不容易在移动设备上解析。问题是我还没有看到任何真正的替代方案。

是否有一种格式可以与这些平台之一“开箱即用”?
我宁愿不使用会大大增加应用程序下载时间的臃肿库。

每个人似乎都同意 JSON。有没有人实现了基于 JSON 的解决方案,运行 Objective-C、J2ME、Windows Mobile ?

注意:到目前为止,最好的解决方案似乎是 Hessian。它在 Windows Mobile 和 Objective-C/iPhone 上运行良好。最大的问题是 J2ME。Hessian 的 J2ME 实现有严重的局限性。它不支持复杂对象。我已经写了另一个关于它的问题。

如果您有任何想法,非常欢迎。

4

5 回答 5

9

JSON相当紧凑,并且被大多数框架支持。您可以使用标准REST技术通过 HTTP 传输数据。

有用于JavaObjective C许多其他语言的 JSON 库(向下滚动)。在服务器端找到框架支持应该没有问题,因为 JSON 用于 Web 应用程序。

较旧的替代方案包括纯 XML 和 XML-RPC(类似于 SOAP,但要简单得多,并且带有适用于大多数语言的库)。

于 2008-09-17T12:45:56.740 回答
5

黑森州。 http://hessian.caucho.com。多种语言(包括 ObjC)的实现,超轻量级,并且不需要依赖 dom/xml 解析器来进行从线到对象模型的转换。一旦我们找到 Hessian,我们就忘记了我们曾经了解过 XML。

于 2008-09-17T16:17:53.407 回答
2

REST + XML 或 JSON 将是一个不错的选择。它在 RIA 世界中取得了长足的进步,它的美妙之处在于它的简单性。它非常易于使用,无需任何特殊工具。SOAP 有它的优点,但它在具有强大工具支持的环境中工作得最好。我从你的问题猜想不是这样的。

于 2008-09-17T12:47:35.130 回答
2

支持 JSON。我将Stringtree JSON 阅读器移植到 J2ME。它是一个单类 JSON 阅读器,可编译成 5KB 的类文件,并将 JSON 结构直接映射到本机 CLDC 类型,如 Hashtable 和 Vector。现在我可以将同一台服务器用于我的桌面浏览器 AJAX 前端和我的 J2ME 客户端。

于 2008-09-18T20:47:27.837 回答
1

普通的旧 XML(有点不幸地称为 POX)怎么样?

另一个非常有用的选项是JSON。每种编程语言都有库。

可能,由于您在计算和网络资源方面都受到限制的环境中工作,并且使用静态类型语言,因此 Google 的协议缓冲区将更适合您。(忽略其中的 RPC 垃圾;RPC 是一种有吸引力的麻烦,而不是一种有用的技术。)

您的问题的问题在于,您没有提供关于这是什么类型的数据以及您的用例是什么的大量背景信息,因此除了非常模糊的概括外,很难说任何话。

于 2008-09-17T12:48:20.633 回答