You can subscribe to this list here.
2001 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
(31) |
Nov
(25) |
Dec
(33) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2002 |
Jan
(48) |
Feb
(62) |
Mar
(22) |
Apr
(29) |
May
(9) |
Jun
(45) |
Jul
(28) |
Aug
(41) |
Sep
(60) |
Oct
(96) |
Nov
(99) |
Dec
(70) |
2003 |
Jan
(98) |
Feb
(159) |
Mar
(164) |
Apr
(150) |
May
(143) |
Jun
(97) |
Jul
(184) |
Aug
(143) |
Sep
(207) |
Oct
(126) |
Nov
(159) |
Dec
(165) |
2004 |
Jan
(131) |
Feb
(229) |
Mar
(220) |
Apr
(212) |
May
(320) |
Jun
(223) |
Jul
(191) |
Aug
(390) |
Sep
(261) |
Oct
(229) |
Nov
(215) |
Dec
(184) |
2005 |
Jan
(221) |
Feb
(312) |
Mar
(336) |
Apr
(273) |
May
(359) |
Jun
(277) |
Jul
(303) |
Aug
(321) |
Sep
(256) |
Oct
(415) |
Nov
(428) |
Dec
(508) |
2006 |
Jan
(585) |
Feb
(419) |
Mar
(496) |
Apr
(296) |
May
(403) |
Jun
(404) |
Jul
(553) |
Aug
(296) |
Sep
(252) |
Oct
(416) |
Nov
(414) |
Dec
(245) |
2007 |
Jan
(354) |
Feb
(422) |
Mar
(389) |
Apr
(298) |
May
(397) |
Jun
(318) |
Jul
(315) |
Aug
(339) |
Sep
(253) |
Oct
(317) |
Nov
(350) |
Dec
(264) |
2008 |
Jan
(353) |
Feb
(313) |
Mar
(433) |
Apr
(383) |
May
(343) |
Jun
(355) |
Jul
(321) |
Aug
(338) |
Sep
(242) |
Oct
(206) |
Nov
(199) |
Dec
(279) |
2009 |
Jan
(327) |
Feb
(221) |
Mar
(280) |
Apr
(278) |
May
(237) |
Jun
(345) |
Jul
(322) |
Aug
(324) |
Sep
(676) |
Oct
(586) |
Nov
(735) |
Dec
(329) |
2010 |
Jan
(619) |
Feb
(424) |
Mar
(529) |
Apr
(241) |
May
(312) |
Jun
(554) |
Jul
(698) |
Aug
(576) |
Sep
(408) |
Oct
(268) |
Nov
(391) |
Dec
(426) |
2011 |
Jan
(629) |
Feb
(512) |
Mar
(465) |
Apr
(467) |
May
(475) |
Jun
(403) |
Jul
(426) |
Aug
(542) |
Sep
(418) |
Oct
(620) |
Nov
(614) |
Dec
(358) |
2012 |
Jan
(357) |
Feb
(466) |
Mar
(344) |
Apr
(215) |
May
(408) |
Jun
(375) |
Jul
(241) |
Aug
(260) |
Sep
(401) |
Oct
(461) |
Nov
(498) |
Dec
(294) |
2013 |
Jan
(453) |
Feb
(447) |
Mar
(434) |
Apr
(326) |
May
(295) |
Jun
(471) |
Jul
(463) |
Aug
(278) |
Sep
(525) |
Oct
(343) |
Nov
(389) |
Dec
(405) |
2014 |
Jan
(564) |
Feb
(324) |
Mar
(319) |
Apr
(319) |
May
(384) |
Jun
(259) |
Jul
(210) |
Aug
(219) |
Sep
(315) |
Oct
(478) |
Nov
(207) |
Dec
(316) |
2015 |
Jan
(222) |
Feb
(234) |
Mar
(201) |
Apr
(145) |
May
(367) |
Jun
(318) |
Jul
(195) |
Aug
(210) |
Sep
(234) |
Oct
(248) |
Nov
(217) |
Dec
(189) |
2016 |
Jan
(219) |
Feb
(177) |
Mar
(110) |
Apr
(91) |
May
(159) |
Jun
(124) |
Jul
(192) |
Aug
(119) |
Sep
(125) |
Oct
(64) |
Nov
(80) |
Dec
(68) |
2017 |
Jan
(156) |
Feb
(312) |
Mar
(386) |
Apr
(217) |
May
(89) |
Jun
(115) |
Jul
(79) |
Aug
(122) |
Sep
(100) |
Oct
(99) |
Nov
(129) |
Dec
(77) |
2018 |
Jan
(106) |
Feb
(78) |
Mar
(160) |
Apr
(73) |
May
(110) |
Jun
(160) |
Jul
(93) |
Aug
(92) |
Sep
(75) |
Oct
(147) |
Nov
(114) |
Dec
(97) |
2019 |
Jan
(141) |
Feb
(78) |
Mar
(158) |
Apr
(60) |
May
(123) |
Jun
(54) |
Jul
(44) |
Aug
(147) |
Sep
(117) |
Oct
(54) |
Nov
(74) |
Dec
(96) |
2020 |
Jan
(113) |
Feb
(125) |
Mar
(142) |
Apr
(57) |
May
(71) |
Jun
(99) |
Jul
(58) |
Aug
(81) |
Sep
(49) |
Oct
(50) |
Nov
(63) |
Dec
(37) |
2021 |
Jan
(37) |
Feb
(45) |
Mar
(39) |
Apr
(18) |
May
(14) |
Jun
(9) |
Jul
(44) |
Aug
(23) |
Sep
(13) |
Oct
(31) |
Nov
(13) |
Dec
(33) |
2022 |
Jan
(17) |
Feb
(8) |
Mar
(32) |
Apr
(7) |
May
(17) |
Jun
(7) |
Jul
(36) |
Aug
(29) |
Sep
(9) |
Oct
(20) |
Nov
(10) |
Dec
(1) |
2023 |
Jan
(30) |
Feb
(37) |
Mar
(23) |
Apr
(1) |
May
(14) |
Jun
(5) |
Jul
(3) |
Aug
(6) |
Sep
(5) |
Oct
(48) |
Nov
(4) |
Dec
(29) |
2024 |
Jan
(1) |
Feb
|
Mar
(21) |
Apr
(6) |
May
(16) |
Jun
(41) |
Jul
(11) |
Aug
(17) |
Sep
(16) |
Oct
(11) |
Nov
(3) |
Dec
(9) |
2025 |
Jan
(7) |
Feb
(7) |
Mar
(6) |
Apr
(6) |
May
(30) |
Jun
(8) |
Jul
(10) |
Aug
(4) |
Sep
|
Oct
|
Nov
|
Dec
|
From: Joe W. <jo...@gm...> - 2021-07-25 15:54:55
|
Hi Alfredo, Slav asks good questions about the assumptions in your sample code. Assuming that duplicates should be merged rather than preserved, and testing only for element names (i.e., not examining attribute or text nodes), here's a basic query that will merge your fragments together into a structure approximating your target: https://gist.github.com/joewiz/b38279b8bd33de6949bb891370f76a04 Note that the order of fragments in the sequence you pass to the merge-fragments function is important. This is because when a new fragment is tested against the running composite document, if an element in the fragment doesn't match the element in the composite document, the fragment's element is deposited first before the rest of the composite document. This is why var3's titleStmt element appears first in the composite document, and var2's msIdentifier appears before var1's physDesc. Hopefully this gets you off to a good start and you're able to add any necessary checks besides element name to this to meet any other unstated assumptions / requirements. Joe On Sun, Jul 25, 2021 at 7:32 AM Слава Седов <wet...@gm...> wrote: > Hi, > > If your input and output set as testcase - it is 100% testcase or data may > vary? Do you need removing any duplicates if any or it is not possible in > your input? > > With best wishes, > Slav > > вс, 25 июл. 2021 г., 14:56 Alfredo Cosco <alf...@gm...>: > >> Hi Jean-Paul, >> I'm trying to merge the pieces on an "in memory" document then to store >> the result in a new document. >> But this logic can change if there is a better way. >> Thanks, >> Alfredo >> >> Il giorno sab 24 lug 2021 alle ore 19:16 Jean-Paul Rehr <re...@gm...> >> ha scritto: >> >>> Alfredo, are you creating a TEI document in memory, or are you trying to >>> insert these into an existing document stored in eXist-db? >>> >>> JPR >>> >>> On Sat, Jul 24, 2021 at 7:04 PM Alfredo Cosco <alf...@gm...> >>> wrote: >>> >>>> Hi all, >>>> I'm working on eXist 4.7 >>>> The problem is: >>>> >>>> I have tre variables with XML code: >>>> >>>> let $var1 := <fileDesc> >>>> <sourceDesc> >>>> <msDesc> >>>> <physDesc> >>>> <objectDesc form=""/> >>>> </physDesc> >>>> </msDesc> >>>> </sourceDesc> >>>> </fileDesc> >>>> >>>> >>>> let var2 := <fileDesc> >>>> <sourceDesc> >>>> <msDesc> >>>> <msIdentifier> >>>> <idno/> >>>> </msIdentifier> >>>> </msDesc> >>>> </sourceDesc> >>>> </fileDesc> >>>> >>>> let var3 := <fileDesc> >>>> <titleStmt> >>>> <title/> >>>> </titleStmt> >>>> </fileDesc> >>>> >>>> How can I merge there 3 snapshots and obtain something like: >>>> >>>> <fileDesc> >>>> <titleStmt> >>>> <title/> >>>> </titleStmt> >>>> <sourceDesc> >>>> <msDesc> >>>> <physDesc> >>>> <objectDesc form=""/> >>>> </physDesc> >>>> <msIdentifier> >>>> <idno/> >>>> </msIdentifier> >>>> </msDesc> >>>> </sourceDesc> >>>> </fileDesc> >>>> >>>> >>>> Thanks, >>>> Alfredo >>>> _______________________________________________ >>>> Exist-open mailing list >>>> Exi...@li... >>>> https://lists.sourceforge.net/lists/listinfo/exist-open >>>> >>> _______________________________________________ >> Exist-open mailing list >> Exi...@li... >> https://lists.sourceforge.net/lists/listinfo/exist-open >> > _______________________________________________ > Exist-open mailing list > Exi...@li... > https://lists.sourceforge.net/lists/listinfo/exist-open > |
From: Слава С. <wet...@gm...> - 2021-07-25 11:31:51
|
Hi, If your input and output set as testcase - it is 100% testcase or data may vary? Do you need removing any duplicates if any or it is not possible in your input? With best wishes, Slav вс, 25 июл. 2021 г., 14:56 Alfredo Cosco <alf...@gm...>: > Hi Jean-Paul, > I'm trying to merge the pieces on an "in memory" document then to store > the result in a new document. > But this logic can change if there is a better way. > Thanks, > Alfredo > > Il giorno sab 24 lug 2021 alle ore 19:16 Jean-Paul Rehr <re...@gm...> > ha scritto: > >> Alfredo, are you creating a TEI document in memory, or are you trying to >> insert these into an existing document stored in eXist-db? >> >> JPR >> >> On Sat, Jul 24, 2021 at 7:04 PM Alfredo Cosco <alf...@gm...> >> wrote: >> >>> Hi all, >>> I'm working on eXist 4.7 >>> The problem is: >>> >>> I have tre variables with XML code: >>> >>> let $var1 := <fileDesc> >>> <sourceDesc> >>> <msDesc> >>> <physDesc> >>> <objectDesc form=""/> >>> </physDesc> >>> </msDesc> >>> </sourceDesc> >>> </fileDesc> >>> >>> >>> let var2 := <fileDesc> >>> <sourceDesc> >>> <msDesc> >>> <msIdentifier> >>> <idno/> >>> </msIdentifier> >>> </msDesc> >>> </sourceDesc> >>> </fileDesc> >>> >>> let var3 := <fileDesc> >>> <titleStmt> >>> <title/> >>> </titleStmt> >>> </fileDesc> >>> >>> How can I merge there 3 snapshots and obtain something like: >>> >>> <fileDesc> >>> <titleStmt> >>> <title/> >>> </titleStmt> >>> <sourceDesc> >>> <msDesc> >>> <physDesc> >>> <objectDesc form=""/> >>> </physDesc> >>> <msIdentifier> >>> <idno/> >>> </msIdentifier> >>> </msDesc> >>> </sourceDesc> >>> </fileDesc> >>> >>> >>> Thanks, >>> Alfredo >>> _______________________________________________ >>> Exist-open mailing list >>> Exi...@li... >>> https://lists.sourceforge.net/lists/listinfo/exist-open >>> >> _______________________________________________ > Exist-open mailing list > Exi...@li... > https://lists.sourceforge.net/lists/listinfo/exist-open > |
From: Alfredo C. <alf...@gm...> - 2021-07-25 09:55:16
|
Hi Jean-Paul, I'm trying to merge the pieces on an "in memory" document then to store the result in a new document. But this logic can change if there is a better way. Thanks, Alfredo Il giorno sab 24 lug 2021 alle ore 19:16 Jean-Paul Rehr <re...@gm...> ha scritto: > Alfredo, are you creating a TEI document in memory, or are you trying to > insert these into an existing document stored in eXist-db? > > JPR > > On Sat, Jul 24, 2021 at 7:04 PM Alfredo Cosco <alf...@gm...> > wrote: > >> Hi all, >> I'm working on eXist 4.7 >> The problem is: >> >> I have tre variables with XML code: >> >> let $var1 := <fileDesc> >> <sourceDesc> >> <msDesc> >> <physDesc> >> <objectDesc form=""/> >> </physDesc> >> </msDesc> >> </sourceDesc> >> </fileDesc> >> >> >> let var2 := <fileDesc> >> <sourceDesc> >> <msDesc> >> <msIdentifier> >> <idno/> >> </msIdentifier> >> </msDesc> >> </sourceDesc> >> </fileDesc> >> >> let var3 := <fileDesc> >> <titleStmt> >> <title/> >> </titleStmt> >> </fileDesc> >> >> How can I merge there 3 snapshots and obtain something like: >> >> <fileDesc> >> <titleStmt> >> <title/> >> </titleStmt> >> <sourceDesc> >> <msDesc> >> <physDesc> >> <objectDesc form=""/> >> </physDesc> >> <msIdentifier> >> <idno/> >> </msIdentifier> >> </msDesc> >> </sourceDesc> >> </fileDesc> >> >> >> Thanks, >> Alfredo >> _______________________________________________ >> Exist-open mailing list >> Exi...@li... >> https://lists.sourceforge.net/lists/listinfo/exist-open >> > |
From: <kev...@xp...> - 2021-07-24 19:04:06
|
There are multiple ways to skin a cat, one of these ways could be: Take the three fragments and make a single document under a wrapper, like: let $wrapper := <wrapper> {$var1} {$var2} {$var3} </wrapper> But you are making these fragments I guess so you could make that more generic or build the whole wrapper at one time. Then write an XSL containing the logic for your merge and apply the XSL. Kevin From: Jean-Paul Rehr <re...@gm...> Sent: Saturday, July 24, 2021 10:17 AM To: Alfredo Cosco <alf...@gm...> Cc: exist-open <exi...@li...> Subject: Re: [Exist-open] merging XML Alfredo, are you creating a TEI document in memory, or are you trying to insert these into an existing document stored in eXist-db? JPR On Sat, Jul 24, 2021 at 7:04 PM Alfredo Cosco <alf...@gm... <mailto:alf...@gm...> > wrote: Hi all, I'm working on eXist 4.7 The problem is: I have tre variables with XML code: let $var1 := <fileDesc> <sourceDesc> <msDesc> <physDesc> <objectDesc form=""/> </physDesc> </msDesc> </sourceDesc> </fileDesc> let var2 := <fileDesc> <sourceDesc> <msDesc> <msIdentifier> <idno/> </msIdentifier> </msDesc> </sourceDesc> </fileDesc> let var3 := <fileDesc> <titleStmt> <title/> </titleStmt> </fileDesc> How can I merge there 3 snapshots and obtain something like: <fileDesc> <titleStmt> <title/> </titleStmt> <sourceDesc> <msDesc> <physDesc> <objectDesc form=""/> </physDesc> <msIdentifier> <idno/> </msIdentifier> </msDesc> </sourceDesc> </fileDesc> Thanks, Alfredo _______________________________________________ Exist-open mailing list Exi...@li... <mailto:Exi...@li...> https://lists.sourceforge.net/lists/listinfo/exist-open |
From: Jean-Paul R. <re...@gm...> - 2021-07-24 17:17:06
|
Alfredo, are you creating a TEI document in memory, or are you trying to insert these into an existing document stored in eXist-db? JPR On Sat, Jul 24, 2021 at 7:04 PM Alfredo Cosco <alf...@gm...> wrote: > Hi all, > I'm working on eXist 4.7 > The problem is: > > I have tre variables with XML code: > > let $var1 := <fileDesc> > <sourceDesc> > <msDesc> > <physDesc> > <objectDesc form=""/> > </physDesc> > </msDesc> > </sourceDesc> > </fileDesc> > > > let var2 := <fileDesc> > <sourceDesc> > <msDesc> > <msIdentifier> > <idno/> > </msIdentifier> > </msDesc> > </sourceDesc> > </fileDesc> > > let var3 := <fileDesc> > <titleStmt> > <title/> > </titleStmt> > </fileDesc> > > How can I merge there 3 snapshots and obtain something like: > > <fileDesc> > <titleStmt> > <title/> > </titleStmt> > <sourceDesc> > <msDesc> > <physDesc> > <objectDesc form=""/> > </physDesc> > <msIdentifier> > <idno/> > </msIdentifier> > </msDesc> > </sourceDesc> > </fileDesc> > > > Thanks, > Alfredo > _______________________________________________ > Exist-open mailing list > Exi...@li... > https://lists.sourceforge.net/lists/listinfo/exist-open > |
From: Alfredo C. <alf...@gm...> - 2021-07-24 17:03:38
|
Hi all, I'm working on eXist 4.7 The problem is: I have tre variables with XML code: let $var1 := <fileDesc> <sourceDesc> <msDesc> <physDesc> <objectDesc form=""/> </physDesc> </msDesc> </sourceDesc> </fileDesc> let var2 := <fileDesc> <sourceDesc> <msDesc> <msIdentifier> <idno/> </msIdentifier> </msDesc> </sourceDesc> </fileDesc> let var3 := <fileDesc> <titleStmt> <title/> </titleStmt> </fileDesc> How can I merge there 3 snapshots and obtain something like: <fileDesc> <titleStmt> <title/> </titleStmt> <sourceDesc> <msDesc> <physDesc> <objectDesc form=""/> </physDesc> <msIdentifier> <idno/> </msIdentifier> </msDesc> </sourceDesc> </fileDesc> Thanks, Alfredo |
From: Alessandro <ca...@tu...> - 2021-07-08 13:36:56
|
My fault, sorry. Alain has explained to me that it is all about an XSLTforms issue relative to Firefox... Cheers Alex -- Inviato in modo sicuro con Tutanota. Ottieni la tua casella di posta elettronica crittografata e senza pubblicità: https://tutanota.com 8 lug 2021, 14:49 da exi...@li...: > Hi all! > I use the following chunck of code in order to insert links within a repeat (inside a table): > > <td style="width: 400px;"> > <xf:trigger submission="replace-form-with" appearance="minimal" class="url"> > <xf:label> > <xf:output class="url" ref="link-text"/> > </xf:label> > > <xf:hint> > <!-- <xf:output class="url" value="concat('{$host}','exist/apps/DATI/', '{$trow_storage}','/',instance('files')/tr[index('files-repeat')]/link/link_file_name,'.',instance('files')/tr[index('files-repeat')]/link/link_estensione)" /> --> > > <xf:output class="url" value="concat('{$host}','exist/apps/DATI/', '{$trow_storage}','/',instance('files')/files/file[index('files-repeat')]/link-file-name,'.',instance('files')/files/file[index('files-repeat')]/link-est)" /> > </xf:hint> > > <xf:action ev:event="DOMActivate"> > <xf:setvalue class="url" ref="instance('URL-container')" value="concat('{$host}','exist/apps/DATI/', '{$trow_storage}','/',instance('files')/files/file[index('files-repeat')]/link-file-name,'.',instance('files')/files/file[index('files-repeat')]/link-est)" /> > > <xf:load ref="instance('URL-container')" /> > </xf:action> > </xf:trigger> > </td> > > By clicking on the trigger using exist-db 5.2 there's no problem, instead with 5.3 just installed I get this error message: "Schema for namespace undefined not defined for type string"... > Thanks > Alex > > -- > Inviato in modo sicuro con Tutanota. Ottieni la tua casella di posta elettronica crittografata e senza pubblicità: > https://tutanota.com > |
From: Erik S. <er...@xa...> - 2021-07-08 13:17:58
|
On 4 and 5 November 2021, the third Declarative Amsterdam conference will take place at CWI, Science Park, Amsterdam. The conference focuses on the technologies and methods used for declarative programming and declarative data. Declarative programming (https://en.wikipedia.org/wiki/Declarative_programming) is a style of programming that expresses the logic of computation without describing its control flow. It allows you to focus on the 'what' of a program, rather than the 'how'. Declarative programs can be constructed in a fraction of the time, using much less code than a traditional computer program. Declarative methods for programming and data modelling can help avoid making the mistakes that have lead to failing software projects for several decades. Declarative Amsterdam will have presentations on past experiences, current trends and future perspectives in fields such as functional programming, declarative data modelling, databases, XML and related technologies, JSON, CSS, semantic web, data science, data visualization, grammars, parsing, and domain-specific languages. We anticipate by November that we will be able to hold the conference face-to-face, but either way, we are planning to broadcast live as well. The first day will feature tutorials, combining presentations and hands-on sessions to give an introduction to specific topics. The second day is a symposium, and will consist of shorter presentations. Speakers can discuss new ideas, frameworks, applications of declarative methods, and best practices. Call for Presentations We invite practitioners, software architects and engineers, academic researchers and others to submit a proposal for a tutorial or a presentation. Tutorials can be between 1.5 and 2.5 hours, and preferably include hands-on sessions for participants. Presentations on the second day can be between 20 and 45 minutes. We plan to create the possibility of online presentation via video. Proposals should at least include a title, duration and summary (90 - 200 words), but may also be a full paper. Speakers have the option of submitting a full paper or slides, to be published on the Declarative Amsterdam website. Please submit proposals here: https://declarative.amsterdam/submit?model=da-call-for-presentations Timeline Submission deadline: 31 July Acceptance: Beginning of September Conference: 4/5 November. For papers and topics from previous years, see the website: http://declarative.amsterdam/ |
From: Alessandro <ca...@tu...> - 2021-07-08 12:49:59
|
Hi all! I use the following chunck of code in order to insert links within a repeat (inside a table): <td style="width: 400px;"> <xf:trigger submission="replace-form-with" appearance="minimal" class="url"> <xf:label> <xf:output class="url" ref="link-text"/> </xf:label> <xf:hint> <!-- <xf:output class="url" value="concat('{$host}','exist/apps/DATI/', '{$trow_storage}','/',instance('files')/tr[index('files-repeat')]/link/link_file_name,'.',instance('files')/tr[index('files-repeat')]/link/link_estensione)" /> --> <xf:output class="url" value="concat('{$host}','exist/apps/DATI/', '{$trow_storage}','/',instance('files')/files/file[index('files-repeat')]/link-file-name,'.',instance('files')/files/file[index('files-repeat')]/link-est)" /> </xf:hint> <xf:action ev:event="DOMActivate"> <xf:setvalue class="url" ref="instance('URL-container')" value="concat('{$host}','exist/apps/DATI/', '{$trow_storage}','/',instance('files')/files/file[index('files-repeat')]/link-file-name,'.',instance('files')/files/file[index('files-repeat')]/link-est)" /> <xf:load ref="instance('URL-container')" /> </xf:action> </xf:trigger> </td> By clicking on the trigger using exist-db 5.2 there's no problem, instead with 5.3 just installed I get this error message: "Schema for namespace undefined not defined for type string"... Thanks Alex -- Inviato in modo sicuro con Tutanota. Ottieni la tua casella di posta elettronica crittografata e senza pubblicità: https://tutanota.com |
From: Wolfgang M. <wol...@ex...> - 2021-07-07 13:30:20
|
Hi Alessandro, eXide 3.0.0 replaces the component for the file grid (the previous one was terribly outdated, not maintained and a security risk). Unfortunately, we had reports that some browsers fail to properly reload the corresponding javascript bundle and require an explicit clearing of the cache in order to work again. So I would try a shift-reload and if this still fails, clear the cache. Wolfgang > Am 07.07.2021 um 14:17 schrieb Alessandro via Exist-open <exi...@li...>: > > Hi all! > As you can see from the attached pic, after installing exist-db 5.3.0 the included eXide version (3.0.0) seems to give some problems both with DB Manager and Open dialogs (dialog: I'm quite sure this is not the right English term, is it?). > > Not only it is a question of having all the columns displayed vertically, instead of horizontally within one column, causing a consequent overwriting of all the contents on each other, but in the DB Manager dialog it is also impossible to reach the subdirectories by clicking on the blue links, because as soon as one doulble-clicks on them, they are transformed into writable cells (something that by contrast does not happen within the Open dialog)... Quite unusable... > Thanks > Alex > > -- > Inviato in modo sicuro con Tutanota. Ottieni la tua casella di posta elettronica crittografata e senza pubblicità: > https://tutanota.com > <db_manager.png>_______________________________________________ > Exist-open mailing list > Exi...@li... > https://lists.sourceforge.net/lists/listinfo/exist-open |
From: Alessandro <ca...@tu...> - 2021-07-07 12:36:40
|
Genau! Vielen Dank Wolfgang, a shift-reload fixed the problem... Alex -- Inviato in modo sicuro con Tutanota. Ottieni la tua casella di posta elettronica crittografata e senza pubblicità: https://tutanota.com 7 lug 2021, 14:30 da wol...@ex...: > Hi Alessandro, > > eXide 3.0.0 replaces the component for the file grid (the previous one was terribly outdated, not maintained and a security risk). Unfortunately, we had reports that some browsers fail to properly reload the corresponding javascript bundle and require an explicit clearing of the cache in order to work again. So I would try a shift-reload and if this still fails, clear the cache. > > Wolfgang > > > >> Am 07.07.2021 um 14:17 schrieb Alessandro via Exist-open <exi...@li...>: >> >> Hi all! >> As you can see from the attached pic, after installing exist-db 5.3.0 the included eXide version (3.0.0) seems to give some problems both with DB Manager and Open dialogs (dialog: I'm quite sure this is not the right English term, is it?). >> >> Not only it is a question of having all the columns displayed vertically, instead of horizontally within one column, causing a consequent overwriting of all the contents on each other, but in the DB Manager dialog it is also impossible to reach the subdirectories by clicking on the blue links, because as soon as one doulble-clicks on them, they are transformed into writable cells (something that by contrast does not happen within the Open dialog)... Quite unusable... >> Thanks >> Alex >> >> -- >> Inviato in modo sicuro con Tutanota. Ottieni la tua casella di posta elettronica crittografata e senza pubblicità: >> https://tutanota.com >> <db_manager.png>_______________________________________________ >> Exist-open mailing list >> Exi...@li... >> https://lists.sourceforge.net/lists/listinfo/exist-open >> |
From: Alessandro <ca...@tu...> - 2021-07-07 12:17:48
|
Hi all! As you can see from the attached pic, after installing exist-db 5.3.0 the included eXide version (3.0.0) seems to give some problems both with DB Manager and Open dialogs (dialog: I'm quite sure this is not the right English term, is it?). Not only it is a question of having all the columns displayed vertically, instead of horizontally within one column, causing a consequent overwriting of all the contents on each other, but in the DB Manager dialog it is also impossible to reach the subdirectories by clicking on the blue links, because as soon as one doulble-clicks on them, they are transformed into writable cells (something that by contrast does not happen within the Open dialog)... Quite unusable... Thanks Alex -- Inviato in modo sicuro con Tutanota. Ottieni la tua casella di posta elettronica crittografata e senza pubblicità: https://tutanota.com |
From: Alfredo C. <alf...@gm...> - 2021-07-07 11:42:01
|
Hi All, thanks for your suggestions. I moved from Finian approach to manage a somewhat more complex scenario. With this function: declare function local:elems($tkns as xs:string*, $pos as xs:integer) { if ($tkns[$pos]) then ( if(starts-with($tkns[$pos + 1], '@')) then ( let $attr:=replace($tkns[$pos + 1],"@",'') return element {$tkns[$pos]} {attribute {$attr} {''}, local:elems($tkns, $pos + 2)} ) else( element {$tkns[$pos]} {local:elems($tkns, $pos + 1)} ) ) else () }; I can manage this path for elements: teiHeader/fileDesc/sourceDesc/msDesc/msIdentifier/idno And this path for attributes: teiHeader/fileDesc/sourceDesc/msDesc/physDesc/objectDesc/@form They become: <teiHeader> <fileDesc> <sourceDesc> <msDesc> <msIdentifier> <idno/> </msIdentifier> </msDesc> </sourceDesc> </fileDesc> </teiHeader> and: <teiHeader> <fileDesc> <sourceDesc> <msDesc> <physDesc> <objectDesc form=""/> </physDesc> </msDesc> </sourceDesc> </fileDesc> </teiHeader> I have all the paths in a sequence so i can parse them: for $path in $tei-paths let $token:=tokenize($path, '/') let $result:=local:elems($token, 1) return $result *The problem is that I have to merge all the pieces before storing them in a file*, the two xml fragments must become something like: <teiHeader> <fileDesc> <sourceDesc> <msDesc> <msIdentifier> <idno/> </msIdentifier> <physDesc> <objectDesc form=""/> </physDesc> </msDesc> </sourceDesc> </fileDesc> </teiHeader> Thanks, Alfredo Il giorno mar 6 lug 2021 alle ore 17:29 Joe Wicentowski <jo...@gm...> ha scritto: > Hi Alfredo, > > It's always fun to see different approaches to the same problem. To add > one more approach to the mix, this uses XQuery 3.0's fold-right() function > (which has been available in eXist since v2.2+) and arrow operator > (available since v3.1.0+): > > "teiHeader/fileDesc/titleStmt/title" > => tokenize("/") > => fold-right((), function($segment, $results) { element { $segment } { > $results } }) > > If you're not familiar with the arrow operator ( > https://www.w3.org/TR/xquery-3/#id-arrow-operator), you can use it to > pipe the results of an expression into a follow-on function as its first > parameter. > > On the final line, we use the fold-right function ( > https://www.w3.org/TR/xpath-functions-31/#func-fold-right) to take the > path segments, from right-to-left, and cumulatively build up the element > structure from innermost to outermost: > > title --> <title/> > titleStmt --> <titleStmt><title/></titleStmt> > fileDesc --> <fileDesc><titleStmt><title/></titleStmt></fileDesc> > teiHeader --> > <teiHeader><fileDesc><titleStmt><title/></titleStmt></fileDesc></teiHeader> > > The result: > > <teiHeader> > <fileDesc> > <titleStmt> > <title/> > </titleStmt> > </fileDesc> > </teiHeader> > > Another use of fold-right and discussion of this function is in my article > on parsing Roman numerals: > https://joewiz.org/2021/05/30/converting-roman-numerals-with-xquery-xslt/. > > Joe > > On Tue, Jul 6, 2021 at 5:26 AM Alfredo Cosco <alf...@gm...> > wrote: > >> Hi all, >> I'm working on eXist 4.7. >> I have a string like this: >> teiHeader/fileDesc/titleStmt/title >> >> Is there a way to transform it and store in a node like: >> <teiHeader> >> <fileDesc> >> <titleStmt> >> <title/> >> <titleStmt> >> </fileDesc> >> </teiHeader> >> >> Thanks, >> Alfredo >> _______________________________________________ >> Exist-open mailing list >> Exi...@li... >> https://lists.sourceforge.net/lists/listinfo/exist-open >> > |
From: Joe W. <jo...@gm...> - 2021-07-06 15:29:49
|
Hi Alfredo, It's always fun to see different approaches to the same problem. To add one more approach to the mix, this uses XQuery 3.0's fold-right() function (which has been available in eXist since v2.2+) and arrow operator (available since v3.1.0+): "teiHeader/fileDesc/titleStmt/title" => tokenize("/") => fold-right((), function($segment, $results) { element { $segment } { $results } }) If you're not familiar with the arrow operator ( https://www.w3.org/TR/xquery-3/#id-arrow-operator), you can use it to pipe the results of an expression into a follow-on function as its first parameter. On the final line, we use the fold-right function ( https://www.w3.org/TR/xpath-functions-31/#func-fold-right) to take the path segments, from right-to-left, and cumulatively build up the element structure from innermost to outermost: title --> <title/> titleStmt --> <titleStmt><title/></titleStmt> fileDesc --> <fileDesc><titleStmt><title/></titleStmt></fileDesc> teiHeader --> <teiHeader><fileDesc><titleStmt><title/></titleStmt></fileDesc></teiHeader> The result: <teiHeader> <fileDesc> <titleStmt> <title/> </titleStmt> </fileDesc> </teiHeader> Another use of fold-right and discussion of this function is in my article on parsing Roman numerals: https://joewiz.org/2021/05/30/converting-roman-numerals-with-xquery-xslt/. Joe On Tue, Jul 6, 2021 at 5:26 AM Alfredo Cosco <alf...@gm...> wrote: > Hi all, > I'm working on eXist 4.7. > I have a string like this: > teiHeader/fileDesc/titleStmt/title > > Is there a way to transform it and store in a node like: > <teiHeader> > <fileDesc> > <titleStmt> > <title/> > <titleStmt> > </fileDesc> > </teiHeader> > > Thanks, > Alfredo > _______________________________________________ > Exist-open mailing list > Exi...@li... > https://lists.sourceforge.net/lists/listinfo/exist-open > |
From: Michael W. <wes...@ja...> - 2021-07-06 10:26:04
|
The return statement can be shortened to just: return local:append-child($tokens) Let it all be done in the function. 2021年7月6日(火) 19:19 Michael Westbay <wes...@ja...>: > Hi Alfredo, > > This is a simple one, recursively adding the tokenized strings as the > element names: > > xquery version "3.0"; > > declare function local:append-child($tokens as xs:string*) as element()? { > if (count($tokens) ge 1) > then element {$tokens[1]} { > local:append-child(subsequence($tokens, 2)) > } > else () > }; > > let $string := 'teiHeader/fileDesc/titleStmt/title' > let $tokens := tokenize($string, '/') > return element {$tokens[1]} { > local:append-child(subsequence($tokens, 2)) > } > > > Drop that into a new eXide XQuery and this is the result: > > [image: image.png] > > > It helps to understand Functional Programming to really grasp XQuery. The > pseudo-code version of the above is: > > - Declare a recursive function named local:append-child that takes an > array of strings (0 or more) as the parameter > - If there are any tokens, create an element names with the first > string token > - Append child elements starting with the second token > - Otherwise, return the empty set > > The main part of the program is: > > - Assign "teiHeader/fileDesc/titleStmt/title" to $string > - Break $string into tokens by dividing the string at each "/" > - Create an element with the name of the first token > - Append child elements starting with the second token > > Hope this helps give you an idea of how to approach this. > > Take care. > > 2021年7月6日(火) 18:26 Alfredo Cosco <alf...@gm...>: > >> Hi all, >> I'm working on eXist 4.7. >> I have a string like this: >> teiHeader/fileDesc/titleStmt/title >> >> Is there a way to transform it and store in a node like: >> <teiHeader> >> <fileDesc> >> <titleStmt> >> <title/> >> <titleStmt> >> </fileDesc> >> </teiHeader> >> >> Thanks, >> Alfredo >> _______________________________________________ >> Exist-open mailing list >> Exi...@li... >> https://lists.sourceforge.net/lists/listinfo/exist-open >> > > > -- > Michael Westbay > Writer/System Administrator > http://www.japanesebaseball.com/ > -- Michael Westbay Writer/System Administrator http://www.japanesebaseball.com/ |
From: Chris W. <kit...@gm...> - 2021-07-06 10:23:29
|
This works provided the steps are valid element names: declare function local:path-to-tree($path) { local:steps-to-tree(tokenize($path,"/")) }; declare function local:steps-to-tree($steps) { if (count($steps) = 0) then () else element {$steps[1]} { local:steps-to-tree(subsequence($steps,2)) } }; let $path := request:get-parameter("path",()) return local:path-to-tree($path) On Tue, Jul 6, 2021 at 10:26 AM Alfredo Cosco <alf...@gm...> wrote: > Hi all, > I'm working on eXist 4.7. > I have a string like this: > teiHeader/fileDesc/titleStmt/title > > Is there a way to transform it and store in a node like: > <teiHeader> > <fileDesc> > <titleStmt> > <title/> > <titleStmt> > </fileDesc> > </teiHeader> > > Thanks, > Alfredo > _______________________________________________ > Exist-open mailing list > Exi...@li... > https://lists.sourceforge.net/lists/listinfo/exist-open > |
From: Michael W. <wes...@ja...> - 2021-07-06 10:20:04
|
Hi Alfredo, This is a simple one, recursively adding the tokenized strings as the element names: xquery version "3.0"; declare function local:append-child($tokens as xs:string*) as element()? { if (count($tokens) ge 1) then element {$tokens[1]} { local:append-child(subsequence($tokens, 2)) } else () }; let $string := 'teiHeader/fileDesc/titleStmt/title' let $tokens := tokenize($string, '/') return element {$tokens[1]} { local:append-child(subsequence($tokens, 2)) } Drop that into a new eXide XQuery and this is the result: [image: image.png] It helps to understand Functional Programming to really grasp XQuery. The pseudo-code version of the above is: - Declare a recursive function named local:append-child that takes an array of strings (0 or more) as the parameter - If there are any tokens, create an element names with the first string token - Append child elements starting with the second token - Otherwise, return the empty set The main part of the program is: - Assign "teiHeader/fileDesc/titleStmt/title" to $string - Break $string into tokens by dividing the string at each "/" - Create an element with the name of the first token - Append child elements starting with the second token Hope this helps give you an idea of how to approach this. Take care. 2021年7月6日(火) 18:26 Alfredo Cosco <alf...@gm...>: > Hi all, > I'm working on eXist 4.7. > I have a string like this: > teiHeader/fileDesc/titleStmt/title > > Is there a way to transform it and store in a node like: > <teiHeader> > <fileDesc> > <titleStmt> > <title/> > <titleStmt> > </fileDesc> > </teiHeader> > > Thanks, > Alfredo > _______________________________________________ > Exist-open mailing list > Exi...@li... > https://lists.sourceforge.net/lists/listinfo/exist-open > -- Michael Westbay Writer/System Administrator http://www.japanesebaseball.com/ |
From: Finian O'B. <fin...@gm...> - 2021-07-06 10:14:49
|
Hi Alfredo, This works on eXist 3.6.0 and eXist 5.2.0: declare namespace p = "http://example.org";declare option exist:serialize "indent=yes"; declare function p:elems($tkns as xs:string*, $pos as xs:integer) {if ($tkns[$pos]) thenelement {$tkns[$pos]} {p:elems($tkns, $pos + 1)}else ()}; let $str := 'teiHeader/fileDesc/titleStmt/title' let $tkns := tokenize($str, '/') return p:elems($tkns, 1) Finian On Tue, 2021-07-06 at 11:25 +0200, Alfredo Cosco wrote: > Hi all,I'm working on eXist 4.7. > I have a string like this: > teiHeader/fileDesc/titleStmt/title > > Is there a way to transform it and store in a node like: > <teiHeader> > <fileDesc> > <titleStmt> > <title/> > <titleStmt> > </fileDesc> > </teiHeader> > > > Thanks, > Alfredo > > _______________________________________________Exist-open mailing > lis...@li... > https://lists.sourceforge.net/lists/listinfo/exist-open |
From: Alfredo C. <alf...@gm...> - 2021-07-06 09:26:12
|
Hi all, I'm working on eXist 4.7. I have a string like this: teiHeader/fileDesc/titleStmt/title Is there a way to transform it and store in a node like: <teiHeader> <fileDesc> <titleStmt> <title/> <titleStmt> </fileDesc> </teiHeader> Thanks, Alfredo |
From: Eduard D. <ed...@fr...> - 2021-07-03 07:15:17
|
On Fri, 2021-07-02 at 15:10 -0500, Craig Berry via Exist-open wrote: > Thanks for the tips. > > > On Jul 2, 2021, at 12:44 AM, Eduard Drenth < ed...@FR...> > > wrote: > > > > When upgrading from 5.2 to 5.3 I had to do several things: > > > > - remove <dependency package=" http://exist-db.org/apps/shared"/> > > from expath-pkg.xml > > I don't appear to have had any of those. > > > - remove <fulltext default="none" attributes="false"/> from collection.xconf > > Why, and where is that documented? I have some large collections that will take a very long time to reindex, so I'd prefer to avoid it unless it's absolutely necessary. This is the old fulltext index turned off, validation fails on this line in 5.3 > > - change templating to http://exist-db.org/xquery/html-templating > > Ah, good. I had a lot of cases of: > import module namespace templates=" > http://exist-db.org/xquery/templates" ; > that needed to be changed to: > import module namespace templates=" > http://exist-db.org/xquery/html-templating"; > That did get me past some problems. I could not find anything about > it in the release notes. > > - change my conf.xml to be based on > > https://github.com/eXist-db/exist/blob/eXist-5.3.0/exist-distribution/src/main/config/conf.xml > > What I have is identical to the one in the distribution except for > the memory settings I'd bumped up. > > - fix some more strict variable types > > I also noticed that function overloads no longer work if two > functions with the same name have the same number of parameters, even > if the data types of the parameters are different. Luckily I wasn't > actually using one of the overloads I had so I was able to get rid of > it. > > Perhaps this helps, Eduard > > Some, yes. It still looks like there's a long slog ahead of > me. Launcher and Package Manager are still completely wedged even > though I've applied the fix here: > <https://github.com/eXist-db/existdb-packageservice/pull/22> > They still complain about "err:FODC0002 Resource icon.png does not > exist." > My own app crashes like so: > URI: /exist/apps/shc/works/STATUS: 500MESSAGE: javax.servlet > .ServletException: javax.servlet.ServletException: An error occurred > while processing request to /exist/apps/shc/works/: An unknown error > occurred: 'java.lang.Object org.exist.source.Source.getKey()'SERVLET: > XQueryURLRewriteCAUSED BY: javax.servlet.ServletException: > javax.servlet.ServletException: An error occurred while processing > request to /exist/apps/shc/works/: An unknown error occurred: > 'java.lang.Object org.exist.source.Source.getKey()'CAUSED BY: javax.s > ervlet.ServletException: An error occurred while processing request > to /exist/apps/shc/works/: An unknown error occurred: > 'java.lang.Object org.exist.source.Source.getKey()'CAUSED BY: javax.s > ervlet.ServletException: An unknown error occurred: 'java.lang.Object > org.exist.source.Source.getKey()'CAUSED BY: java.lang.NoSuchMethodE > rror: 'java.lang.Object org.exist.source.Source.getKey()' > The eXist log shows that this happens in a method called doPost line > 571, but I'm not sure that narrows it down much: > 2021-07-02 14:44:42,405 [qtp1010347343-124] ERROR (EXistServlet.java > [doPost]:571) - java.lang.NoSuchMethodError: 'java.lang.Object > org.exist.source.Source.getKey()' > I see that XQueryURLRewrite handles controller.xql (and now prefers > controller.xq). Are there any mandatory changes to my > controller.xql? > > > -----Original Message-----From: Craig Berry via Exist-open < > > exi...@li...>Reply-To: Craig Berry < > > cra...@ma...>To: Joe Wicentowski <jo...@gm...>Cc: > > exi...@li... ml < > > exi...@li...>Subject: Re: [Exist-open] [ANN] > > Release of eXist 5.3.0Date: Thu, 01 Jul 2021 18:29:47 -0500 > > > > > On Jul 1, 2021, at 4:58 PM, Joe Wicentowski <jo...@gm... > > > > wrote: > > > > > > Hi Craig, > > > Thanks for reporting your experience. We're tracking the Apple > > > installation experience issues at > > > https://github.com/eXist-db/exist/issues/3961 > > > . > > > > Thanks, I was reading that when your message came in. > > > Several people have reported experiencing an issue where > > > Dashboard doesn't open after upgrading eXist unless you clear > > > your cookies. (For me, clearing the JSESSIONID cookie worked; I > > > do this in Chrome by navigating to Dashboard, opening View > > > > Developer > Developer Tools > Application > Cookies > > > > http://localhost:8080 > > > , selecting the JSESSIONID cookie, and hitting the delete key or > > > using right-click > Delete.) > > > I don't think that's your issue, but I mentioned it just in case > > > you do see it (it has returned for some people who access > > > multiple versions of Dashboard in the same browser). > > > In Slack, Christian Wittern reported an issue similar to yours. > > > It turned out to be caused by a custom package missing a repo.xml > > > resource, a condition that triggered a bug in the packageservice > > > app. What allowed Christian to overcome the problem was by > > > modifying the packages:get-package-meta() function in > > > /db/apps/packageservice/modules/packages.xqm module, lines 269- > > > 274, to read: > > > try { let $meta := repo:get-resource($app, > > > $name) return util:binary-to-string($meta) } > > > catch * { util:log("warn", ("Could not get metadata > > > for: ", $app, $name)) } > > > Christian reported that this fixed the issue, and in Juri said he > > > plans to submit a PR with this fix. > > > > I tried that and the exception changed to: > > <exception> <path>/db/apps/packageservice/modules/local- > > apps.xql</path> <message>exerr:ERROR cannot convert > > xs:string('<?xml version="1.0" encoding="UTF- > > 8"?> <meta xmlns=" > > http://exist-db.org/xquery/repo"> > > ; <description>This package contains the HTML templating > > library for eXist, which was previously part of the now deprecated > > 'shared-resources'</description> <author>eXist-db > > Project</author> <website> > > https://github.com/eXist-db/templating</website> > > ; <status>stable</status> <license>LGPL > > -2.1</license> <copyright>true</copyright> > > <type>library</type> <deployed>2021-06- > > 29T13:30:35.133-05:00</deployed> </meta>') to a node > > set [at line 149, column 27, source: > > /db/apps/packageservice/modules/packages.xqm] In function: > > (item()*, item()*, item()*) > > [148:18:/db/apps/packageservice/modules/packages.xqm] package > > s:scan-repo(function(*)) > > [147:5:/db/apps/packageservice/modules/packages.xqm] package > > s:installed-apps(xs:string) > > [118:19:/db/apps/packageservice/modules/packages.xqm] package > > s:get-local(xs:string) > > [38:5:/db/apps/packageservice/modules/packages.xqm] package > > s:get-local-applications() > > [16:6:/db/apps/packageservice/modules/packages.xqm]</message></exce > > ption> > > As far as I can see, that doesn't tell me what, exactly, is using > > HTML templating / shared-resources. Is there any guide related to > > migrating to the new way of doing templating or is all of that > > supposed to be API-compatible? > > > Until a new version of packageservice is available, hopefully > > > this workaround will get you back up and running. You might also > > > examine your packages to look for a missing repo.xml file or > > > possibly even other package metadata files (e.g., expath- > > > pkg.xml). > > > > I don't see any missing repo.xml or expath-pkg.xml files. > > > Joe > > > On Thu, Jul 1, 2021 at 5:19 PM Craig Berry via Exist-open < > > > exi...@li... > > > > wrote: > > > > On Jun 26, 2021, at 1:04 PM, Juri Leino < > > > > ju...@ex... > > > > > wrote: > > > > > > > > We are very happy to announce that eXist-db 5.3.0 has been > > > > released. > > > > It's been quite a while since the last release. A lot has been > > > > happening behind the scenes, and we are happy to share the > > > > outcome with you. 5.3.0 is a minor release, and should be 100% > > > > API compatible with 5.0.0 as such. > > > > > > Thanks for all the hard work. I have run into some issues > > > getting this working and I'm reporting here rather than GitHub as > > > it's unclear to me whether the problems are in eXist, one of the > > > new or revised packages, or pilot error of some sort. > > > I installed the DMG image on macOS 11.4, keeping an existing data > > > directory that's been running fine with 5.2.0. I did have to > > > ignore a warning about not being able to verify the identity of > > > the publisher, which I assume has something to do with not paying > > > Apple to countersign the code signing cert or something. That > > > was readily ignorable, if initially alarming. I bumped up some > > > memory settings during the first start-up but otherwise accepted > > > the defaults. > > > When I open the Dashboard from the menu bar and logged in, I > > > didn't get any application icons. I clicked on Package Manager > > > in the left side menu and got a "loading of available packages > > > failed" message. At this point the browser console shows a 404 > > > error at this URL: > > > http://localhost:8080/exist/apps/dashboard/bower_components/web-animations-js/web-animations-next-lite.min.js.map > > > > > > > > > and a 400 error at this URL: > > > http://localhost:8080/exist/apps/packageservice/packages/apps > > > > > > > > > the details of which look like this: > > > <?xml version="1.0" > > > ?><exception> <path>/db/apps/packageservice/modules/local- > > > apps.xql</path> <message>err:FODC0002 Resource icon.png does > > > not exist. [at line 148, column 18, source: > > > /db/apps/packageservice/modules/packages.xqm] In > > > function: (item()*, item()*, item()*) > > > [148:18:/db/apps/packageservice/modules/packages.xqm] pack > > > ages:scan-repo(function(*)) > > > [147:5:/db/apps/packageservice/modules/packages.xqm] packa > > > ges:installed-apps(xs:string) > > > [118:19:/db/apps/packageservice/modules/packages.xqm] pack > > > ages:get-local(xs:string) > > > [38:5:/db/apps/packageservice/modules/packages.xqm] packag > > > es:get-local-applications() > > > [16:6:/db/apps/packageservice/modules/packages.xqm]</message></ex > > > ception> > > > There is an icon.png at /db/apps/packageservice/icon.png, so I'm > > > not sure what it's confused about. In > > > /db/apps/packageservice/expath-pkg.xml, it says the version I > > > have is 1.3.9 -- is that the right one? > > > eXide seems to be working fine. I tried running the following in > > > eXide, which had no effect: > > > import module namespace repair=" > > > http://exist-db.org/xquery/repo/repair > > > " at "resource:org/exist/xquery/modules/expathrepo/repair.xql"; > > > repair:clean-all(), repair:repair() > > > Any other ideas? > > > > > > > > > ________________________________________Craig A. Berry > > > "... getting out of a sonnet is much more difficult than getting > > > in." Brad Leithauser > > > > > > > > > _______________________________________________Exist-open mailing > > > lis...@li... > > > > > > https://lists.sourceforge.net/lists/listinfo/exist-open > > > > > > > ________________________________________Craig A. Berry > > "... getting out of a sonnet is much more difficult than getting > > in." Brad Leithauser > > > > > > _______________________________________________Exist-open mailing > > lis...@li... > > > > https://lists.sourceforge.net/lists/listinfo/exist-open > > > > -- Eduard Drenth, Software Architekt > > ed...@fr... > > > > Doelestrjitte 88911 DX Ljouwert+31 58 234 30 47+31 62 094 34 28 > > (privé) > > skype: eduarddrenthhttps://github.com/eduarddrenth > > frisian.eugpg: > > https://pgp.surfnet.nl/pks/lookup?search=eduarddrenth > > > > > > Op freed bin ik thús/wurkje ik minder > > > > > > ________________________________________Craig A. Berry > "... getting out of a sonnet is much more difficult than getting > in." Brad Leithauser > > > _______________________________________________Exist-open mailing > lis...@li... > https://lists.sourceforge.net/lists/listinfo/exist-open > -- Eduard Drenth, Software Architekt ed...@fr... Doelestrjitte 8 8911 DX Ljouwert +31 58 234 30 47 +31 62 094 34 28 (privé) skype: eduarddrenth https://github.com/eduarddrenth frisian.eu gpg: https://pgp.surfnet.nl/pks/lookup?search=eduarddrenth Op freed bin ik thús/wurkje ik minder |
From: Craig B. <cra...@ma...> - 2021-07-02 21:28:00
|
> On Jul 2, 2021, at 3:28 PM, Joe Wicentowski <jo...@gm...> wrote: > > Hi Craig, > > I saw your reply to Eduard's note after I hit send on my reply. Since you already found the PR I referenced and this still left you with the "icon.png does not exist" error, here's what you need to do: > > Either: [reversing the order because of course the one I tried first didn't work :-( ] > Or: > > 2. Install the current release via the methods in https://github.com/eXist-db/existdb-packageservice/pull/10#issuecomment-526854027, then manually apply the patch in PR #22. This method failed like so: eXide: repo:remove("http://exist-db.org/apps/existdb-packageservice"), repo:install-and-deploy("http://exist-db.org/apps/existdb-packageservice", "https://exist-db.org/exist/apps/public-repo/find") exist.log: 2021-07-02 15:45:55,474 [qtp1010347343-205] INFO (Deploy.java [load]:298) - Retrieving package from https://exist-db.org/exist/apps/public-repo/find?name=http%3A%2F%2Fexist-db.org%2Fapps%2Fexistdb-packageservice&processor=5.3.0 2021-07-02 15:45:56,665 [qtp1010347343-205] ERROR (Deploy.java [installAndDeploy]:215) - Missing descriptor from package: file:///var/folders/gb/9qzz8hdm8xjf6c00r6_l9z000000gp/T/exist-db-temp-file-manager-10035086934229571473/exist-db-temp-9926608803405112051.tmp org.expath.pkg.repo.PackageException: Missing descriptor from package: file:///var/folders/gb/9qzz8hdm8xjf6c00r6_l9z000000gp/T/exist-db-temp-file-manager-10035086934229571473/exist-db-temp-9926608803405112051.tmp > 1. Clone packageservice, check out PR #22, build it locally, and install the xar via eXide > Manage DB > Upload (keeping the checkbox selected for installing uploaded cars). Hmm. I built 1.3.12 without incident. I uploaded it with eXide's File > Manage > Upload and left the "Auto deploy uploaded .xar packages" box checked. It uploaded successfully but did not deploy (I still had 1.3.9). However, I was able to manually install the uploaded file like so: repo:remove("http://exist-db.org/apps/existdb-packageservice"), repo:install-and-deploy-from-db("/db/packageservice-1.3.12.xar") So I now have 1.3.12 installed and Launcher and Package Manager are now working. Thanks! > The key PR from the current release that fixes your icon.png error is: https://github.com/eXist-db/existdb-packageservice/pull/20. > > Addressing Eduard's points, there is no problem with running shared-resources in eXist 5.3.0 or having apps that depend on it. The only factor related to shared-resources and eXist 5.3.0 is that it is not included in the eXist distribution anymore. So if you need it, you can install it by any of the usual methods - public repo xar download, package manager, expath package dependency declarations, etc. > > If you only used shared-resources for its HTML templating library module, then you should have a fairly smooth time of upgrading to Wolfgang's new templating library, which fixes numerous bugs in the old version, is largely a drop-in replacement for the old module (note the new module namespace and package name), and is included in the eXist 5.3.0 distribution. See https://github.com/eXist-db/templating. As a standalone library package, it now sheds the baggage of the old shared-resources package, with its old versions of jquery and various resources. The other XQuery library modules in shared-resources have not been migrated to standalone libraries, so if you use apputil.xqm, dbutil.xqm, or siteutils.xqm, you'll still need shared-resources. > > eXist 5.3.0 will not choke on collection configurations that mention the legacy fulltext index. However, the legacy fulltext index was removed from eXist in v3.0.0, and the change in 5.3.0 is that the schema has been updated to report mentions of the legacy fulltext index as a validation error. No need to reindex. Best to remove it at some point though. > > You are correct that eXist 5.3.0 raises an error if you have two functions of the same name and arity. > > Joe Thanks for all the help and explanations. My app is still crashing in XQueryURLRewrite, but I've probably caused enough trouble for one day :-). > > On Fri, Jul 2, 2021 at 4:11 PM Craig Berry via Exist-open <exi...@li...> wrote: > Thanks for the tips. > > > On Jul 2, 2021, at 12:44 AM, Eduard Drenth <ed...@FR...> wrote: > > > > When upgrading from 5.2 to 5.3 I had to do several things: > > > > - remove <dependency package="http://exist-db.org/apps/shared"/> from expath-pkg.xml > > I don't appear to have had any of those. > > > - remove <fulltext default="none" attributes="false"/> from collection.xconf > > Why, and where is that documented? I have some large collections that will take a very long time to reindex, so I'd prefer to avoid it unless it's absolutely necessary. > > > - change templating to http://exist-db.org/xquery/html-templating > > Ah, good. I had a lot of cases of: > > import module namespace templates="http://exist-db.org/xquery/templates" ; > > that needed to be changed to: > > import module namespace templates="http://exist-db.org/xquery/html-templating"; > > That did get me past some problems. I could not find anything about it in the release notes. > > > - change my conf.xml to be based on https://github.com/eXist-db/exist/blob/eXist-5.3.0/exist-distribution/src/main/config/conf.xml > > What I have is identical to the one in the distribution except for the memory settings I'd bumped up. > > > - fix some more strict variable types > > I also noticed that function overloads no longer work if two functions with the same name have the same number of parameters, even if the data types of the parameters are different. Luckily I wasn't actually using one of the overloads I had so I was able to get rid of it. > > > Perhaps this helps, Eduard > > Some, yes. It still looks like there's a long slog ahead of me. Launcher and Package Manager are still completely wedged even though I've applied the fix here: > > <https://github.com/eXist-db/existdb-packageservice/pull/22> > > They still complain about "err:FODC0002 Resource icon.png does not exist." > > My own app crashes like so: > > URI: /exist/apps/shc/works/ > STATUS: 500 > MESSAGE: javax.servlet.ServletException: javax.servlet.ServletException: An error occurred while processing request to /exist/apps/shc/works/: An unknown error occurred: 'java.lang.Object org.exist.source.Source.getKey()' > SERVLET: XQueryURLRewrite > CAUSED BY: javax.servlet.ServletException: javax.servlet.ServletException: An error occurred while processing request to /exist/apps/shc/works/: An unknown error occurred: 'java.lang.Object org.exist.source.Source.getKey()' > CAUSED BY: javax.servlet.ServletException: An error occurred while processing request to /exist/apps/shc/works/: An unknown error occurred: 'java.lang.Object org.exist.source.Source.getKey()' > CAUSED BY: javax.servlet.ServletException: An unknown error occurred: 'java.lang.Object org.exist.source.Source.getKey()' > CAUSED BY: java.lang.NoSuchMethodError: 'java.lang.Object org.exist.source.Source.getKey()' > > The eXist log shows that this happens in a method called doPost line 571, but I'm not sure that narrows it down much: > > 2021-07-02 14:44:42,405 [qtp1010347343-124] ERROR (EXistServlet.java [doPost]:571) - java.lang.NoSuchMethodError: 'java.lang.Object org.exist.source.Source.getKey()' > > I see that XQueryURLRewrite handles controller.xql (and now prefers controller.xq). Are there any mandatory changes to my controller.xql? > > > > -----Original Message----- > > From: Craig Berry via Exist-open <exi...@li...> > > Reply-To: Craig Berry <cra...@ma...> > > To: Joe Wicentowski <jo...@gm...> > > Cc: exi...@li... ml <exi...@li...> > > Subject: Re: [Exist-open] [ANN] Release of eXist 5.3.0 > > Date: Thu, 01 Jul 2021 18:29:47 -0500 > > > > > >> On Jul 1, 2021, at 4:58 PM, Joe Wicentowski < > >> jo...@gm... > >> > wrote: > >> > >> Hi Craig, > >> > >> Thanks for reporting your experience. We're tracking the Apple installation experience issues at > >> https://github.com/eXist-db/exist/issues/3961 > >> . > > > > Thanks, I was reading that when your message came in. > > > >> > >> Several people have reported experiencing an issue where Dashboard doesn't open after upgrading eXist unless you clear your cookies. (For me, clearing the JSESSIONID cookie worked; I do this in Chrome by navigating to Dashboard, opening View > Developer > Developer Tools > Application > Cookies > > >> http://localhost:8080 > >> , selecting the JSESSIONID cookie, and hitting the delete key or using right-click > Delete.) > >> > >> I don't think that's your issue, but I mentioned it just in case you do see it (it has returned for some people who access multiple versions of Dashboard in the same browser). > >> > >> In Slack, Christian Wittern reported an issue similar to yours. It turned out to be caused by a custom package missing a repo.xml resource, a condition that triggered a bug in the packageservice app. What allowed Christian to overcome the problem was by modifying the packages:get-package-meta() function in /db/apps/packageservice/modules/packages.xqm module, lines 269-274, to read: > >> > >> try { > >> let $meta := repo:get-resource($app, $name) > >> return util:binary-to-string($meta) > >> } catch * { > >> util:log("warn", ("Could not get metadata for: ", $app, $name)) > >> } > >> > >> Christian reported that this fixed the issue, and in Juri said he plans to submit a PR with this fix. > > > > I tried that and the exception changed to: > > > > <exception> > > <path>/db/apps/packageservice/modules/local-apps.xql</path> > > <message>exerr:ERROR cannot convert xs:string('<?xml version="1.0" encoding="UTF-8"?> > > <meta xmlns=" > > http://exist-db.org/xquery/repo"> > > ; > > <description>This package contains the HTML templating library for eXist, which was previously part of the now deprecated 'shared-resources'</description> > > <author>eXist-db Project</author> > > <website> > > https://github.com/eXist-db/templating</website> > > ; > > <status>stable</status> > > <license>LGPL-2.1</license> > > <copyright>true</copyright> > > <type>library</type> > > <deployed>2021-06-29T13:30:35.133-05:00</deployed> > > </meta>') to a node set [at line 149, column 27, source: /db/apps/packageservice/modules/packages.xqm] > > In function: > > (item()*, item()*, item()*) [148:18:/db/apps/packageservice/modules/packages.xqm] > > packages:scan-repo(function(*)) [147:5:/db/apps/packageservice/modules/packages.xqm] > > packages:installed-apps(xs:string) [118:19:/db/apps/packageservice/modules/packages.xqm] > > packages:get-local(xs:string) [38:5:/db/apps/packageservice/modules/packages.xqm] > > packages:get-local-applications() [16:6:/db/apps/packageservice/modules/packages.xqm]</message> > > </exception> > > > > As far as I can see, that doesn't tell me what, exactly, is using HTML templating / shared-resources. Is there any guide related to migrating to the new way of doing templating or is all of that supposed to be API-compatible? > > > >> > > > >> Until a new version of packageservice is available, hopefully this workaround will get you back up and running. You might also examine your packages to look for a missing repo.xml file or possibly even other package metadata files (e.g., expath-pkg.xml). > > > > I don't see any missing repo.xml or expath-pkg.xml files. > > > >> > >> Joe > >> > >> On Thu, Jul 1, 2021 at 5:19 PM Craig Berry via Exist-open < > >> exi...@li... > >> > wrote: > >> > >> > >>> On Jun 26, 2021, at 1:04 PM, Juri Leino < > >>> ju...@ex... > >>> > wrote: > >>> > >>> We are very happy to announce that eXist-db 5.3.0 has been released. > >>> > >>> It's been quite a while since the last release. A lot has been happening behind the scenes, and we are happy to share the outcome with you. 5.3.0 is a minor release, and should be 100% API compatible with 5.0.0 as such. > >>> > >> > >> Thanks for all the hard work. I have run into some issues getting this working and I'm reporting here rather than GitHub as it's unclear to me whether the problems are in eXist, one of the new or revised packages, or pilot error of some sort. > >> > >> I installed the DMG image on macOS 11.4, keeping an existing data directory that's been running fine with 5.2.0. I did have to ignore a warning about not being able to verify the identity of the publisher, which I assume has something to do with not paying Apple to countersign the code signing cert or something. That was readily ignorable, if initially alarming. I bumped up some memory settings during the first start-up but otherwise accepted the defaults. > >> > >> When I open the Dashboard from the menu bar and logged in, I didn't get any application icons. I clicked on Package Manager in the left side menu and got a "loading of available packages failed" message. At this point the browser console shows a 404 error at this URL: > >> > >> http://localhost:8080/exist/apps/dashboard/bower_components/web-animations-js/web-animations-next-lite.min.js.map > >> > >> > >> and a 400 error at this URL: > >> > >> http://localhost:8080/exist/apps/packageservice/packages/apps > >> > >> > >> the details of which look like this: > >> > >> <?xml version="1.0" ?> > >> <exception> > >> <path>/db/apps/packageservice/modules/local-apps.xql</path> > >> <message>err:FODC0002 Resource icon.png does not exist. [at line 148, column 18, source: /db/apps/packageservice/modules/packages.xqm] > >> In function: > >> (item()*, item()*, item()*) [148:18:/db/apps/packageservice/modules/packages.xqm] > >> packages:scan-repo(function(*)) [147:5:/db/apps/packageservice/modules/packages.xqm] > >> packages:installed-apps(xs:string) [118:19:/db/apps/packageservice/modules/packages.xqm] > >> packages:get-local(xs:string) [38:5:/db/apps/packageservice/modules/packages.xqm] > >> packages:get-local-applications() [16:6:/db/apps/packageservice/modules/packages.xqm]</message> > >> </exception> > >> > >> There is an icon.png at /db/apps/packageservice/icon.png, so I'm not sure what it's confused about. In /db/apps/packageservice/expath-pkg.xml, it says the version I have is 1.3.9 -- is that the right one? > >> > >> eXide seems to be working fine. I tried running the following in eXide, which had no effect: > >> > >> import module namespace repair=" > >> http://exist-db.org/xquery/repo/repair > >> " > >> at "resource:org/exist/xquery/modules/expathrepo/repair.xql"; > >> > >> repair:clean-all(), > >> repair:repair() > >> > >> Any other ideas? > >> > >> > >> > >> ________________________________________ > >> Craig A. Berry > >> > >> "... getting out of a sonnet is much more > >> difficult than getting in." > >> Brad Leithauser > >> > >> > >> > >> _______________________________________________ > >> Exist-open mailing list > >> Exi...@li... > >> > >> https://lists.sourceforge.net/lists/listinfo/exist-open > >> > > > > ________________________________________ > > Craig A. Berry > > > > "... getting out of a sonnet is much more > > difficult than getting in." > > Brad Leithauser > > > > > > > > _______________________________________________ > > Exist-open mailing list > > Exi...@li... > > > > https://lists.sourceforge.net/lists/listinfo/exist-open > > > > -- > > Eduard Drenth, Software Architekt > > > > ed...@fr... > > > > Doelestrjitte 8 > > 8911 DX Ljouwert > > +31 58 234 30 47 > > +31 62 094 34 28 (privé) > > > > skype: eduarddrenth > > https://github.com/eduarddrenth > > frisian.eu > > gpg: https://pgp.surfnet.nl/pks/lookup?search=eduarddrenth > > > > > > Op freed bin ik thús/wurkje ik minder > > > > > > > > ________________________________________ > Craig A. Berry > > "... getting out of a sonnet is much more > difficult than getting in." > Brad Leithauser > > > > _______________________________________________ > Exist-open mailing list > Exi...@li... > https://lists.sourceforge.net/lists/listinfo/exist-open ________________________________________ Craig A. Berry "... getting out of a sonnet is much more difficult than getting in." Brad Leithauser |
From: Craig B. <cra...@ma...> - 2021-07-02 20:38:12
|
> On Jul 2, 2021, at 3:13 PM, Joe Wicentowski <jo...@GM...> wrote: > > Hi Craig, > > The problem with the snippet I provided was that it returned a string instead. I'm actually not sure how it worked for Christian. > > Instead, please try this one - copied from the PR where Juri and I have been working on a fix https://github.com/eXist-db/existdb-packageservice/pull/22: > > try { > repo:get-resource($app, $name) > => util:binary-to-string() > => parse-xml() > } catch * { > document { > <meta xmlns="http://exist-db.org/xquery/repo"> > <description>Invalid repo descriptor for app {$app}</description> > </meta> > } > } > > When the Dashboard Launcher tries to load an app's metadata and it fails this try-catch expression, the result in the Dashboard UI will be that the app does not appear in the listing of apps. Since this is a silent failure, I plan to add a log entry to exist.log indicating which app failed the check. > > I tried that. If I do that I get this exception: <exception> <path>/db/apps/packageservice/modules/local-apps.xql</path> <message> err:XPTY0004 document-node()( eXist-db HTML Templating Library http://exist-db.org/xquery/html-templating templates.xqm http://exist-db.org/xquery/html-templating/lib lib.xqm ) is not a sub-type of element() [at line 264, column 43, source: /db/apps/packageservice/modules/packages.xqm] In function: packages:get-package-meta(xs:string, xs:string) [257:24:/db/apps/packageservice/modules/packages.xqm] packages:scan-repo(function(*)) [147:5:/db/apps/packageservice/modules/packages.xqm] packages:installed-apps(xs:string) [118:19:/db/apps/packageservice/modules/packages.xqm] packages:get-local(xs:string) [38:5:/db/apps/packageservice/modules/packages.xqm] packages:get-local-applications() [16:6:/db/apps/packageservice/modules/packages.xqm] </message> </exception> If I also remove the "as element(repo:meta)" return type from the function, I'm back to the "Resource icon.png does not exist" error. > > On Thu, Jul 1, 2021 at 7:29 PM Craig Berry <cra...@ma...> wrote: > > > > On Jul 1, 2021, at 4:58 PM, Joe Wicentowski <jo...@gm...> wrote: > > > > Hi Craig, > > > > Thanks for reporting your experience. We're tracking the Apple installation experience issues at https://github.com/eXist-db/exist/issues/3961. > > Thanks, I was reading that when your message came in. > > > > > Several people have reported experiencing an issue where Dashboard doesn't open after upgrading eXist unless you clear your cookies. (For me, clearing the JSESSIONID cookie worked; I do this in Chrome by navigating to Dashboard, opening View > Developer > Developer Tools > Application > Cookies > http://localhost:8080, selecting the JSESSIONID cookie, and hitting the delete key or using right-click > Delete.) > > > > I don't think that's your issue, but I mentioned it just in case you do see it (it has returned for some people who access multiple versions of Dashboard in the same browser). > > > > In Slack, Christian Wittern reported an issue similar to yours. It turned out to be caused by a custom package missing a repo.xml resource, a condition that triggered a bug in the packageservice app. What allowed Christian to overcome the problem was by modifying the packages:get-package-meta() function in /db/apps/packageservice/modules/packages.xqm module, lines 269-274, to read: > > > > try { > > let $meta := repo:get-resource($app, $name) > > return util:binary-to-string($meta) > > } catch * { > > util:log("warn", ("Could not get metadata for: ", $app, $name)) > > } > > > > Christian reported that this fixed the issue, and in Juri said he plans to submit a PR with this fix. > > I tried that and the exception changed to: > > <exception> > <path>/db/apps/packageservice/modules/local-apps.xql</path> > <message>exerr:ERROR cannot convert xs:string('<?xml version="1.0" encoding="UTF-8"?> > <meta xmlns="http://exist-db.org/xquery/repo"> > <description>This package contains the HTML templating library for eXist, which was previously part of the now deprecated 'shared-resources'</description> > <author>eXist-db Project</author> > <website>https://github.com/eXist-db/templating</website> > <status>stable</status> > <license>LGPL-2.1</license> > <copyright>true</copyright> > <type>library</type> > <deployed>2021-06-29T13:30:35.133-05:00</deployed> > </meta>') to a node set [at line 149, column 27, source: /db/apps/packageservice/modules/packages.xqm] > In function: > (item()*, item()*, item()*) [148:18:/db/apps/packageservice/modules/packages.xqm] > packages:scan-repo(function(*)) [147:5:/db/apps/packageservice/modules/packages.xqm] > packages:installed-apps(xs:string) [118:19:/db/apps/packageservice/modules/packages.xqm] > packages:get-local(xs:string) [38:5:/db/apps/packageservice/modules/packages.xqm] > packages:get-local-applications() [16:6:/db/apps/packageservice/modules/packages.xqm]</message> > </exception> > > As far as I can see, that doesn't tell me what, exactly, is using HTML templating / shared-resources. Is there any guide related to migrating to the new way of doing templating or is all of that supposed to be API-compatible? > > > > > > Until a new version of packageservice is available, hopefully this workaround will get you back up and running. You might also examine your packages to look for a missing repo.xml file or possibly even other package metadata files (e.g., expath-pkg.xml). > > I don't see any missing repo.xml or expath-pkg.xml files. > > > > > Joe > > > > On Thu, Jul 1, 2021 at 5:19 PM Craig Berry via Exist-open <exi...@li...> wrote: > > > > > > > On Jun 26, 2021, at 1:04 PM, Juri Leino <ju...@ex...> wrote: > > > > > > We are very happy to announce that eXist-db 5.3.0 has been released. > > > > > > It's been quite a while since the last release. A lot has been happening behind the scenes, and we are happy to share the outcome with you. 5.3.0 is a minor release, and should be 100% API compatible with 5.0.0 as such. > > > > > > > Thanks for all the hard work. I have run into some issues getting this working and I'm reporting here rather than GitHub as it's unclear to me whether the problems are in eXist, one of the new or revised packages, or pilot error of some sort. > > > > I installed the DMG image on macOS 11.4, keeping an existing data directory that's been running fine with 5.2.0. I did have to ignore a warning about not being able to verify the identity of the publisher, which I assume has something to do with not paying Apple to countersign the code signing cert or something. That was readily ignorable, if initially alarming. I bumped up some memory settings during the first start-up but otherwise accepted the defaults. > > > > When I open the Dashboard from the menu bar and logged in, I didn't get any application icons. I clicked on Package Manager in the left side menu and got a "loading of available packages failed" message. At this point the browser console shows a 404 error at this URL: > > > > http://localhost:8080/exist/apps/dashboard/bower_components/web-animations-js/web-animations-next-lite.min.js.map > > > > and a 400 error at this URL: > > > > http://localhost:8080/exist/apps/packageservice/packages/apps > > > > the details of which look like this: > > > > <?xml version="1.0" ?> > > <exception> > > <path>/db/apps/packageservice/modules/local-apps.xql</path> > > <message>err:FODC0002 Resource icon.png does not exist. [at line 148, column 18, source: /db/apps/packageservice/modules/packages.xqm] > > In function: > > (item()*, item()*, item()*) [148:18:/db/apps/packageservice/modules/packages.xqm] > > packages:scan-repo(function(*)) [147:5:/db/apps/packageservice/modules/packages.xqm] > > packages:installed-apps(xs:string) [118:19:/db/apps/packageservice/modules/packages.xqm] > > packages:get-local(xs:string) [38:5:/db/apps/packageservice/modules/packages.xqm] > > packages:get-local-applications() [16:6:/db/apps/packageservice/modules/packages.xqm]</message> > > </exception> > > > > There is an icon.png at /db/apps/packageservice/icon.png, so I'm not sure what it's confused about. In /db/apps/packageservice/expath-pkg.xml, it says the version I have is 1.3.9 -- is that the right one? > > > > eXide seems to be working fine. I tried running the following in eXide, which had no effect: > > > > import module namespace repair="http://exist-db.org/xquery/repo/repair" > > at "resource:org/exist/xquery/modules/expathrepo/repair.xql"; > > > > repair:clean-all(), > > repair:repair() > > > > Any other ideas? > > > > > > > > ________________________________________ > > Craig A. Berry > > > > "... getting out of a sonnet is much more > > difficult than getting in." > > Brad Leithauser > > > > > > > > _______________________________________________ > > Exist-open mailing list > > Exi...@li... > > https://lists.sourceforge.net/lists/listinfo/exist-open > > ________________________________________ > Craig A. Berry > > "... getting out of a sonnet is much more > difficult than getting in." > Brad Leithauser > ________________________________________ Craig A. Berry "... getting out of a sonnet is much more difficult than getting in." Brad Leithauser |
From: Joe W. <jo...@gm...> - 2021-07-02 20:28:37
|
Hi Craig, I saw your reply to Eduard's note after I hit send on my reply. Since you already found the PR I referenced and this still left you with the "icon.png does not exist" error, here's what you need to do: Either: 1. Clone packageservice, check out PR #22, build it locally, and install the xar via eXide > Manage DB > Upload (keeping the checkbox selected for installing uploaded cars). Or: 2. Install the current release via the methods in https://github.com/eXist-db/existdb-packageservice/pull/10#issuecomment-526854027, then manually apply the patch in PR #22. The key PR from the current release that fixes your icon.png error is: https://github.com/eXist-db/existdb-packageservice/pull/20. Addressing Eduard's points, there is no problem with running shared-resources in eXist 5.3.0 or having apps that depend on it. The only factor related to shared-resources and eXist 5.3.0 is that it is not included in the eXist distribution anymore. So if you need it, you can install it by any of the usual methods - public repo xar download, package manager, expath package dependency declarations, etc. If you only used shared-resources for its HTML templating library module, then you should have a fairly smooth time of upgrading to Wolfgang's new templating library, which fixes numerous bugs in the old version, is largely a drop-in replacement for the old module (note the new module namespace and package name), and is included in the eXist 5.3.0 distribution. See https://github.com/eXist-db/templating. As a standalone library package, it now sheds the baggage of the old shared-resources package, with its old versions of jquery and various resources. The other XQuery library modules in shared-resources have not been migrated to standalone libraries, so if you use apputil.xqm, dbutil.xqm, or siteutils.xqm, you'll still need shared-resources. eXist 5.3.0 will not choke on collection configurations that mention the legacy fulltext index. However, the legacy fulltext index was removed from eXist in v3.0.0, and the change in 5.3.0 is that the schema has been updated to report mentions of the legacy fulltext index as a validation error. No need to reindex. Best to remove it at some point though. You are correct that eXist 5.3.0 raises an error if you have two functions of the same name and arity. Joe On Fri, Jul 2, 2021 at 4:11 PM Craig Berry via Exist-open < exi...@li...> wrote: > Thanks for the tips. > > > On Jul 2, 2021, at 12:44 AM, Eduard Drenth <ed...@FR...> > wrote: > > > > When upgrading from 5.2 to 5.3 I had to do several things: > > > > - remove <dependency package="http://exist-db.org/apps/shared"/> from > expath-pkg.xml > > I don't appear to have had any of those. > > > - remove <fulltext default="none" attributes="false"/> from > collection.xconf > > Why, and where is that documented? I have some large collections that > will take a very long time to reindex, so I'd prefer to avoid it unless > it's absolutely necessary. > > > - change templating to http://exist-db.org/xquery/html-templating > > Ah, good. I had a lot of cases of: > > import module namespace templates="http://exist-db.org/xquery/templates" > ; > > that needed to be changed to: > > import module namespace templates=" > http://exist-db.org/xquery/html-templating"; > > That did get me past some problems. I could not find anything about it in > the release notes. > > > - change my conf.xml to be based on > https://github.com/eXist-db/exist/blob/eXist-5.3.0/exist-distribution/src/main/config/conf.xml > > What I have is identical to the one in the distribution except for the > memory settings I'd bumped up. > > > - fix some more strict variable types > > I also noticed that function overloads no longer work if two functions > with the same name have the same number of parameters, even if the data > types of the parameters are different. Luckily I wasn't actually using one > of the overloads I had so I was able to get rid of it. > > > Perhaps this helps, Eduard > > Some, yes. It still looks like there's a long slog ahead of me. Launcher > and Package Manager are still completely wedged even though I've applied > the fix here: > > <https://github.com/eXist-db/existdb-packageservice/pull/22> > > They still complain about "err:FODC0002 Resource icon.png does not exist." > > My own app crashes like so: > > URI: /exist/apps/shc/works/ > STATUS: 500 > MESSAGE: javax.servlet.ServletException: > javax.servlet.ServletException: An error occurred while processing request > to /exist/apps/shc/works/: An unknown error occurred: 'java.lang.Object > org.exist.source.Source.getKey()' > SERVLET: XQueryURLRewrite > CAUSED BY: javax.servlet.ServletException: > javax.servlet.ServletException: An error occurred while processing request > to /exist/apps/shc/works/: An unknown error occurred: 'java.lang.Object > org.exist.source.Source.getKey()' > CAUSED BY: javax.servlet.ServletException: An error occurred while > processing request to /exist/apps/shc/works/: An unknown error occurred: > 'java.lang.Object org.exist.source.Source.getKey()' > CAUSED BY: javax.servlet.ServletException: An unknown error occurred: > 'java.lang.Object org.exist.source.Source.getKey()' > CAUSED BY: java.lang.NoSuchMethodError: 'java.lang.Object > org.exist.source.Source.getKey()' > > The eXist log shows that this happens in a method called doPost line 571, > but I'm not sure that narrows it down much: > > 2021-07-02 14:44:42,405 [qtp1010347343-124] ERROR (EXistServlet.java > [doPost]:571) - java.lang.NoSuchMethodError: 'java.lang.Object > org.exist.source.Source.getKey()' > > I see that XQueryURLRewrite handles controller.xql (and now prefers > controller.xq). Are there any mandatory changes to my controller.xql? > > > > -----Original Message----- > > From: Craig Berry via Exist-open <exi...@li...> > > Reply-To: Craig Berry <cra...@ma...> > > To: Joe Wicentowski <jo...@gm...> > > Cc: exi...@li... ml < > exi...@li...> > > Subject: Re: [Exist-open] [ANN] Release of eXist 5.3.0 > > Date: Thu, 01 Jul 2021 18:29:47 -0500 > > > > > >> On Jul 1, 2021, at 4:58 PM, Joe Wicentowski < > >> jo...@gm... > >> > wrote: > >> > >> Hi Craig, > >> > >> Thanks for reporting your experience. We're tracking the Apple > installation experience issues at > >> https://github.com/eXist-db/exist/issues/3961 > >> . > > > > Thanks, I was reading that when your message came in. > > > >> > >> Several people have reported experiencing an issue where Dashboard > doesn't open after upgrading eXist unless you clear your cookies. (For me, > clearing the JSESSIONID cookie worked; I do this in Chrome by navigating to > Dashboard, opening View > Developer > Developer Tools > Application > > Cookies > > >> http://localhost:8080 > >> , selecting the JSESSIONID cookie, and hitting the delete key or using > right-click > Delete.) > >> > >> I don't think that's your issue, but I mentioned it just in case you do > see it (it has returned for some people who access multiple versions of > Dashboard in the same browser). > >> > >> In Slack, Christian Wittern reported an issue similar to yours. It > turned out to be caused by a custom package missing a repo.xml resource, a > condition that triggered a bug in the packageservice app. What allowed > Christian to overcome the problem was by modifying the > packages:get-package-meta() function in > /db/apps/packageservice/modules/packages.xqm module, lines 269-274, to read: > >> > >> try { > >> let $meta := repo:get-resource($app, $name) > >> return util:binary-to-string($meta) > >> } catch * { > >> util:log("warn", ("Could not get metadata for: ", $app, > $name)) > >> } > >> > >> Christian reported that this fixed the issue, and in Juri said he plans > to submit a PR with this fix. > > > > I tried that and the exception changed to: > > > > <exception> > > <path>/db/apps/packageservice/modules/local-apps.xql</path> > > <message>exerr:ERROR cannot convert xs:string('<?xml > version="1.0" encoding="UTF-8"?> > > <meta xmlns=" > > http://exist-db.org/xquery/repo"> > > ; > > <description>This package contains the HTML templating > library for eXist, which was previously part of the now deprecated > 'shared-resources'</description> > > <author>eXist-db Project</author> > > <website> > > https://github.com/eXist-db/templating</website> > > ; > > <status>stable</status> > > <license>LGPL-2.1</license> > > <copyright>true</copyright> > > <type>library</type> > > <deployed>2021-06-29T13:30:35.133-05:00</deployed> > > </meta>') to a node set [at line 149, column 27, source: > /db/apps/packageservice/modules/packages.xqm] > > In function: > > (item()*, item()*, item()*) > [148:18:/db/apps/packageservice/modules/packages.xqm] > > packages:scan-repo(function(*)) > [147:5:/db/apps/packageservice/modules/packages.xqm] > > packages:installed-apps(xs:string) > [118:19:/db/apps/packageservice/modules/packages.xqm] > > packages:get-local(xs:string) > [38:5:/db/apps/packageservice/modules/packages.xqm] > > packages:get-local-applications() > [16:6:/db/apps/packageservice/modules/packages.xqm]</message> > > </exception> > > > > As far as I can see, that doesn't tell me what, exactly, is using HTML > templating / shared-resources. Is there any guide related to migrating to > the new way of doing templating or is all of that supposed to be > API-compatible? > > > >> > > > >> Until a new version of packageservice is available, hopefully this > workaround will get you back up and running. You might also examine your > packages to look for a missing repo.xml file or possibly even other package > metadata files (e.g., expath-pkg.xml). > > > > I don't see any missing repo.xml or expath-pkg.xml files. > > > >> > >> Joe > >> > >> On Thu, Jul 1, 2021 at 5:19 PM Craig Berry via Exist-open < > >> exi...@li... > >> > wrote: > >> > >> > >>> On Jun 26, 2021, at 1:04 PM, Juri Leino < > >>> ju...@ex... > >>> > wrote: > >>> > >>> We are very happy to announce that eXist-db 5.3.0 has been released. > >>> > >>> It's been quite a while since the last release. A lot has been > happening behind the scenes, and we are happy to share the outcome with > you. 5.3.0 is a minor release, and should be 100% API compatible with > 5.0.0 as such. > >>> > >> > >> Thanks for all the hard work. I have run into some issues getting this > working and I'm reporting here rather than GitHub as it's unclear to me > whether the problems are in eXist, one of the new or revised packages, or > pilot error of some sort. > >> > >> I installed the DMG image on macOS 11.4, keeping an existing data > directory that's been running fine with 5.2.0. I did have to ignore a > warning about not being able to verify the identity of the publisher, which > I assume has something to do with not paying Apple to countersign the code > signing cert or something. That was readily ignorable, if initially > alarming. I bumped up some memory settings during the first start-up but > otherwise accepted the defaults. > >> > >> When I open the Dashboard from the menu bar and logged in, I didn't get > any application icons. I clicked on Package Manager in the left side menu > and got a "loading of available packages failed" message. At this point > the browser console shows a 404 error at this URL: > >> > >> > http://localhost:8080/exist/apps/dashboard/bower_components/web-animations-js/web-animations-next-lite.min.js.map > >> > >> > >> and a 400 error at this URL: > >> > >> http://localhost:8080/exist/apps/packageservice/packages/apps > >> > >> > >> the details of which look like this: > >> > >> <?xml version="1.0" ?> > >> <exception> > >> <path>/db/apps/packageservice/modules/local-apps.xql</path> > >> <message>err:FODC0002 Resource icon.png does not exist. [at line > 148, column 18, source: /db/apps/packageservice/modules/packages.xqm] > >> In function: > >> (item()*, item()*, item()*) > [148:18:/db/apps/packageservice/modules/packages.xqm] > >> packages:scan-repo(function(*)) > [147:5:/db/apps/packageservice/modules/packages.xqm] > >> packages:installed-apps(xs:string) > [118:19:/db/apps/packageservice/modules/packages.xqm] > >> packages:get-local(xs:string) > [38:5:/db/apps/packageservice/modules/packages.xqm] > >> packages:get-local-applications() > [16:6:/db/apps/packageservice/modules/packages.xqm]</message> > >> </exception> > >> > >> There is an icon.png at /db/apps/packageservice/icon.png, so I'm not > sure what it's confused about. In /db/apps/packageservice/expath-pkg.xml, > it says the version I have is 1.3.9 -- is that the right one? > >> > >> eXide seems to be working fine. I tried running the following in > eXide, which had no effect: > >> > >> import module namespace repair=" > >> http://exist-db.org/xquery/repo/repair > >> " > >> at "resource:org/exist/xquery/modules/expathrepo/repair.xql"; > >> > >> repair:clean-all(), > >> repair:repair() > >> > >> Any other ideas? > >> > >> > >> > >> ________________________________________ > >> Craig A. Berry > >> > >> "... getting out of a sonnet is much more > >> difficult than getting in." > >> Brad Leithauser > >> > >> > >> > >> _______________________________________________ > >> Exist-open mailing list > >> Exi...@li... > >> > >> https://lists.sourceforge.net/lists/listinfo/exist-open > >> > > > > ________________________________________ > > Craig A. Berry > > > > "... getting out of a sonnet is much more > > difficult than getting in." > > Brad Leithauser > > > > > > > > _______________________________________________ > > Exist-open mailing list > > Exi...@li... > > > > https://lists.sourceforge.net/lists/listinfo/exist-open > > > > -- > > Eduard Drenth, Software Architekt > > > > ed...@fr... > > > > Doelestrjitte 8 > > 8911 DX Ljouwert > > +31 58 234 30 47 > > +31 62 094 34 28 (privé) > > > > skype: eduarddrenth > > https://github.com/eduarddrenth > > frisian.eu > > gpg: https://pgp.surfnet.nl/pks/lookup?search=eduarddrenth > > > > > > Op freed bin ik thús/wurkje ik minder > > > > > > > > ________________________________________ > Craig A. Berry > > "... getting out of a sonnet is much more > difficult than getting in." > Brad Leithauser > > > > _______________________________________________ > Exist-open mailing list > Exi...@li... > https://lists.sourceforge.net/lists/listinfo/exist-open > |
From: Joe W. <jo...@gm...> - 2021-07-02 20:14:10
|
Hi Craig, The problem with the snippet I provided was that it returned a string instead. I'm actually not sure how it worked for Christian. Instead, please try this one - copied from the PR where Juri and I have been working on a fix https://github.com/eXist-db/existdb-packageservice/pull/22: try { repo:get-resource($app, $name) => util:binary-to-string() => parse-xml() } catch * { document { <meta xmlns="http://exist-db.org/xquery/repo"> <description>Invalid repo descriptor for app {$app}</description> </meta> } } When the Dashboard Launcher tries to load an app's metadata and it fails this try-catch expression, the result in the Dashboard UI will be that the app does not appear in the listing of apps. Since this is a silent failure, I plan to add a log entry to exist.log indicating which app failed the check. Joe On Thu, Jul 1, 2021 at 7:29 PM Craig Berry <cra...@ma...> wrote: > > > > On Jul 1, 2021, at 4:58 PM, Joe Wicentowski <jo...@gm...> wrote: > > > > Hi Craig, > > > > Thanks for reporting your experience. We're tracking the Apple > installation experience issues at > https://github.com/eXist-db/exist/issues/3961. > > Thanks, I was reading that when your message came in. > > > > > Several people have reported experiencing an issue where Dashboard > doesn't open after upgrading eXist unless you clear your cookies. (For me, > clearing the JSESSIONID cookie worked; I do this in Chrome by navigating to > Dashboard, opening View > Developer > Developer Tools > Application > > Cookies > http://localhost:8080, selecting the JSESSIONID cookie, and > hitting the delete key or using right-click > Delete.) > > > > I don't think that's your issue, but I mentioned it just in case you do > see it (it has returned for some people who access multiple versions of > Dashboard in the same browser). > > > > In Slack, Christian Wittern reported an issue similar to yours. It > turned out to be caused by a custom package missing a repo.xml resource, a > condition that triggered a bug in the packageservice app. What allowed > Christian to overcome the problem was by modifying the > packages:get-package-meta() function in > /db/apps/packageservice/modules/packages.xqm module, lines 269-274, to read: > > > > try { > > let $meta := repo:get-resource($app, $name) > > return util:binary-to-string($meta) > > } catch * { > > util:log("warn", ("Could not get metadata for: ", $app, > $name)) > > } > > > > Christian reported that this fixed the issue, and in Juri said he plans > to submit a PR with this fix. > > I tried that and the exception changed to: > > <exception> > <path>/db/apps/packageservice/modules/local-apps.xql</path> > <message>exerr:ERROR cannot convert xs:string('<?xml > version="1.0" encoding="UTF-8"?> > <meta xmlns="http://exist-db.org/xquery/repo"> > <description>This package contains the HTML templating library > for eXist, which was previously part of the now deprecated > 'shared-resources'</description> > <author>eXist-db Project</author> > <website>https://github.com/eXist-db/templating</website> > ; > <status>stable</status> > <license>LGPL-2.1</license> > <copyright>true</copyright> > <type>library</type> > <deployed>2021-06-29T13:30:35.133-05:00</deployed> > </meta>') to a node set [at line 149, column 27, source: > /db/apps/packageservice/modules/packages.xqm] > In function: > (item()*, item()*, item()*) > [148:18:/db/apps/packageservice/modules/packages.xqm] > packages:scan-repo(function(*)) > [147:5:/db/apps/packageservice/modules/packages.xqm] > packages:installed-apps(xs:string) > [118:19:/db/apps/packageservice/modules/packages.xqm] > packages:get-local(xs:string) > [38:5:/db/apps/packageservice/modules/packages.xqm] > packages:get-local-applications() > [16:6:/db/apps/packageservice/modules/packages.xqm]</message> > </exception> > > As far as I can see, that doesn't tell me what, exactly, is using HTML > templating / shared-resources. Is there any guide related to migrating to > the new way of doing templating or is all of that supposed to be > API-compatible? > > > > > > Until a new version of packageservice is available, hopefully this > workaround will get you back up and running. You might also examine your > packages to look for a missing repo.xml file or possibly even other package > metadata files (e.g., expath-pkg.xml). > > I don't see any missing repo.xml or expath-pkg.xml files. > > > > > Joe > > > > On Thu, Jul 1, 2021 at 5:19 PM Craig Berry via Exist-open < > exi...@li...> wrote: > > > > > > > On Jun 26, 2021, at 1:04 PM, Juri Leino <ju...@ex...> > wrote: > > > > > > We are very happy to announce that eXist-db 5.3.0 has been released. > > > > > > It's been quite a while since the last release. A lot has been > happening behind the scenes, and we are happy to share the outcome with > you. 5.3.0 is a minor release, and should be 100% API compatible with > 5.0.0 as such. > > > > > > > Thanks for all the hard work. I have run into some issues getting this > working and I'm reporting here rather than GitHub as it's unclear to me > whether the problems are in eXist, one of the new or revised packages, or > pilot error of some sort. > > > > I installed the DMG image on macOS 11.4, keeping an existing data > directory that's been running fine with 5.2.0. I did have to ignore a > warning about not being able to verify the identity of the publisher, which > I assume has something to do with not paying Apple to countersign the code > signing cert or something. That was readily ignorable, if initially > alarming. I bumped up some memory settings during the first start-up but > otherwise accepted the defaults. > > > > When I open the Dashboard from the menu bar and logged in, I didn't get > any application icons. I clicked on Package Manager in the left side menu > and got a "loading of available packages failed" message. At this point > the browser console shows a 404 error at this URL: > > > > > http://localhost:8080/exist/apps/dashboard/bower_components/web-animations-js/web-animations-next-lite.min.js.map > > > > and a 400 error at this URL: > > > > http://localhost:8080/exist/apps/packageservice/packages/apps > > > > the details of which look like this: > > > > <?xml version="1.0" ?> > > <exception> > > <path>/db/apps/packageservice/modules/local-apps.xql</path> > > <message>err:FODC0002 Resource icon.png does not exist. [at line > 148, column 18, source: /db/apps/packageservice/modules/packages.xqm] > > In function: > > (item()*, item()*, item()*) > [148:18:/db/apps/packageservice/modules/packages.xqm] > > packages:scan-repo(function(*)) > [147:5:/db/apps/packageservice/modules/packages.xqm] > > packages:installed-apps(xs:string) > [118:19:/db/apps/packageservice/modules/packages.xqm] > > packages:get-local(xs:string) > [38:5:/db/apps/packageservice/modules/packages.xqm] > > packages:get-local-applications() > [16:6:/db/apps/packageservice/modules/packages.xqm]</message> > > </exception> > > > > There is an icon.png at /db/apps/packageservice/icon.png, so I'm not > sure what it's confused about. In /db/apps/packageservice/expath-pkg.xml, > it says the version I have is 1.3.9 -- is that the right one? > > > > eXide seems to be working fine. I tried running the following in eXide, > which had no effect: > > > > import module namespace repair="http://exist-db.org/xquery/repo/repair > " > > at "resource:org/exist/xquery/modules/expathrepo/repair.xql"; > > > > repair:clean-all(), > > repair:repair() > > > > Any other ideas? > > > > > > > > ________________________________________ > > Craig A. Berry > > > > "... getting out of a sonnet is much more > > difficult than getting in." > > Brad Leithauser > > > > > > > > _______________________________________________ > > Exist-open mailing list > > Exi...@li... > > https://lists.sourceforge.net/lists/listinfo/exist-open > > ________________________________________ > Craig A. Berry > > "... getting out of a sonnet is much more > difficult than getting in." > Brad Leithauser > > |
From: Craig B. <cra...@ma...> - 2021-07-02 20:10:49
|
Thanks for the tips. > On Jul 2, 2021, at 12:44 AM, Eduard Drenth <ed...@FR...> wrote: > > When upgrading from 5.2 to 5.3 I had to do several things: > > - remove <dependency package="http://exist-db.org/apps/shared"/> from expath-pkg.xml I don't appear to have had any of those. > - remove <fulltext default="none" attributes="false"/> from collection.xconf Why, and where is that documented? I have some large collections that will take a very long time to reindex, so I'd prefer to avoid it unless it's absolutely necessary. > - change templating to http://exist-db.org/xquery/html-templating Ah, good. I had a lot of cases of: import module namespace templates="http://exist-db.org/xquery/templates" ; that needed to be changed to: import module namespace templates="http://exist-db.org/xquery/html-templating"; That did get me past some problems. I could not find anything about it in the release notes. > - change my conf.xml to be based on https://github.com/eXist-db/exist/blob/eXist-5.3.0/exist-distribution/src/main/config/conf.xml What I have is identical to the one in the distribution except for the memory settings I'd bumped up. > - fix some more strict variable types I also noticed that function overloads no longer work if two functions with the same name have the same number of parameters, even if the data types of the parameters are different. Luckily I wasn't actually using one of the overloads I had so I was able to get rid of it. > Perhaps this helps, Eduard Some, yes. It still looks like there's a long slog ahead of me. Launcher and Package Manager are still completely wedged even though I've applied the fix here: <https://github.com/eXist-db/existdb-packageservice/pull/22> They still complain about "err:FODC0002 Resource icon.png does not exist." My own app crashes like so: URI: /exist/apps/shc/works/ STATUS: 500 MESSAGE: javax.servlet.ServletException: javax.servlet.ServletException: An error occurred while processing request to /exist/apps/shc/works/: An unknown error occurred: 'java.lang.Object org.exist.source.Source.getKey()' SERVLET: XQueryURLRewrite CAUSED BY: javax.servlet.ServletException: javax.servlet.ServletException: An error occurred while processing request to /exist/apps/shc/works/: An unknown error occurred: 'java.lang.Object org.exist.source.Source.getKey()' CAUSED BY: javax.servlet.ServletException: An error occurred while processing request to /exist/apps/shc/works/: An unknown error occurred: 'java.lang.Object org.exist.source.Source.getKey()' CAUSED BY: javax.servlet.ServletException: An unknown error occurred: 'java.lang.Object org.exist.source.Source.getKey()' CAUSED BY: java.lang.NoSuchMethodError: 'java.lang.Object org.exist.source.Source.getKey()' The eXist log shows that this happens in a method called doPost line 571, but I'm not sure that narrows it down much: 2021-07-02 14:44:42,405 [qtp1010347343-124] ERROR (EXistServlet.java [doPost]:571) - java.lang.NoSuchMethodError: 'java.lang.Object org.exist.source.Source.getKey()' I see that XQueryURLRewrite handles controller.xql (and now prefers controller.xq). Are there any mandatory changes to my controller.xql? > -----Original Message----- > From: Craig Berry via Exist-open <exi...@li...> > Reply-To: Craig Berry <cra...@ma...> > To: Joe Wicentowski <jo...@gm...> > Cc: exi...@li... ml <exi...@li...> > Subject: Re: [Exist-open] [ANN] Release of eXist 5.3.0 > Date: Thu, 01 Jul 2021 18:29:47 -0500 > > >> On Jul 1, 2021, at 4:58 PM, Joe Wicentowski < >> jo...@gm... >> > wrote: >> >> Hi Craig, >> >> Thanks for reporting your experience. We're tracking the Apple installation experience issues at >> https://github.com/eXist-db/exist/issues/3961 >> . > > Thanks, I was reading that when your message came in. > >> >> Several people have reported experiencing an issue where Dashboard doesn't open after upgrading eXist unless you clear your cookies. (For me, clearing the JSESSIONID cookie worked; I do this in Chrome by navigating to Dashboard, opening View > Developer > Developer Tools > Application > Cookies > >> http://localhost:8080 >> , selecting the JSESSIONID cookie, and hitting the delete key or using right-click > Delete.) >> >> I don't think that's your issue, but I mentioned it just in case you do see it (it has returned for some people who access multiple versions of Dashboard in the same browser). >> >> In Slack, Christian Wittern reported an issue similar to yours. It turned out to be caused by a custom package missing a repo.xml resource, a condition that triggered a bug in the packageservice app. What allowed Christian to overcome the problem was by modifying the packages:get-package-meta() function in /db/apps/packageservice/modules/packages.xqm module, lines 269-274, to read: >> >> try { >> let $meta := repo:get-resource($app, $name) >> return util:binary-to-string($meta) >> } catch * { >> util:log("warn", ("Could not get metadata for: ", $app, $name)) >> } >> >> Christian reported that this fixed the issue, and in Juri said he plans to submit a PR with this fix. > > I tried that and the exception changed to: > > <exception> > <path>/db/apps/packageservice/modules/local-apps.xql</path> > <message>exerr:ERROR cannot convert xs:string('<?xml version="1.0" encoding="UTF-8"?> > <meta xmlns=" > http://exist-db.org/xquery/repo"> > ; > <description>This package contains the HTML templating library for eXist, which was previously part of the now deprecated 'shared-resources'</description> > <author>eXist-db Project</author> > <website> > https://github.com/eXist-db/templating</website> > ; > <status>stable</status> > <license>LGPL-2.1</license> > <copyright>true</copyright> > <type>library</type> > <deployed>2021-06-29T13:30:35.133-05:00</deployed> > </meta>') to a node set [at line 149, column 27, source: /db/apps/packageservice/modules/packages.xqm] > In function: > (item()*, item()*, item()*) [148:18:/db/apps/packageservice/modules/packages.xqm] > packages:scan-repo(function(*)) [147:5:/db/apps/packageservice/modules/packages.xqm] > packages:installed-apps(xs:string) [118:19:/db/apps/packageservice/modules/packages.xqm] > packages:get-local(xs:string) [38:5:/db/apps/packageservice/modules/packages.xqm] > packages:get-local-applications() [16:6:/db/apps/packageservice/modules/packages.xqm]</message> > </exception> > > As far as I can see, that doesn't tell me what, exactly, is using HTML templating / shared-resources. Is there any guide related to migrating to the new way of doing templating or is all of that supposed to be API-compatible? > >> > >> Until a new version of packageservice is available, hopefully this workaround will get you back up and running. You might also examine your packages to look for a missing repo.xml file or possibly even other package metadata files (e.g., expath-pkg.xml). > > I don't see any missing repo.xml or expath-pkg.xml files. > >> >> Joe >> >> On Thu, Jul 1, 2021 at 5:19 PM Craig Berry via Exist-open < >> exi...@li... >> > wrote: >> >> >>> On Jun 26, 2021, at 1:04 PM, Juri Leino < >>> ju...@ex... >>> > wrote: >>> >>> We are very happy to announce that eXist-db 5.3.0 has been released. >>> >>> It's been quite a while since the last release. A lot has been happening behind the scenes, and we are happy to share the outcome with you. 5.3.0 is a minor release, and should be 100% API compatible with 5.0.0 as such. >>> >> >> Thanks for all the hard work. I have run into some issues getting this working and I'm reporting here rather than GitHub as it's unclear to me whether the problems are in eXist, one of the new or revised packages, or pilot error of some sort. >> >> I installed the DMG image on macOS 11.4, keeping an existing data directory that's been running fine with 5.2.0. I did have to ignore a warning about not being able to verify the identity of the publisher, which I assume has something to do with not paying Apple to countersign the code signing cert or something. That was readily ignorable, if initially alarming. I bumped up some memory settings during the first start-up but otherwise accepted the defaults. >> >> When I open the Dashboard from the menu bar and logged in, I didn't get any application icons. I clicked on Package Manager in the left side menu and got a "loading of available packages failed" message. At this point the browser console shows a 404 error at this URL: >> >> http://localhost:8080/exist/apps/dashboard/bower_components/web-animations-js/web-animations-next-lite.min.js.map >> >> >> and a 400 error at this URL: >> >> http://localhost:8080/exist/apps/packageservice/packages/apps >> >> >> the details of which look like this: >> >> <?xml version="1.0" ?> >> <exception> >> <path>/db/apps/packageservice/modules/local-apps.xql</path> >> <message>err:FODC0002 Resource icon.png does not exist. [at line 148, column 18, source: /db/apps/packageservice/modules/packages.xqm] >> In function: >> (item()*, item()*, item()*) [148:18:/db/apps/packageservice/modules/packages.xqm] >> packages:scan-repo(function(*)) [147:5:/db/apps/packageservice/modules/packages.xqm] >> packages:installed-apps(xs:string) [118:19:/db/apps/packageservice/modules/packages.xqm] >> packages:get-local(xs:string) [38:5:/db/apps/packageservice/modules/packages.xqm] >> packages:get-local-applications() [16:6:/db/apps/packageservice/modules/packages.xqm]</message> >> </exception> >> >> There is an icon.png at /db/apps/packageservice/icon.png, so I'm not sure what it's confused about. In /db/apps/packageservice/expath-pkg.xml, it says the version I have is 1.3.9 -- is that the right one? >> >> eXide seems to be working fine. I tried running the following in eXide, which had no effect: >> >> import module namespace repair=" >> http://exist-db.org/xquery/repo/repair >> " >> at "resource:org/exist/xquery/modules/expathrepo/repair.xql"; >> >> repair:clean-all(), >> repair:repair() >> >> Any other ideas? >> >> >> >> ________________________________________ >> Craig A. Berry >> >> "... getting out of a sonnet is much more >> difficult than getting in." >> Brad Leithauser >> >> >> >> _______________________________________________ >> Exist-open mailing list >> Exi...@li... >> >> https://lists.sourceforge.net/lists/listinfo/exist-open >> > > ________________________________________ > Craig A. Berry > > "... getting out of a sonnet is much more > difficult than getting in." > Brad Leithauser > > > > _______________________________________________ > Exist-open mailing list > Exi...@li... > > https://lists.sourceforge.net/lists/listinfo/exist-open > > -- > Eduard Drenth, Software Architekt > > ed...@fr... > > Doelestrjitte 8 > 8911 DX Ljouwert > +31 58 234 30 47 > +31 62 094 34 28 (privé) > > skype: eduarddrenth > https://github.com/eduarddrenth > frisian.eu > gpg: https://pgp.surfnet.nl/pks/lookup?search=eduarddrenth > > > Op freed bin ik thús/wurkje ik minder > > > ________________________________________ Craig A. Berry "... getting out of a sonnet is much more difficult than getting in." Brad Leithauser |