问题标签 [entityresolver]

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 回答
440 浏览

c# - Azure TableEntity EntityResolver 调用和重用基本解析功能

我正在创建一个自定义 EntityResolve,这样当我检索我的天蓝色表记录时,我将在业务对象(TableEntity 对象)上设置一堆属性,这些属性仅用于我的应用程序,而不是持久化回 Azure桌子。Azure 表上的属性用 [IgnoreProperty] 修饰

因此,我正在创建 EntityResolver,并将委托作为参数传递给 ExecuteQuerySegmentedAsync 方法,该方法将自定义绑定到表实体。

但是,我不想编写代码来自定义将每个属性解析为 TableEntity。我想使用所有默认的解析功能,然后添加一些额外的代码和业务逻辑来设置用于业务逻辑的其他属性。

在解析器中,无论如何我可以利用默认或一种基本解析功能,这样我就不必仅仅因为我想添加更多的部分而重写所有逻辑来做同样的事情一些新属性的代码和逻辑?

0 投票
0 回答
566 浏览

mysql - 使用 mysql DB 将 Dedupe 包功能扩展到大数据

我现在一直在尝试制作一个地名词典/重复数据删除的工作示例,该示例可以扩展到连接到 SQL 的半大型数据集(使用包提供的示例)并且没有成功。如果有人可以为我提供一些帮助或分享他们的工作样本,我将不胜感激。

到目前为止我尝试过的事情:

  • 我已经尝试过SQL 示例。我不得不打破一些 sql 代码来分隔创建和插入语句以满足 GTID 标准,但其他一切都遵循示例。我遇到的问题是当它到达集群部分时(在看似成功运行到该点之后)并给我以下错误:
    “dedupe.core.BlockingError:没有记录被阻止在一起。是你的数据试图像你训练的数据一样匹配?” 无论我做了什么,这都没有解决(我正在对相同的数据进行训练和测试,所以这个错误对我来说没有意义。)

  • 对于大型地名词典,我曾尝试使用此示例开始,但这是我得到的错误:“TypeError:train() 最多需要 3 个参数(给定 4 个)”。我在这里所做的唯一更改是连接到 mysql 数据库。此外,我找不到任何关于如何实际扩展地名词典匹配所有部分的指导(或者只是不明白这个例子是如何帮助的)。

有没有人能够使用 mysql 将这些实际扩展到大数据?

如果我需要提供更多信息或代码片段,请告诉我。

提前致谢。

0 投票
1 回答
1279 浏览

java - 如何设置实体解析器?

我正在尝试动态设置 dtd 路径。当我使用 EntityResolver 类时,它适用于org.xml.sax.XMLReader。但我不知道如何为SAXSource设置EntityResolver。如何更正以下代码?

实体解析似乎适用于这一行:

但以下行失败:

我得到这个错误:

doc\maps\bookmap.dtd(系统找不到指定的文件)

0 投票
2 回答
160 浏览

xslt - 合并多个 xml 文件时,如何为子 xml 文件以及父 xml 设置 EntityResolver?

我有一个引用其他多个 xml 文件的书 xml 文件。当我尝试在 book.xml 文件上运行 xslt 时,我的代码中的 EntityResolver 解析了 dtd 路径。但是,对于正在合并的子 xml 文件,不会解析 dtd 路径。

示例 sample_book.ditamap

`

Java 代码

预期结果

`

`

实际结果

运行 XSLT 时,将显示以下错误消息。当我将 dtd 文件移动到主题文件夹时,错误消失了。

xsl:apply-templates/@select on line 30 column 104 of >merge.xsl: FODC0002: I/O error reporting by XML parser processing file:/D:/sample/sampledoc/topics/introduction.dita: D:\sample \sampledoc\topics\concept.dtd(系统找不到

文件指定)在 xsl:apply-templates/@select 的第 30 行第 104 行的 >merge.xsl: FODC0002: I/O 错误报告的 XML 解析器处理文件中报告的 I/O 错误:/D:/sample/sampledoc/topics/ install.dita: D:\sample\sampledoc\topics\task.dtd (系统找不到指定的>文件)

0 投票
1 回答
1418 浏览

node.js - NestJS + TypORM 设计模式:解析器与服务

我发现了许多嵌套“示例”应用程序的示例,但每个示例对设计模式的看法似乎都略有不同。我目前对与 TypeORM 结合使用时,解析器和服务之间的对象准备工作应该在哪里进行感兴趣。

例如:

评论.resolver.ts:

评论.service.ts:

IE

  • 创建新的空评论实体
  • 添加查询未提供的字段值
  • 使用扩展运算符将它们组合在一起
  • 将它们全部传递给评论服务以通过 TypeORM 存储库保存

理由是评论服务只接受并保存格式良好的实体。也许将来我需要准备以不同方式创建的评论,以便在新的突变中定义。

这是反模式吗?我是否应该将该对象创建/组合/格式化移动到服务中,并使解析器方法尽可能轻?

如果是这样,这背后的逻辑是什么?

0 投票
1 回答
197 浏览

python - Python SAX 解析器:resolveEntity

我很难弄清楚如何将我自己的 ResolveEntityHandler 绑定到 SAX 解析器。在 SO 那里有这个答案。但不幸的是,我无法在那里重现结果。

当我运行以下代码时,实际上是从上述答案中复制的,刚刚更新到 Python 3,

和外部test.dtd

我得到的是

所以我的问题是:

  1. 为什么resolveEntity从未被调用?
  2. 如何将 ResolveEntityHandler 绑定到您的解析器?