我正在尝试为超媒体API实现一个spring android客户端,并以HAL格式响应。Spring HATEOAS参考文档描述了客户端服务遍历的实现,其灵感来自Traverson JavaScript库。我这样做:
Traverson traverson = null;
try {
traverson = new Traverson(new URI(getString(R.string.api_test_uri)), MediaTypes.HAL_JSON);
} catch (URISyntaxException e) {
e.printStackTrace();
}
String name = traverson.follow("movies", "movie", "actor").
withTemplateParameters(parameters).
toObject("$.name");
但我在创建新的Traverson对象时遇到以下错误:
java.lang.NoClassDefFoundError: org.springframework.hateoas.hal.HalLinkDiscoverer
有人知道怎么修吗?
是否有其他/更好的方式支持android中的HAL响应?
据我所知,Spring的Traverson实现在Android中不可用,因为它是Spring HATEOAS模块的一部分,该模块依赖于Spring core,而Spring core最终依赖于JDK对StAX的实现。Android没有一个StAX实现,因为它在javax中*
软件包,Android运行时将不允许您加载一个。
在一篇博客文章中,Josh Long描述了将Spring Social和Spring Security应用于Android的过程;从本质上讲,您必须去掉它们的大部分依赖项,并有选择地只重新添加所需的依赖项。然而,您无法处理像JAXB或STaX这样的软件包,这些软件包的Android实现不兼容或缺失,因此您必须重写依赖于它们的代码,以使用其他软件包。
有人针对spring hateoas项目发布了一个支持Android的请求,但该请求已被关闭(两天前,我写这篇文章时),并发表了一条评论:“我们目前无法向这样一个特定于平台的功能投入资源”。(另一方面,其他人似乎用上述方法取得了成功,所以也许值得追求?)
Mike Kelly在关于HAL标准的文档中提供了支持HAL的库的列表。目前,我正在基于HalBuilder设计一个解决方案,目前看来很有希望。
tl;dr:如果你不付出很多努力,Spring的Traverson就不会成功。你最好自己建造一个。将您最喜欢的HTTP库与HAL库一起使用,您就可以做到这一点。
Now that you are the proud owner of a Packt book, we have a number of things to help you to get the most from your purchase.
第一个twisted支持的诗歌服务器 尽管Twisted大多数情况下用来写服务器代码,但为了一开始尽量从简单处着手,我们首先从简单的客户端讲起。 让我们来试试使用Twisted的客户端。源码在twisted-client-1/get-poetry.py。首先像前面一样要开启三个服务器: python blocking-server/slowpoetry.py --port 10000 poetry
我想知道如何将缓存配置添加到Vertx http web客户端。 使用Apache http客户端,我可以轻松地设置setCacheConfig 有什么想法吗?
我们需要在couchbase客户端和couchbase集群之间实现ssl通信。我正在使用spring数据couchbase客户端api与couchbase集群进行交互,这个api的问题是我没有找到任何属性在couchbase客户端上启用ssl,你能帮我在couchbase客户端上配置ssl吗。
★表示该语言的推荐客户端。 ActionScript as3redis Repository cwahlers C hiredis ★ Repository antirez pnoordhuis 这是官方的C语言客户端。支持全部的set命令,管道,事件驱动编程 credis Repository libredis Repository 通过poll,ketama哈希支持在多服务器上并行执行命令 C
问题内容: 我正在使用需要支持以下方案的GWT应用程序: 服务器位于时区A 客户端的浏览器设置为时区B GWT应用程序配置为在时区C中显示日期/时间 由于GWT不支持Calendar,并且不存在对javascript时区的本地支持,因此我无法想到一个解决此问题的好方法。 你们有没有做过类似的事情,或者您知道我可以使用的任何好工具吗? 谢谢! 问题答案: 以我的经验,在处理gwt中的日期和时区时,以