Jena tdb 中的事务发生错误?

2024-04-30

我正在尝试将属性写入模型,然后查询它。我的代码的这一部分:

String directory = "EMAILADDRESS" ;
//create the dataset for the tdb store
Dataset ds = TDBFactory.createDataset(directory) ;
//create default rdf model
ds.begin(ReadWrite.WRITE);
Model model = ds.getDefaultModel() ;
//write to the tdb dataset

当我写这个然后查询时,查询没有显示结果......但是当我交换模型的顺序并开始时,即

Model model = ds.getDefaultModel() ;
//write to the tdb dataset     
ds.begin(ReadWrite.WRITE);

然后就可以正常工作了!!但有时会出现此错误:

com.hp.hpl.jena.tdb.transaction.TDBTransactionException: Not in a transaction

我知道第一种方法是正确的,但我不明白为什么它不响应查询。这是查询代码:

public class test4query extends Object {
    public static String[] arr=new String[30];
    public  void  mai (String s) {
        String directory = "EMAILADDRESS" ;
        Dataset ds = TDBFactory.createDataset(directory) ;
        ds.begin(ReadWrite.READ) ;
        Model model = ds.getDefaultModel() ;

        QueryExecution qExec = QueryExecutionFactory.create(s, ds) ;
        int i=0;
        try{
             ResultSet rs = qExec.execSelect() ;
             String x=rs.toString();

             while (rs.hasNext()) {
                 QuerySolution qs = rs.next();
                 String rds;
                 if(qs.get("x")!=null) {
                    rds = qs.get("x").toString();
                 } else {
                    rds="hi";
                 }
                 if(rds==null) {
                    break;
                 }
                 System.out.println(rds);
                 arr[i] = rds;
                 i++;   
             }
        } finally
             {qExec.close() ;
             ds.commit();
             ds.end();
        }

    }
}

目前尚不清楚您何时获得帽子例外。该代码示例充满了被注释掉的部分,并且根本没有使用“m”。

调用 qExec.close 或 ds.commit 后,无法调用 ResultSetFormatter.out(rs)。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Jena tdb 中的事务发生错误? 的相关文章

  • 当 defer func 评估其参数时

    我正在学习 defer 在 golang 中的行为方式 并想用它来处理函数返回时的错误 代码如下 package main import fmt import errors func main a func a var err error
  • 在SPARQL中使用LIMIT时如何获取结果总数?

    我有一个 SPARQL 查询 它返回结果LIMIT共 20 个 在此查询中 我还想知道结果总数 而无需运行查询两次 一次运行LIMIT和一个没有LIMIT 例如 运行查询时 可能的结果总数为 500 个 其中LIMIT它一次只显示 20 个
  • 使用 rdflib-sqlalchemy 的 SPARQL 查询性能

    我有 7200 个左右的 SKOS Concept 对象 由 rdflib sqlalchemy 通过解析存储在 Postgres DB 中的海龟文件创建 以下 SPARQL 查询需要 30 多秒才能响应数据 SELECT subject
  • 提取给定节点的所有父节点

    我正在尝试使用以下命令提取每个给定 GO Id 节点 的所有父级EBI RDF sparql 端点 https www ebi ac uk rdf services sparql 我是根据this https stackoverflow c
  • 何时捕获 java.lang.Error?

    在什么情况下应该抓住java lang Error在申请上 一般来说 永远不会 但是 有时您需要捕获特定的错误 如果您正在编写类似框架的代码 加载第 3 方类 那么最好抓住LinkageError 未找到类定义 链接不满足 类更改不兼容 我
  • Go 中的格式错误 - %s %v 或 %w

    s v and w可用于格式化 Go 中的错误 将它们转换为字符串 fmt Errorf 它们在 Go 自己的工具中的使用方式似乎有所不同 In cmd go internal get path go https github com go
  • 如何在 netsuite 中使用 suitescript 2.0 显示自定义错误消息而不使用堆栈跟踪

    我想使用 suitescript 2 0 版本向用户显示没有堆栈跟踪的自定义错误消息 在工作流程中 自定义错误消息在没有堆栈跟踪的情况下显示 但在套件脚本中 错误消息 与堆栈跟踪一起显示 堆栈跟踪错误 type error SuiteScr
  • 如何使错误冒泡,以便可以在同一个 try/catch 块中捕获它们?

    我有一个带有抛出错误的函数的对象 myObj ini function this f f function throw new Error 但我只想捕获创建对象的异常 try var o new myObj catch err alert
  • SPARQL 为缺失字段生成值

    我正在尝试编写一个 SELECT 它为我提供表中的所有值 我有可选值 我希望用标准值填充它们 如果它们不存在 这是我的代码 SELECT WHERE a nmo hasObject nm coin OPTIONAL a nmo hasAut
  • 纯 Fortran 过程中的 I/O

    我正在尝试将错误检查合并到我正在编写的纯过程中 我想要这样的东西 pure real function func1 output unit a implicit none integer a output unit if a lt 0 th
  • 如何在node-mysql查询后获取警告

    如何获取查询执行后识别的相应警告 如下所示 connection query squery function err rows search for OkPacket in 2 dimension array var warningCoun
  • DISM.exe 返回代码?

    我有一个程序调用 dism exe 程序 它在后台运行一些命令 现在 我只检查返回代码 0 或其他任何内容 以显示进程失败或成功 我可以用什么来交叉检查返回代码以获得准确的返回错误 DISM 参考了哪些回报 评论中提供的链接DISMAPI
  • SPARQL (Jena) UPDATE 可以通过文字集合(而不是文字)进行参数化吗?

    我可以调用参数化的 SPARQL UPDATE 如 Jena 的ParameterizedSparqlString 将属性设置为多个 例如字面值 例如 我有 Set
  • 无法渲染非字符串的属性,toString 返回:null SPRING MVC 中的错误

    我正在尝试按照本教程为我的 spring mvc 项目创建一个通用错误处理程序 http www mkyong com spring mvc spring mvc exceptionhandler example http www mkyo
  • SPARQL:如何将 owl:equivalentClass 传输到 rdfs:subClassOf (owl:Restriction) 属性?

    我的问题是关于使用 SPARQL 查询一些 owl 本体 其中owl Restrictions被大量使用 在我的例子中 这是 细胞本体论 http obofoundry org ontology cl html 以下是一些典型条目的示例 以
  • Apache Flink - “keyBy”中的异常处理

    由于代码错误或缺乏验证 进入 Flink 作业的数据可能会触发异常 我的目标是提供一致的异常处理方式 我们的团队可以在 Flink 作业中使用这种方式 而不会导致生产中出现任何停机 重启策略似乎不适用于此处 因为 简单的重启无法解决问题 我
  • 调试断言失败。表达式(流!=NULL)

    我收到以下错误 调试断言失败 表达式 流 NULL 文件 f dd vctools crty bld self x86 crt src fwrite c 创建 4 个线程时 CPU 使用率 100 该代码最初运行良好一段时间 然后给出此错误
  • 可插入错误处理策略[关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 我有服务对象 服务 A 它有一些特定的重复异步任务 该服务对象还有一个监督对象 服务B 我想处理与服务 A 中特定任务相关的大部分错误
  • Asp.net mvc 重写基本控制器中的 OnException 不断传播到 Application_Error

    我试图返回一个视图 而不是根据我的应用程序可能发生的某些错误向用户发出重定向 我想处理错误 将它们记录在我的基本控制器中 我不希望错误传播到我的Global asax Application Error 方法 因为我希望此方法处理我的应用程
  • 良好的错误处理实践

    对于 ASP NET 站点来说 什么是良好的错误处理实践 例子 谢谢 与任何 net 项目一样 我发现最好的方法是仅捕获可能发生在给定页面上的特定错误类型 例如 您可以捕获用户给定输入的格式异常 以防 JavaScript 验证失败并且您没

随机推荐