orbeon forms 2018.1.1 ce&mysql:在任何已创建表单的摘要页上收到“执行搜索时出错”

wswtfjt7  于 2021-06-17  发布在  Mysql
关注(0)|答案(1)|浏览(224)

我已经安装了orbeon forms 2018.1.1 ce,使用mysql作为关系数据库(mysql版本:8.0.13)。
虽然我可以创建、保存和发布任何表单,但当我尝试访问表单摘要时,会出现“执行搜索时出错”错误。每次我尝试使用页面上部的“搜索表单”控件在摘要页面上搜索表单时,也会显示相同的错误。
除此之外,摘要页总是空的,尽管数据库中的相关表包含相应的记录。应用程序运行在ApacheTomcat(8.5.35)上,数据库是使用mysql-2017\ U 2.sql脚本创建的。
我还检查了orbeon.log文件,发现以下条目:
发生了一个错误
sql语法有错误;请查看与mysql服务器版本对应的手册,以获得正确的语法 row_number FROM orbeon_i_current c, (select @rownum := 0) r 第12行
应用程序调用堆栈
oxf:/apps/fr/page-flow.xml
读取页面视图数据输出46
元素= <service path="/fr/service/(oracle|mysql|postgresql|db2|sqlserver)/search/([^/^.]+)/([^/^.]+)" view="persisten view =持久性/关系性/搜索.xpl
oxf:/apps/fr/persistence/relational/search.xpl文件
读取处理器输出22
元素= <p:output name="data" ref="data"/> 名称=数据
ref=数据
我想知道是否有任何其他需要的配置摘要页正常工作。
使用p6spy应用程序,我意识到以下查询似乎是导致错误消息的原因:

SELECT count(*)
  FROM (
           SELECT c.data_id,
           c.document_id,
           c.draft,
           c.created,
           c.last_modified_time,
           c.last_modified_by,
           c.username,
           c.groupname,
           c.organization_id,
           @rownum := @rownum + 1 row_number
      FROM orbeon_i_current c
           , (select @rownum := 0) r
     WHERE c.app     = 'DemoApp'         AND
           c.form    = 'DemoForm'
       AND c.draft = 'N'
) a

实际上,问题可能出在:@rownum:=@rownum+1行数字
mysql从8.0版开始引入了窗口函数row\u number(),在这一行中,文字“row\u number”被sql引擎转换为一个函数。

bihw5rsg

bihw5rsg1#

这是一个错误,自orbeon forms 2018.2.1 pe以来已修复。

相关问题