ediarum / ediarum.DB

eXistdb App for ediarum.BASE.edit and ediarum.REGISTER.edit
GNU General Public License v3.0
15 stars 9 forks source link

Fehler bei Registern: #9

Closed ksbbf closed 3 years ago

ksbbf commented 4 years ago

Liebe Entwickler,

wenn ich in einem frisch installierten existdb 4.4.0 (aber auch 4.7) eines der letzten beiden Releases (ediarum.db-3.2.5.445.xar) installiere erhalte ich folgende Fehlermeldung beim Aufruf eines Registers:

err:FOER0000 Can't get 'collection-id' in Personenregister [at line 1585, column 13, source: /db/apps/ediarum/modules/config.xqm] In function: config:get-parameter(xs:string) [313:34:/db/apps/ediarum/modules/config.xqm] project-pages:list-index-items(node(), map(*)) [-1:-1:/db/apps/ediarum/controllers/project-pages-controller.xql]

Das passiert wenn ich über das Menü das Personenregister aufrufe.

Habt ihr einen Hinweis?

[Anmerkung: Der einzige Unterschied zu einer Standardinstallation ist ein anderer Port.]

tutebatti commented 4 years ago

Hallo, ich habe ein ähnliches Problem:

err:FOER0000 Can't get 'collection-id' in Ortsregister [at line 1585, column 13, source: /db/apps/ediarum/modules/config.xqm]
In function:
    config:get-parameter(xs:string) [313:34:/db/apps/ediarum/modules/config.xqm]
    project-pages:list-index-items(node(), map(*)) [-1:-1:/db/apps/ediarum/controllers/project-pages-controller.xql]
    templates:process-output(element(), map(*), item()*, element()) [211:9:/home/ediarum-user/eXistdb/webapp/WEB-INF/data/expathrepo/shared-0.9.1/content/templates.xql]
    templates:call-by-introspection(element(), map(*), map(*), function(*)) [189:28:/home/ediarum-user/eXistdb/webapp/WEB-INF/data/expathrepo/shared-0.9.1/content/templates.xql]
    templates:call(item(), element(), map(*)) [137:36:/home/ediarum-user/eXistdb/webapp/WEB-INF/data/expathrepo/shared-0.9.1/content/templates.xql]
    templates:process(node()*, map(*)) [237:13:/home/ediarum-user/eXistdb/webapp/WEB-INF/data/expathrepo/shared-0.9.1/content/templates.xql]
    templates:process(node()*, map(*)) [148:81:/home/ediarum-user/eXistdb/webapp/WEB-INF/data/expathrepo/shared-0.9.1/content/templates.xql]
    templates:process(node()*, map(*)) [148:81:/home/ediarum-user/eXistdb/webapp/WEB-INF/data/expathrepo/shared-0.9.1/content/templates.xql]
    templates:process(node()*, map(*)) [148:81:/home/ediarum-user/eXistdb/webapp/WEB-INF/data/expathrepo/shared-0.9.1/content/templates.xql]
    templates:process(node()*, map(*)) [148:81:/home/ediarum-user/eXistdb/webapp/WEB-INF/data/expathrepo/shared-0.9.1/content/templates.xql]
    templates:process(node()*, map(*)) [428:17:/home/ediarum-user/eXistdb/webapp/WEB-INF/data/expathrepo/shared-0.9.1/content/templates.xql]
    templates:process-output(element(), map(*), item()*) [230:9:/home/ediarum-user/eXistdb/webapp/WEB-INF/data/expathrepo/shared-0.9.1/content/templates.xql]
    templates:process-output(element(), map(*), item()*, element()) [211:9:/home/ediarum-user/eXistdb/webapp/WEB-INF/data/expathrepo/shared-0.9.1/content/templates.xql]
    templates:call-by-introspection(element(), map(*), map(*), function(*)) [189:28:/home/ediarum-user/eXistdb/webapp/WEB-INF/data/expathrepo/shared-0.9.1/content/templates.xql]
    templates:call(item(), element(), map(*)) [137:36:/home/ediarum-user/eXistdb/webapp/WEB-INF/data/expathrepo/shared-0.9.1/content/templates.xql]
    templates:process(node()*, map(*)) [133:51:/home/ediarum-user/eXistdb/webapp/WEB-INF/data/expathrepo/shared-0.9.1/content/templates.xql]
    templates:process(node()*, map(*)) [90:9:/home/ediarum-user/eXistdb/webapp/WEB-INF/data/expathrepo/shared-0.9.1/content/templates.xql]
    templates:apply(node()+, function(*), map(*)?, map(*)?) [45:5:/home/ediarum-user/eXistdb/webapp/WEB-INF/data/expathrepo/shared-0.9.1/content/templates.xql]
MarjamMahmoodzada commented 3 years ago

Hallo liebe Entwickler, mit eXist 3.6.1 komme ich auf diese Fehlermeldung unter Projektkonfiguration/Register. Die bereits gemeldeten Fehlermeldungen erscheinen bei mir auch an der entsprechenden Stelle. Ich habe nichts verändert, also kein Update oder ähnliches ausgeführt. Vielen Dank schonmal für eure Hilfe!


import module namespace ediarum="http://www.bbaw.de/telota/software/ediarum/existdb";
declare namespace tei = "http://www.tei-c.org/ns/1.0";
declare variable $current-version := "6";

(: URL Parameter :)
declare variable $url := request:get-url();
declare variable $index-id := request:get-parameter('index', ());
declare variable $project-name := substring-before(substring-after($url, "/projects/"), "/");
declare variable $action := request:get-parameter('action', 'get');
declare variable $first-letter := request:get-parameter('letter', ());
declare variable $show-details := tokenize(request:get-parameter('showDetails', ()), ',');
declare variable $show-version external := "1";

if (exists($index-id)) then (
    if (ediarum:get-index-type($project-name, $index-id) eq 'zotero') then
        let $zotero-connection-id := ediarum:get-zotero-connection-id-from-index-id($project-name, $index-id)
        return
        if ($action eq 'get') then (
            ediarum:get-zotero-index($project-name, $index-id)
        )
        else if ($action eq 'update') then (
            ediarum:update-zotero-connection($project-name, $zotero-connection-id)
        )
        else if ($action eq 'update-get') then (
            let $update := ediarum:update-zotero-connection($project-name, $zotero-connection-id)
            return
                ediarum:get-zotero-index($project-name, $index-id)
        )
        else ()
    else if (ediarum:get-index-type($project-name, $index-id) eq 'ediarum') then
        if ($action eq 'get') then (
            ediarum:get-ediarum-index($project-name, $index-id, $first-letter, $show-details)
        )
        else()
    else
        if ($action eq 'get') then (
            ediarum:get-project-index($project-name, $index-id)
        )
        else()
)
else if ($show-version instance of xs:string and $show-version eq 'show') then
    $current-version
else ()
. error found while loading module ediarum: Error while loading module http://www.bbaw.de/telota/software/ediarum/existdb: found closing tag: body; expected: hr [at line 1192, column 33]
In function:
    local:ediarum-index-api-is-up-to-date(xs:string) [598:9:/db/apps/ediarum/controllers/project-pages-controller.xql]
    project-pages:refresh-index-api(node(), map) [-1:-1:/db/apps/ediarum/controllers/project-pages-controller.xql]
    templates:process-output(element(), map, item()*, element()) [211:9:/usr/local/lib/exist-3.6.1/./'/usr/local/lib/exist-3.6.1/data' if exist_major_version == '5' else '/usr/local/lib/exist-3.6.1/webapp/WEB-INF/data'/expathrepo/shared-0.8.4/content/templates.xql]
    templates:call-by-introspection(element(), map, map, function) [189:28:/usr/local/lib/exist-3.6.1/./'/usr/local/lib/exist-3.6.1/data' if exist_major_version == '5' else '/usr/local/lib/exist-3.6.1/webapp/WEB-INF/data'/expathrepo/shared-0.8.4/content/templates.xql]
    templates:call(item(), element(), map) [137:36:/usr/local/lib/exist-3.6.1/./'/usr/local/lib/exist-3.6.1/data' if exist_major_version == '5' else '/usr/local/lib/exist-3.6.1/webapp/WEB-INF/data'/expathrepo/shared-0.8.4/content/templates.xql]
    templates:process(node()*, map) [237:13:/usr/local/lib/exist-3.6.1/./'/usr/local/lib/exist-3.6.1/data' if exist_major_version == '5' else '/usr/local/lib/exist-3.6.1/webapp/WEB-INF/data'/expathrepo/shared-0.8.4/content/templates.xql]
    templates:process(node()*, map) [148:81:/usr/local/lib/exist-3.6.1/./'/usr/local/lib/exist-3.6.1/data' if exist_major_version == '5' else '/usr/local/lib/exist-3.6.1/webapp/WEB-INF/data'/expathrepo/shared-0.8.4/content/templates.xql]
    templates:process(node()*, map) [148:81:/usr/local/lib/exist-3.6.1/./'/usr/local/lib/exist-3.6.1/data' if exist_major_version == '5' else '/usr/local/lib/exist-3.6.1/webapp/WEB-INF/data'/expathrepo/shared-0.8.4/content/templates.xql]
    templates:process(node()*, map) [148:81:/usr/local/lib/exist-3.6.1/./'/usr/local/lib/exist-3.6.1/data' if exist_major_version == '5' else '/usr/local/lib/exist-3.6.1/webapp/WEB-INF/data'/expathrepo/shared-0.8.4/content/templates.xql]
    templates:process(node()*, map) [148:81:/usr/local/lib/exist-3.6.1/./'/usr/local/lib/exist-3.6.1/data' if exist_major_version == '5' else '/usr/local/lib/exist-3.6.1/webapp/WEB-INF/data'/expathrepo/shared-0.8.4/content/templates.xql]
    templates:process(node()*, map) [428:17:/usr/local/lib/exist-3.6.1/./'/usr/local/lib/exist-3.6.1/data' if exist_major_version == '5' else '/usr/local/lib/exist-3.6.1/webapp/WEB-INF/data'/expathrepo/shared-0.8.4/content/templates.xql]
    templates:process-output(element(), map, item()*) [230:9:/usr/local/lib/exist-3.6.1/./'/usr/local/lib/exist-3.6.1/data' if exist_major_version == '5' else '/usr/local/lib/exist-3.6.1/webapp/WEB-INF/data'/expathrepo/shared-0.8.4/content/templates.xql]
    templates:process-output(element(), map, item()*, element()) [211:9:/usr/local/lib/exist-3.6.1/./'/usr/local/lib/exist-3.6.1/data' if exist_major_version == '5' else '/usr/local/lib/exist-3.6.1/webapp/WEB-INF/data'/expathrepo/shared-0.8.4/content/templates.xql]
    templates:call-by-introspection(element(), map, map, function) [189:28:/usr/local/lib/exist-3.6.1/./'/usr/local/lib/exist-3.6.1/data' if exist_major_version == '5' else '/usr/local/lib/exist-3.6.1/webapp/WEB-INF/data'/expathrepo/shared-0.8.4/content/templates.xql]
    templates:call(item(), element(), map) [137:36:/usr/local/lib/exist-3.6.1/./'/usr/local/lib/exist-3.6.1/data' if exist_major_version == '5' else '/usr/local/lib/exist-3.6.1/webapp/WEB-INF/data'/expathrepo/shared-0.8.4/content/templates.xql]
    templates:process(node()*, map) [133:51:/usr/local/lib/exist-3.6.1/./'/usr/local/lib/exist-3.6.1/data' if exist_major_version == '5' else '/usr/local/lib/exist-3.6.1/webapp/WEB-INF/data'/expathrepo/shared-0.8.4/content/templates.xql]
    templates:process(node()*, map) [90:9:/usr/local/lib/exist-3.6.1/./'/usr/local/lib/exist-3.6.1/data' if exist_major_version == '5' else '/usr/local/lib/exist-3.6.1/webapp/WEB-INF/data'/expathrepo/shared-0.8.4/content/templates.xql]
    templates:apply(node()+, function, map?, map?) [45:5:/usr/local/lib/exist-3.6.1/./'/usr/local/lib/exist-3.6.1/data' if exist_major_version == '5' else '/usr/local/lib/exist-3.6.1/webapp/WEB-INF/data'/expathrepo/shared-0.8.4/content/templates.xql]
MartinFechner commented 3 years ago

@ksbbf @tutebatti @MarjamMahmoodzada Danke für die Meldung!

Dieser Fehler taucht auf, da die Anzeige der Register über das Menü bisher nur für Zotero-Register implementiert war. Auch projektspezifische Register wurden im Menü angezeigt, obwohl dafür keine Anzeige implementiert war.

In der nächsten ediarum.DB-Version für eXist 5 ist der Fehler nun behoben. Die Version wird voraussichtlich nächste Woche publiziert werden.

MartinFechner commented 3 years ago

@ksbbf @tutebatti @MarjamMahmoodzada Wie Sie sicher schon gesehen haben, haben wir eine neue ediarum.DB Version publiziert https://github.com/ediarum/ediarum.DB/releases/tag/v4.0.1, in welcher der Fehler behoben sein sollte.