问题标签 [autobean]

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 投票
1 回答
457 浏览

java - @Category 注释中的多个类型

GWT AutoBean 页面说:

@Category 注释可以指定多个类别类型。

以下语法给出了标记 ",", / 预期的语法错误

指定多个类别类的语法是什么?

0 投票
1 回答
1218 浏览

java - AutoBean、数组/列表属性和 JSNI

我在 Autobeans 的上下文中以某种方式与数组和 JSNI 作斗争。
在我的一个 GWT 项目中,我使用 JSON 从后端检索数据。
在客户端上检索到数据后,我想使用自定义可视化小部件(用 javascript 开发)对其进行可视化。

以下是组件:

JSON结构

基本上我的 json 有效负载中有两个数据集。ids是一个 ints ( int[]) 数组,data是一个 float 数组 ( float[][])

当然有不同的方法来解析客户端上的数据。我决定使用 AutoBeans。所以我为我的 json 结构定义了一个接口。

自动豆

解析数据工作正常。

我的自定义可视化小部件有一个 API 函数来设置如下所示的数据:

问题是使用 JSNI 我不能使用普通的 Java 数组。我必须使用JsArray.

所以我必须将我的 AutoBean 属性(dataids)转换为 JsArray 实例。有没有更好/更好的方法来做到这一点?

或者也许我应该使用JSONParser而不是AutoBeans 更有效?

0 投票
2 回答
278 浏览

gwt - 无法将新条目插入反序列化的 AutoBean 映射

当我尝试向反序列化的 Map 实例插入新条目时,我没有得到任何异常,但 Map 没有被修改。这个入口点代码探测它。我做错了什么?

}

0 投票
1 回答
443 浏览

gwt - 使用带有 JsonRpc 方言的 ValueProxy 参数时,RF 'Unfrozen bean with null RequestContext'

当我尝试发送使用 ValueProxy 参数的请求时,我得到了这个“Unforzen bean”异常。我不知道这个异常是否是因为使用 JsonDialect 的 RF 存在错误,或者我做错了什么...... ¿ 一些帮助?

0 投票
1 回答
843 浏览

java - 使用 AutoBeans 以接口作为参数的 GWT RPC 调用

我尝试将 AutoBeans 添加到我们的 GWT 应用程序中,以将我们的对象序列化为 cookie,然后将它们读回。

但是,在此之后我无法使用反序列化对象调用 GWT RPC 方法调用。谁能提供有关 RPC 调用失败原因的任何见解?

示范:

然后运行:

...这似乎按预期工作:

但是现在我的 RPC 方法失败了,并且caught.getMessage()null.

服务定义:

调用者:

此外,我在服务器日志中看不到任何请求。

任何人都可以帮忙吗?非常感谢

0 投票
1 回答
4798 浏览

json - 如何序列化 AutoBean (GWT) 中的列表?

我试图弄清楚如何在 GWT 中使用 AutoBean 序列化列表,但我不断收到空指针异常。

这是我所拥有的:

谁能帮我指出正确的方向?非常感谢你。

这是支持的类和接口:

这是NPE:

0 投票
1 回答
501 浏览

gwt - AutoBeanCodex.encode 省略了具有默认值的属性

我正在通过AutoBean转换为 JSON 的 s 与 Web 服务通信。问题在于,Web 服务期望 JSON 对象的每个属性都存在于请求中,而AutoBeanCodex.encode()似乎忽略了所有具有默认值的属性(尽管这些属性是显式设置的)。

有没有办法也包含这些属性?

编辑:托马斯的回答已经帮了很多忙,但它仍然留下了一个小问题。即一个空数组(List<Integer>在我的情况下)也被吞下,显然是因为默认值是空数组而不是null

0 投票
1 回答
270 浏览

java - 任意精度数字和 Javascript,Google Web Toolkit

这不是一个真正的问题,因为我确实解决了这个问题,但我想我会让每个人都知道,因为它可能会对人们使用 Google Web Toolkit 的方式产生相当广泛的影响。

所以问题之一是谷歌 gson在 JSON 中表示数字的方式。例如,int myInt = 2将成为"myInt":2long myLong = 5432198765L将成为"myLong":5432198765BigInteger myBI = 1310381093810938109481049128409487109378109248104098130981039810983将成为"myBI":1310381093810938109481049128409487109378109248104098130981039810983。虽然 gson 本身可以毫无问题地反序列化它,但 JSON 格式的 GWT 2.4 中的 AutoBeans 框架不会喜欢它。问题 6331修复了即将发布的 GWT 2.5 版本中的长表示。但是,由于 Javascript 数字精度的工作方式,问题 7555将无法解决。

因此,我们需要将 BigIntegers 表示为字符串,它会起作用,例如,String myBIStr = new BigInteger("1310381093810938109481049128409487109378109248104098130981039810983").toString()将表示为"myBIStr":"1310381093810938109481049128409487109378109248104098130981039810983". 在 GWT 端,这将产生一个字符串,我们将不得不用它构建一个 BigInteger。

谷歌为什么不解决 7555 这一切都说得通,但这让我想到了一个真正的悬而未决的问题:如何处理 Javascript 中的高精度数字?

一般来说,如果基于 Web 的 Javascript 和 Google Web Toolkit 前端要挑战原生前端,那么可能会出现我们使用任意精度数字的情况,而不是受限于评论 3的大约 53 位精度谈到。更糟糕的是,这个限制不会影响 node.js 或任何其他服务器端 Javascript 吗?

有没有很好的解决方法,尤其是使用 Google Web Toolkit 或与 Google Web Toolkit 无缝协作的解决方法?

0 投票
2 回答
1689 浏览

java - GWT Autobean Codex 读取地图

我有一个 JSON 映射,例如:

带有键和值字符串。我尝试用 autobean 阅读它,但我得到了奇怪的例外。它应该是直截了当的,不是吗?

我得到的错误是:

我是这样读地图的:

工厂定义为:

那有什么问题?

0 投票
1 回答
287 浏览

java - RequestFactory 请求 (AutoBeanCodexImpl.doCoderFor) 永远不会完成并使用 100% cpu

我们在 tomcat 上部署了一个 GWT 应用程序,使用几个小时后(2 个 QA 执行一般测试),java 进程开始使用所有 CPU 并且应用程序变慢。

我查看了 tomcat 管理器,发现有许多长时间运行的 HTTP 请求,它们都指向“/gwtRequest”,这是我们的 RequestFactory servlet。

之后我进行了线程转储,发现转储中的所有 RUNNABLE http 线程都指向“AutoBeanCodexImpl.doCoderFor()”

有人可以指出我应该看的地方吗?谢谢