Tag: olingo

如何使用Olingo或SDL OData Framework在Java中使用OData4服务

我需要从Java使用OData4服务,并且基于OData网站上的框架列表,两个选项是Olingo或SDL Odata Framework 。 我的问题是这两个项目的文档都专注于编写一个不消耗一个服务的服务。 Olingo站点链接到2014年的博客文章,该博客文章与当前版本不兼容API,我在SDL github页面上找不到任何内容。 如果有人可以给我一个简单的POST / GET示例,使用一个很好的POJO对象模型。 我有限的理解是OData将有关实际对象模型的任何信息从编译时移动到客户端上的运行时。 我很乐意忽略这个和针对固定对象模型的代码,因为我们使用的服务不会改变。

Olingo – 为OData服务的客户端库创建强类型POJO

我正在使用Apache Olingo作为Java SDK的OData客户端,我将为RESTful OData API提供。 在SDK中,我希望能够使用强类型类来表示OData实体。 我很难轻松实现这一点,因此我觉得我在这里错过了一个不同的策略。 Olingo的方式似乎是获取一个ODataClient对象,该对象为用户提供了许多与API交互的有用方法。 ODataClient使用一堆工厂方法来构建我的请求。 例如,这是我用来从Northwind示例OData服务获取Customers的代码。 client是必需的ODataClient类的实例。 String serviceRoot = “http://services.odata.org/V4/Northwind/Northwind.svc”; URI customersUri = client.newURIBuilder(serviceRoot) .appendEntitySetSegment(“Customers”).build(); ODataRetrieveResponse<ODataEntitySetIterator> response = client.getRetrieveRequestFactory().getEntitySetIteratorRequest(customersUri).execute(); if (response.getStatusCode() >= 400) { log(“Error”); return; } ODataEntitySetIterator iterator = response.getBody(); while (iterator.hasNext()) { ODataEntity customer = iterator.next(); log(customer.getId().toString()); } 我想从迭代器中得到一个强类型实体(即Customer customer = iterator.next() )。 但是,我不确定如何实际做到这一点。 如果我创建一个扩展ODataEntity的Customer类并尝试执行诸如Customer customer = (Customer) […]