问题标签 [olingo]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
339 浏览

java - OData 读取单实体最佳实践

我正在使用 OData Olingo Java API V4 创建一个 Rest API。我已经按照教程实现了读取单实体服务。(https://olingo.apache.org/doc/odata4/tutorials/readep/tutorial_readep.html

它基本上是如何工作的:

1. 我的服务从后端(Oracle SQL DB)获取大量数据并创建一个大实体集。

2. 为了从整个实体集中找到正确的实体,我使用了推荐的 Util 类。该类有助于搜索所有实体并最终返回正确的实体。

我是 EJB、JSP、Servlet 的新手,但我认为没有任何默认的会话处理行为可以防止服务再次从后端获取数据(#1.),对吧?我也没有实现类似的东西。这就是为什么我相信该服务会为每个 HTTP 请求一次又一次地获取数据。

我宁愿使用 SQL 语句查找单个实体,而不是使用 Util 类。无论如何,这会很糟糕吗?

0 投票
1 回答
2305 浏览

java - 返回实体集合的 OData 函数因 PowerQuery 而失败

在我目前正在开发的 OData 服务上使用 PowerQuery 时出现此错误:

写入 JSON 响应时,必须指定用户模型,并且必须将实体集和实体类型传递给 ODataMessageWriter.CreateODataEntryWriter 方法,或者必须在正在写入的 ODataEntry 或 ODataFeed 上设置 ODataFeedAndEntrySerializationInfo。

从 PowerQuery 调用返回实体集合的绑定函数时会发生这种情况。从 Web 浏览器调用时,响应为(JSON 格式):

我使用 Olingo V4 库。我的元数据的精简版本将是:

有人知道我错过了什么吗?

0 投票
1 回答
635 浏览

java - 将 JSON 用于 OData(使用 Apache Olingo for Java)时不返回导航链接

当使用下面的代码使用 XML 时,它工作得很好,即导航链接成功返回。但是,当我将格式更改为“json”或“application/json”时,links2 导航链接列表为空,这意味着rental.getNavigations() 返回一个空列表。

有人可以帮忙吗?我正在为 Java OData v4 使用 Apache Olingo。

谢谢

0 投票
0 回答
336 浏览

jax-rs - 带有 JAXRS 2.0 的 Olingo OData v4

我不清楚 Olingo OData v4 实现是否可以与 JAX-RS 2.0 一起使用。

我开发了一个 JAX-RS 2.0 REST Api,从现在开始,我想为 OData 提供它。据我所知,有两种方法可以在服务器端实现 OData v4:

您能否将我重定向到一些文档以了解如何将 Olingo 与我的 JAXRS 2.0 REST Api 集成?

0 投票
1 回答
292 浏览

java - Java OData 服务不接受 URI 中的加号 (+)

我正在尝试使用 Apache Olingo for OData 使用 Java 发出以下查询:

我想要的预期查询字符串是: $filter=CustomerID eq 'Joe'

但是,当库构建上述 URI 时,实际的查询字符串会变成这样:

现在,问题是当我将此查询字符串用于我的 OData 服务时,它似乎不接受加号 (+)。但是,当删除加号并改用空格时,它可以工作
关于此的任何帮助或建议吗?谢谢

0 投票
1 回答
742 浏览

java - 具有复杂类型动态属性的 Odata

目前我正在通过 apache olingo将OData2与 java 一起使用。随着时间的变化,新的需求出现了,现在我们有了复杂类型的动态属性。我们无法提前知道这些属性以提供元数据。

到目前为止,我的阅读,OData4 可以提供openType = true并且以某种方式可以提供可以提供的动态属性

我试图将 Odata2 升级到Odata4,一切都变成了红色。好像不兼容。

我的数据库结构是开放式的。

问题:有什么方法可以在不升级的情况下在 Odata2 中实现动态属性?使用 Odata4 有什么限制吗?

0 投票
2 回答
1109 浏览

odata - 如何在 Olingo OData 服务文档中包含完整的元数据 URI?

我按照 Apache Lingo 教程中概述的步骤创建了一个示例 OData 服务。

客户端收到的默认服务文档为:

有没有办法配置 Olingo 以在文档中包含完整的元数据 uri?具体来说,假设服务在http://localhost:8080/DemoService/DemoService.svc/运行,我希望服务文档如下:

0 投票
1 回答
1113 浏览

java - 如何在 Olingo OData V4 java API 中创建枚举实体类型

我创建了一个枚举:

根据入门教程,我创建了普通的 ODataProvider 类。我所缺少的只是将枚举作为属性实例化的 FQDN 类型的代码和平:

0 投票
0 回答
120 浏览

angularjs - 让 Breeze.js 与 odata4 和 olingo 一起工作?

apache olingo javascript 库已经过测试版并已发布。因此,可能已经可以使用带微风的 odata 4。我在互联网上没有找到任何消息。

我想让它在 angularjs 应用程序中工作。

0 投票
1 回答
673 浏览

java - 如何在 Apache Olingo V4 Java API 中使用字符串枚举

我只是不知道在数据创建过程中如何使用CsdlEnumTypeApaches Olingo V4 Java API。

到目前为止,这是我用尽可能少的代码所做的事情:

1)在我的EdmODataProvider.java班级中,我创建了一个实体类型并将FQDN枚举实体添加到属性中。此外,我CsdlEnumType在模式提供程序类中实例化了 。我想这是可行的,因为如果我在setValue()部分中只使用数字,我会得到预期的结果。:

2)在我的数据提供者类中,我正在创建一个这样的实体:

如果我试图调用实体,我最终会收到错误:

我的$metadata包含:

我想问题出在第 2 部分)中,我将属性添加DISPNAME为字符串。知道如何解决这个问题吗?