问题标签 [fedora-commons]

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

php - fedora commons 通过 REST 错误摄取对象

我最近为我正在进行的一个项目设置了 FEDORA,以对各种媒体进行分类。我希望能够通过 FEDORA REST api 使用文件(数据流)。我设法通过 curl 创建了一个数字对象,完全没有问题。我还设法将一个 html 页面作为数据流添加到上面提到的数字对象中,也没有任何问题。

但是,添加具有其他内容类型/文件类型的数字对象失败并引发内部服务器错误 500。检查日志时,会出现以下错误:

以下是我如何摄取文件的代码片段:

我遇到了这篇文章如何使用 PHP 将图像摄取到 Fedora Commons?尝试了建议的方法,但仍然没有运气。

我究竟做错了什么?我错过了什么?为什么可以将 html 文件数据流添加到数字对象,但是当我尝试添加 .jpeg、.pdf、.txt 等时却失败了?

0 投票
2 回答
132 浏览

ruby-on-rails - 上传 2.4 MB 的大文件大小为 200 页时,出现此错误

RSolr::Error::Http - 400 Bad Request Error: '将文档 id jd472w44j 写入索引的异常;可能的分析错误:文档在 field="suggest" 中包含至少一个巨大的术语(其 UTF8 编码长于最大长度 32766),所有这些都被跳过。请更正分析器以不产生此类术语。第一个巨大项的前缀是:\'[10, 114, 116, 105, -62, -80, 49, 52, 32, 9, 32, 49, 49, 48, 49, 49, 49, 49, 49, 102, 105, 108, 108, 105, 108, 105, 108, 108, 32, 49]...\',原始消息:字节长度最多为32766;得到 36558。也许文档有一个索引字符串字段 (solr.StrField) 太大','code'=>400}}

0 投票
0 回答
52 浏览

fedora - fedora 4.4版本中途取消上传后第二次上传文件问题

我们正在使用 python 脚本将一个将近 50G 的文件上传到 fedora 存储库。我们不得不突然取消它(Ctrl+C),因为我们需要在存储库服务器上突然停机。

现在,我们无法再次上传文件。我看不到对象元数据 xml 中列出的文件。上传时出现以下错误:

回溯(最近一次通话最后):

文件“create_datastream2.py”,第 386 行,在

文件“/opt/python_2_7_11/lib/python2.7/site-packages/requests/sessions.py”,第 576 行,在发送中

发送中的文件“/opt/python_2_7_11/lib/python2.7/site-packages/requests/adapters.py”,第 426 行

requests.exceptions.ConnectionError: ('Connection aborted.', error(104, 'Connection reset by peer'))

而且我可以毫无问题地上传任何其他文件。只是这个我们突然停止的地方,它失败了。

有任何想法吗?如果你需要,我可以分享你的上传脚本。

更新 1: 实际上,现在我记得,我从门户网站上删除了该文件,认为它可能是部分文件。这创建了墓碑并防止另一个文件以相同的名称再次上传。

要解决此问题,我所要做的就是使用 DELETE 请求删除该墓碑。

那么,我想如果文件上传被突然取消不会造成任何问题?任何想法部分上传的文件会发生什么?它是否有任何剩余并占用磁盘中的任何空间?并且java.io.tmpdir指向具有足够磁盘空间(1TB)的磁盘。那么,上传时文件是否会暂时保存在这里,如果取消上传,文件是否会被删除?我在上传时找不到任何文件,除了这个:safeToDelete.tmp

0 投票
1 回答
8692 浏览

rest - curl 没有使用 POST 指定的 URL

在 shell 中,我尝试使用 Fedora Commons 的 REST API 使用 curl 将二进制文件上传到特定位置:

我得到的错误:

遵循此处的说明: https ://wiki.duraspace.org/display/FEDORA471/RESTful+HTTP+API

0 投票
1 回答
56 浏览

java - 使用 apache camel 将 json 文件索引到 Fedora 4

我尝试使用aoache camel和以下代码例程将数据从json文件移动到fedora 4。

代码工作正常,我没有遇到任何错误,但同时它没有在 fedora 4 存储库中建立索引。

0 投票
0 回答
38 浏览

java - Fedora 4 中自定义的 id 和 order 结构

我有一个具有以下结构的 json-ld 文件:

我的页面结构相同。我尝试使用 apache-camel 将数据从文件或从 Activemq 移动到 Fedora 4。传输工作正常,但存在一些问题:

  1. 我无法在 Fedora 4 中创建订单结构。所有数据按以下顺序保存:../ fcrepo-webapp-4.7.4/rest/.well-known/genid
    我想要以下结构:fcrepo/rest/收藏/书/页。书是父母,页面是孩子。书包含许多页。

  2. Fedora 4 创建了他自己的 url id。我知道可以从 json-ld 文件中定义自己的 id。例子: 在此处输入图像描述

  3. 创建自定义的 hasParent 并更改已存在的。代码例程如下所示:

    /li>
0 投票
1 回答
20379 浏览

python - 如何使用 requests.put() 通过 Python 上传文件?

我正在尝试使用 Python 中的请求库将文件上传到本地主机上的 Fedora 公共存储库。我相当确定我的主要问题是不理解open()/read()以及使用 http 请求发送数据需要做什么。

这将成功上传存储库中文件,但之后文件会稍大并损坏。例如,一个 6.6kb 的图像变成了 6.75kb 并且无法再打开。

那么我应该如何在 python 中使用 put 正确打开和上传文件呢?

###额外细节:###

  • 当我替换files=openBindata=openBin我的字典时,我假设数据是一个字符串。我不知道这些信息是否有用。
    "file=FILE_NAME.extension&file=TYPE89a%24%02Q%03%E7%FF%00E%5B%19%FC%.... 文件大小增加到几兆

  • 我使用的是专门 put 因为 Fedora RESTful HTTP API 端点说要使用put.

以下命令确实有效:

curl -u username:password -H "Content-Type: text/plain" -X PUT -T /path/to/someFile.jpeg http://localhost:8080/fcrepo/rest/someFile.jpeg

0 投票
1 回答
27 浏览

ruby-on-rails - 我可以更有效地编写 IO 绑定的 RSpec 测试吗?

我正在从事一个专注于归档文档的项目。作为此过程的一部分,我们使用Fedora 存储库架构。虽然 Fedora 是一个很棒的存储库后端,但写入 Fedora 是一个缓慢的过程,它会导致我们的测试套件的运行时间飙升。

当面对一组 IO 绑定测试时,有没有办法让其他测试在等待 RSpec 中慢速完成的同时运行?

0 投票
1 回答
2211 浏览

python - Fedora30 上的 libpq.so.5 和 PQencryptPasswordConn 版本 RHPG_10 的问题

我正在尝试运行我的 python 脚本,但我遇到了错误。我尝试以不同的方式安装和卸载 psycopg2,但无法正常工作。我的 postgres 版本是 9.6,我的 psycopg2 版本是 2.8.2。有人有同样的问题吗?提前致谢。

0 投票
1 回答
72 浏览

java - 如何从页面使用 Solrj 重新启动 SOLR 搜索?

我正在使用 solrj 迭代整个 solr。Solr 将返回包含 uuid 记录的页面,我正在我的 Fedora Commons Repository 中检查该 uuid。我想迭代整个 solr,就我而言,它可能需要长达一周的时间才能完成。到目前为止,它运行了 3 天,然后因与 solr 无关的错误而失败。

所以我问,有没有办法从某些特定的结果页面运行搜索?假设我总是记录我的最后一页,所以下次当我的程序失败时,我不需要从头开始运行它,而是从我的程序失败的最后一页运行它。有人可以帮忙吗?谢谢你。

我如何迭代 solr: