You can subscribe to this list here.
2009 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
(22) |
Nov
(85) |
Dec
(20) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2010 |
Jan
(47) |
Feb
(127) |
Mar
(268) |
Apr
(78) |
May
(47) |
Jun
(38) |
Jul
(131) |
Aug
(221) |
Sep
(187) |
Oct
(54) |
Nov
(111) |
Dec
(84) |
2011 |
Jan
(152) |
Feb
(106) |
Mar
(94) |
Apr
(90) |
May
(53) |
Jun
(20) |
Jul
(24) |
Aug
(37) |
Sep
(32) |
Oct
(70) |
Nov
(22) |
Dec
(15) |
2012 |
Jan
(33) |
Feb
(110) |
Mar
(24) |
Apr
(1) |
May
(11) |
Jun
(8) |
Jul
(12) |
Aug
(37) |
Sep
(39) |
Oct
(81) |
Nov
(38) |
Dec
(50) |
2013 |
Jan
(23) |
Feb
(53) |
Mar
(23) |
Apr
(5) |
May
(19) |
Jun
(16) |
Jul
(16) |
Aug
(9) |
Sep
(21) |
Oct
(1) |
Nov
(2) |
Dec
(8) |
2014 |
Jan
(16) |
Feb
(6) |
Mar
(27) |
Apr
(1) |
May
(10) |
Jun
(1) |
Jul
(4) |
Aug
(10) |
Sep
(19) |
Oct
(22) |
Nov
(4) |
Dec
(6) |
2015 |
Jan
(3) |
Feb
(6) |
Mar
(9) |
Apr
|
May
(11) |
Jun
(23) |
Jul
(14) |
Aug
(10) |
Sep
(10) |
Oct
(9) |
Nov
(18) |
Dec
(4) |
2016 |
Jan
(5) |
Feb
(5) |
Mar
|
Apr
(2) |
May
(15) |
Jun
(2) |
Jul
(8) |
Aug
(2) |
Sep
(6) |
Oct
|
Nov
|
Dec
|
2017 |
Jan
(2) |
Feb
(12) |
Mar
(22) |
Apr
(6) |
May
|
Jun
|
Jul
(1) |
Aug
(1) |
Sep
(5) |
Oct
(2) |
Nov
|
Dec
|
2018 |
Jan
(2) |
Feb
|
Mar
|
Apr
|
May
|
Jun
(5) |
Jul
(3) |
Aug
|
Sep
(7) |
Oct
(19) |
Nov
|
Dec
|
2021 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
(1) |
Nov
|
Dec
|
2022 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
(3) |
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
From: Adam R. <ad...@ex...> - 2014-10-14 10:59:47
|
I am not sure how the eXist-2.2.RC2 tag was created in our Git repo, but it seems that however it was done was not correct. If I run `git describe` on `develop` then Git thinks that the last tag that was cut is eXist-2.2.RC1. Can anyone comment on this? I think we should discuss fixing this as it leads to problems with Git tools which try and work out the latest tag (release) of eXist. Thanks Adam. -- Adam Retter eXist Developer { United Kingdom } ad...@ex... irc://irc.freenode.net/existdb |
From: Jens Ø. P. <oe...@gm...> - 2014-10-14 08:10:33
|
Hi Loren, Sounds interesting: could you add a link to the installer – or a link to a publicly available installation? Jens On 14 Oct 2014 at 01:44:50, Loren Cahlander (lor...@gm...) wrote: Hello folks, I have been working on a updated doc app that fully utilizes the templating features of eXist. I would appreciate your feedback. Checkout: http://localhost:8080/exist/apps/doc2/getting-started.xml http://localhost:8080/exist/apps/doc2/templating.xml Thanks, Loren ------------------------------------------------------------------------------ Comprehensive Server Monitoring with Site24x7. Monitor 10 servers for $9/Month. Get alerted through email, SMS, voice calls or mobile push notifications. Take corrective actions from your mobile device. http://p.sf.net/sfu/Zoho_______________________________________________ Exist-development mailing list Exi...@li... https://lists.sourceforge.net/lists/listinfo/exist-development |
From: Loren C. <lor...@gm...> - 2014-10-13 23:44:30
|
Hello folks, I have been working on a updated doc app that fully utilizes the templating features of eXist. I would appreciate your feedback. Checkout: http://localhost:8080/exist/apps/doc2/getting-started.xml http://localhost:8080/exist/apps/doc2/templating.xml Thanks, Loren |
From: Loren C. <lor...@gm...> - 2014-10-10 20:48:41
|
forgot to add the xar. |
From: Loren C. <lor...@gm...> - 2014-10-10 20:40:54
|
Hello folks, I am working on a restructuring of the doc app that will be using DocBook 5 and fully utilizing the templating framework. Please take a look and supply comments and criticisms. I am going to explore making this into an interactive tutorial. Cheers, Loren |
From: Alister P. <gsp...@gm...> - 2014-10-09 22:55:41
|
Thanks Dmitriy. At first I added a generic “user” role - but realised that wasn’t much use because you wouldn’t be able to distinguish between types of users. Also, guest would be a “user” as well. I agree that it’s awkward because of the restart. On 10 Oct 2014, at 9:19 am, Dmitriy Shabanov <sha...@gm...> wrote: > Good work, you make things right. I personally don't like to put restriction by groups in web.xml, because to change that eXist should be restarted. Anyway, if that fit your needs then ok. > > On Fri, Oct 10, 2014 at 1:13 AM, Alister Pillow <gsp...@gm...> wrote: > Hi all, > Call me crazy but I’ve spent the last two (three?) days trying to understand the JAAS Login Service so that I can use the j_security_check Form login from a Javascript client. The goal is to let the system (jetty/eXist) handle the Authentication for RestXQ using the JSESSIONID in the Cookie. Now it works, and it would be good to get some feedback. This approach has been suggested a few times on the list - but never fully realised. > > The key point is that I can use a security restraint in web.xml rather than having to check the user in every restxq handler. The role-name is a Group. Here, my security-constraint applies to two url-patterns and allows users from two Groups. > > Here’s the relevant bit from web.xml: > <security-constraint> > <web-resource-collection> > <web-resource-name> > Pekoe Job Manager > </web-resource-name> > <url-pattern>/restxq/pekoe/*</url-pattern> > <url-pattern>/rest/db/pekoe/*</url-pattern> > <http-method>GET</http-method> > <http-method>POST</http-method> > </web-resource-collection> > <auth-constraint> > <description> > Let only registered users use this app > </description> > <role-name>dba</role-name> > <role-name>pekoe-staff</role-name> > </auth-constraint> > </security-constraint> > <security-role> > <role-name>pekoe-staff</role-name> > </security-role> > <login-config> > <auth-method>FORM</auth-method> > <realm-name>JAASLoginService</realm-name> > <form-login-config> > <form-login-page>/restxq/login</form-login-page> > <form-error-page>/restxq/login</form-error-page> > </form-login-config> > </login-config> > > > TL;DR > > As you can see, I have a security-constraint applied to /restxq/pekoe/* and only Users who have the “pekoe-staff” or “dba" role can view it. > > So when my AngularJS client requests /exist/restxq/pekoe/something, Jetty checks to see if the user is Authenticated and has the correct Role. > If not, there’s a 302 to /restxq/login, which causes a Login Form to be shown on the client. > The form is POSTed to /exist/j_security_check with credentials, and if successful, there’s a redirect to the original URL (/exist/restxq/pekoe/something). > The Cookie now contains a new JSESSIONID for an authenticated session. > > If the user isn’t in the correct Group, the response (to the original /exist/restxq/pekoe/something) is a 403 Forbidden with “!role”. > > (You can use the j_security_check without the security-constraint, but you have to check for a valid user in your restxq code, and send a response (e.g. a 401 Permission Denied) to get your Javascript client to perform the login.) > > To make this work, I have patched EXistDBLoginModule so that the user’s Groups are added to the Subject as JAASRoles. > > Changed the base class: > public class EXistDBLoginModule implements javax.security.auth.spi.LoginModule becomes > public class EXistDBLoginModule extends org.eclipse.jetty.plus.jaas.spi.AbstractLoginModule (which already implements the LoginModule) > > and then I have added the user’s Groups as Roles to the Subject in the “commit” method: > for (String group : userPrincipal.getGroups()){ > subject.getPrincipals().add(new JAASRole(group)); > } > > I used this tutorial: > https://wiki.eclipse.org/Jetty/Tutorial/JAAS#Writing_Your_Own_LoginModule > and this answer on StackOverflow: > http://stackoverflow.com/questions/9760518/what-does-the-error-logging-in-via-jaas-role-mean > > I’ve pushed the code here: > https://github.com/gspringtech/exist/tree/develop/src/org/exist/security/internal > > > -- > Dmitriy Shabanov |
From: Dmitriy S. <sha...@gm...> - 2014-10-09 22:49:51
|
Good work, you make things right. I personally don't like to put restriction by groups in web.xml, because to change that eXist should be restarted. Anyway, if that fit your needs then ok. On Fri, Oct 10, 2014 at 1:13 AM, Alister Pillow <gsp...@gm...> wrote: > Hi all, > Call me crazy but I’ve spent the last two (three?) days trying to > understand the JAAS Login Service so that I can use the j_security_check > Form login from a Javascript client. The goal is to let the system > (jetty/eXist) handle the Authentication for RestXQ using the JSESSIONID in > the Cookie. Now it works, and it would be good to get some feedback. This > approach has been suggested a few times on the list - but never fully > realised. > > The key point is that I can use a security restraint in web.xml rather > than having to check the user in every restxq handler. The role-name is a > Group. Here, my security-constraint applies to two url-patterns and allows > users from two Groups. > > Here’s the relevant bit from web.xml: > <security-constraint> > <web-resource-collection> > <web-resource-name> > Pekoe Job Manager > </web-resource-name> > <url-pattern>/restxq/pekoe/*</url-pattern> > <url-pattern>/rest/db/pekoe/*</url-pattern> > <http-method>GET</http-method> > <http-method>POST</http-method> > </web-resource-collection> > <auth-constraint> > <description> > Let only registered users use this app > </description> > <role-name>dba</role-name> > <role-name>pekoe-staff</role-name> > </auth-constraint> > </security-constraint> > <security-role> > <role-name>pekoe-staff</role-name> > </security-role> > <login-config> > <auth-method>FORM</auth-method> > <realm-name>JAASLoginService</realm-name> > <form-login-config> > <form-login-page>/restxq/login</form-login-page> > <form-error-page>/restxq/login</form-error-page> > </form-login-config> > </login-config> > > > TL;DR > > As you can see, I have a security-constraint applied to /restxq/pekoe/* > and only Users who have the “pekoe-staff” or “dba" role can view it. > > So when my AngularJS client requests /exist/restxq/pekoe/something, Jetty > checks to see if the user is Authenticated and has the correct Role. > If not, there’s a 302 to /restxq/login, which causes a Login Form to be > shown on the client. > The form is POSTed to /exist/j_security_check with credentials, and if > successful, there’s a redirect to the original URL > (/exist/restxq/pekoe/something). > The Cookie now contains a new JSESSIONID for an authenticated session. > > If the user isn’t in the correct Group, the response (to the original > /exist/restxq/pekoe/something) is a 403 Forbidden with “!role”. > > (You can use the j_security_check without the security-constraint, but you > have to check for a valid user in your restxq code, and send a response > (e.g. a 401 Permission Denied) to get your Javascript client to perform the > login.) > > To make this work, I have patched EXistDBLoginModule so that the user’s > Groups are added to the Subject as JAASRoles. > > Changed the base class: > public class EXistDBLoginModule implements > javax.security.auth.spi.LoginModule becomes > public class EXistDBLoginModule extends > org.eclipse.jetty.plus.jaas.spi.AbstractLoginModule (which already > implements the LoginModule) > > and then I have added the user’s Groups as Roles to the Subject in the > “commit” method: > for (String group : userPrincipal.getGroups()){ > subject.getPrincipals().add(new JAASRole(group)); > } > > I used this tutorial: > https://wiki.eclipse.org/Jetty/Tutorial/JAAS#Writing_Your_Own_LoginModule > and this answer on StackOverflow: > > http://stackoverflow.com/questions/9760518/what-does-the-error-logging-in-via-jaas-role-mean > > I’ve pushed the code here: > > https://github.com/gspringtech/exist/tree/develop/src/org/exist/security/internal > > -- Dmitriy Shabanov |
From: Adam R. <ad...@ex...> - 2014-10-09 22:27:35
|
Hi Allister, I have no idea how the j_security_check stuff works, it was added to eXist by someone else and never documented (perhaps Dmitriy?), so I have no idea if it even works. I can see you have put a lot of effort into this so I will try and read through your post tomorrow, catch up and make some sense of all of this... Speak soon. Adam. On 9 October 2014 22:13, Alister Pillow <gsp...@gm...> wrote: > Hi all, > Call me crazy but I’ve spent the last two (three?) days trying to understand the JAAS Login Service so that I can use the j_security_check Form login from a Javascript client. The goal is to let the system (jetty/eXist) handle the Authentication for RestXQ using the JSESSIONID in the Cookie. Now it works, and it would be good to get some feedback. This approach has been suggested a few times on the list - but never fully realised. > > The key point is that I can use a security restraint in web.xml rather than having to check the user in every restxq handler. The role-name is a Group. Here, my security-constraint applies to two url-patterns and allows users from two Groups. > > Here’s the relevant bit from web.xml: > <security-constraint> > <web-resource-collection> > <web-resource-name> > Pekoe Job Manager > </web-resource-name> > <url-pattern>/restxq/pekoe/*</url-pattern> > <url-pattern>/rest/db/pekoe/*</url-pattern> > <http-method>GET</http-method> > <http-method>POST</http-method> > </web-resource-collection> > <auth-constraint> > <description> > Let only registered users use this app > </description> > <role-name>dba</role-name> > <role-name>pekoe-staff</role-name> > </auth-constraint> > </security-constraint> > <security-role> > <role-name>pekoe-staff</role-name> > </security-role> > <login-config> > <auth-method>FORM</auth-method> > <realm-name>JAASLoginService</realm-name> > <form-login-config> > <form-login-page>/restxq/login</form-login-page> > <form-error-page>/restxq/login</form-error-page> > </form-login-config> > </login-config> > > > TL;DR > > As you can see, I have a security-constraint applied to /restxq/pekoe/* and only Users who have the “pekoe-staff” or “dba" role can view it. > > So when my AngularJS client requests /exist/restxq/pekoe/something, Jetty checks to see if the user is Authenticated and has the correct Role. > If not, there’s a 302 to /restxq/login, which causes a Login Form to be shown on the client. > The form is POSTed to /exist/j_security_check with credentials, and if successful, there’s a redirect to the original URL (/exist/restxq/pekoe/something). > The Cookie now contains a new JSESSIONID for an authenticated session. > > If the user isn’t in the correct Group, the response (to the original /exist/restxq/pekoe/something) is a 403 Forbidden with “!role”. > > (You can use the j_security_check without the security-constraint, but you have to check for a valid user in your restxq code, and send a response (e.g. a 401 Permission Denied) to get your Javascript client to perform the login.) > > To make this work, I have patched EXistDBLoginModule so that the user’s Groups are added to the Subject as JAASRoles. > > Changed the base class: > public class EXistDBLoginModule implements javax.security.auth.spi.LoginModule becomes > public class EXistDBLoginModule extends org.eclipse.jetty.plus.jaas.spi.AbstractLoginModule (which already implements the LoginModule) > > and then I have added the user’s Groups as Roles to the Subject in the “commit” method: > for (String group : userPrincipal.getGroups()){ > subject.getPrincipals().add(new JAASRole(group)); > } > > I used this tutorial: > https://wiki.eclipse.org/Jetty/Tutorial/JAAS#Writing_Your_Own_LoginModule > and this answer on StackOverflow: > http://stackoverflow.com/questions/9760518/what-does-the-error-logging-in-via-jaas-role-mean > > I’ve pushed the code here: > https://github.com/gspringtech/exist/tree/develop/src/org/exist/security/internal > > Regards, > Alister. > > > > > ------------------------------------------------------------------------------ > Meet PCI DSS 3.0 Compliance Requirements with EventLog Analyzer > Achieve PCI DSS 3.0 Compliant Status with Out-of-the-box PCI DSS Reports > Are you Audit-Ready for PCI DSS 3.0 Compliance? Download White paper > Comply to PCI DSS 3.0 Requirement 10 and 11.5 with EventLog Analyzer > http://pubads.g.doubleclick.net/gampad/clk?id=154622311&iu=/4140/ostg.clktrk > _______________________________________________ > Exist-development mailing list > Exi...@li... > https://lists.sourceforge.net/lists/listinfo/exist-development -- Adam Retter eXist Developer { United Kingdom } ad...@ex... irc://irc.freenode.net/existdb |
From: Alister P. <gsp...@gm...> - 2014-10-09 21:13:39
|
Hi all, Call me crazy but I’ve spent the last two (three?) days trying to understand the JAAS Login Service so that I can use the j_security_check Form login from a Javascript client. The goal is to let the system (jetty/eXist) handle the Authentication for RestXQ using the JSESSIONID in the Cookie. Now it works, and it would be good to get some feedback. This approach has been suggested a few times on the list - but never fully realised. The key point is that I can use a security restraint in web.xml rather than having to check the user in every restxq handler. The role-name is a Group. Here, my security-constraint applies to two url-patterns and allows users from two Groups. Here’s the relevant bit from web.xml: <security-constraint> <web-resource-collection> <web-resource-name> Pekoe Job Manager </web-resource-name> <url-pattern>/restxq/pekoe/*</url-pattern> <url-pattern>/rest/db/pekoe/*</url-pattern> <http-method>GET</http-method> <http-method>POST</http-method> </web-resource-collection> <auth-constraint> <description> Let only registered users use this app </description> <role-name>dba</role-name> <role-name>pekoe-staff</role-name> </auth-constraint> </security-constraint> <security-role> <role-name>pekoe-staff</role-name> </security-role> <login-config> <auth-method>FORM</auth-method> <realm-name>JAASLoginService</realm-name> <form-login-config> <form-login-page>/restxq/login</form-login-page> <form-error-page>/restxq/login</form-error-page> </form-login-config> </login-config> TL;DR As you can see, I have a security-constraint applied to /restxq/pekoe/* and only Users who have the “pekoe-staff” or “dba" role can view it. So when my AngularJS client requests /exist/restxq/pekoe/something, Jetty checks to see if the user is Authenticated and has the correct Role. If not, there’s a 302 to /restxq/login, which causes a Login Form to be shown on the client. The form is POSTed to /exist/j_security_check with credentials, and if successful, there’s a redirect to the original URL (/exist/restxq/pekoe/something). The Cookie now contains a new JSESSIONID for an authenticated session. If the user isn’t in the correct Group, the response (to the original /exist/restxq/pekoe/something) is a 403 Forbidden with “!role”. (You can use the j_security_check without the security-constraint, but you have to check for a valid user in your restxq code, and send a response (e.g. a 401 Permission Denied) to get your Javascript client to perform the login.) To make this work, I have patched EXistDBLoginModule so that the user’s Groups are added to the Subject as JAASRoles. Changed the base class: public class EXistDBLoginModule implements javax.security.auth.spi.LoginModule becomes public class EXistDBLoginModule extends org.eclipse.jetty.plus.jaas.spi.AbstractLoginModule (which already implements the LoginModule) and then I have added the user’s Groups as Roles to the Subject in the “commit” method: for (String group : userPrincipal.getGroups()){ subject.getPrincipals().add(new JAASRole(group)); } I used this tutorial: https://wiki.eclipse.org/Jetty/Tutorial/JAAS#Writing_Your_Own_LoginModule and this answer on StackOverflow: http://stackoverflow.com/questions/9760518/what-does-the-error-logging-in-via-jaas-role-mean I’ve pushed the code here: https://github.com/gspringtech/exist/tree/develop/src/org/exist/security/internal Regards, Alister. |
From: Alister P. <gsp...@gm...> - 2014-10-08 03:07:16
|
Hi, I’m trying to use the JAASLoginService to handle Authentication for RestXQ. I have a partial solution which used the default web.xml configuration of login-config but would like to make it work correctly using a security-constraint. (web.xml) <security-constraint> <web-resource-collection> <web-resource-name> Pekoe Job Manager </web-resource-name> <url-pattern>/*</url-pattern> <http-method>GET</http-method> <http-method>POST</http-method> </web-resource-collection> <auth-constraint> <description> Let only registered users use this app </description> <role-name>user</role-name> </auth-constraint> </security-constraint> <security-role> <role-name>user</role-name> </security-role> <login-config> <auth-method>FORM</auth-method> <realm-name>JAASLoginService</realm-name> <form-login-config> <form-login-page>/login</form-login-page> <form-error-page>/login</form-error-page> </form-login-config> </login-config> This has the desired effect - except for the ROLE... GET /exist/restxq/pekoe/user/1 -> 302 Location http://localhost:8080/exist/login POST /exist/j_security_check (with j_username and j_password) -> 302 Location: http://localhost:8080/exist/restxq/pekoe/user/1 GET /exist/restxq/pekoe/user/1 -> 403 !role I don’t know whether there are any roles set up - can’t find a @DeclareRole annotation or anything similar. Closest I can get to it is Dmitriy’s HttpAccount class which uses the JAASUserPrincipal. According to these docs: https://wiki.eclipse.org/Jetty/Tutorial/JAAS#Fine_Tuning_the_JAASLoginService a temporary role could be assigned here. Are there roles defined anywhere? I think this could be a very tidy way of handling Authentication for RESTXQ apps. My partial solution (which doesn’t use a security-constraint) has the RestXQ function sending a 401 and the client then POSTs directly to j_security_check. The resulting Cookie contains the JSESSIONID for an authenticated user. This is all happening with eXist behind Nginx using SSL. Thanks, Alister. |
From: Dannes W. <da...@ex...> - 2014-09-16 20:22:18
|
update: build with jdk8, run with jdk7 gives no junit errors..... On Tue, Sep 16, 2014 at 9:47 PM, Dannes Wessels <di...@ex...> wrote: > Hi, > > After upgrading the aspect-j libs I am able to compile and run eXist-db > (2.2) with Java8; The junit tests show a few issues though, I'd like to > share the results: > > SummaryTestsFailuresErrorsSkippedSuccess rateTime206450699.76%858.236 > > > All FailuresClassNameStatusTypeTime(s)AllXqueryTeststestAttributeNamespace > Failureexpected:<<c:C xmlns:[d="http://d" xmlns:c="http://c]" > d:d="ddd">ccc</c:C...> but was:<<c:C xmlns:[c="http://c" xmlns:d=" > http://d]" d:d="ddd">ccc</c:C...> > > junit.framework.ComparisonFailure: expected:<<c:C xmlns:[d="http://d" > xmlns:c="http://c]" d:d="ddd">ccc</c:C...> but was:<<c:C xmlns:[c=" > http://c" xmlns:d="http://d]" d:d="ddd">ccc</c:C...> > at org.exist.xquery.XQueryTest.testAttributeNamespace(XQueryTest.java:1865) > 0.089AllXqueryTeststestNoNamepaceDefinedForPrefix_1959010Failuredeclare > function local:copy($nodes as node()*) as node()* { for $n in $nodes return > if ($n instance of element()) then element {node-name($n)} > {(local:copy($n/@*), local:copy($n/node()))} else if ($n instance of > attribute()) then attribute {node-name($n)} {$n} else if ($n instance of > text()) then text {$n} else <Other/> }; let $c := <c:C xmlns:c="http://c" > xmlns:d="http://d" d:d="ddd">ccc</c:C> return local:copy($c) > expected:<<c:C xmlns:[d="http://d" xmlns:c="http://c]" > d:d="ddd">ccc</c:C...> but was:<<c:C xmlns:[c="http://c" xmlns:d=" > http://d]" d:d="ddd">ccc</c:C...> > > junit.framework.ComparisonFailure: declare function local:copy($nodes as > node()*) as node()* { for $n in $nodes return if ($n instance of element()) > then element {node-name($n)} {(local:copy($n/@*), local:copy($n/node()))} > else if ($n instance of attribute()) then attribute {node-name($n)} {$n} > else if ($n instance of text()) then text {$n} else <Other/> }; let $c := > <c:C xmlns:c="http://c" xmlns:d="http://d" d:d="ddd">ccc</c:C> return > local:copy($c) expected:<<c:C xmlns:[d="http://d" xmlns:c="http://c]" > d:d="ddd">ccc</c:C...> but was:<<c:C xmlns:[c="http://c" xmlns:d=" > http://d]" d:d="ddd">ccc</c:C...> > at > org.exist.xquery.XQueryTest.testNoNamepaceDefinedForPrefix_1959010(XQueryTest.java:3339) > 0.084IdFunctionTestdifferingRealAndEffectiveUsersFailureexpected:<real> > but was:<null> > > junit.framework.AssertionFailedError: expected:<real> but was:<null> > at > org.exist.xquery.functions.securitymanager.IdFunctionTest.differingRealAndEffectiveUsers(IdFunctionTest.java:95) > 1.184IdFunctionTestsameRealAndEffectiveUsersFailureexpected:<user1> but > was:<null> > > junit.framework.AssertionFailedError: expected:<user1> but was:<null> > at > org.exist.xquery.functions.securitymanager.IdFunctionTest.sameRealAndEffectiveUsers(IdFunctionTest.java:141) > 0.014UtilTestsrunXMLBasedTestsFailureTest '7' in file 'util.xml' failed. > > junit.framework.AssertionFailedError: Test '7' in file 'util.xml' failed. > > at xquery.TestRunner.runXMLBasedTests(TestRunner.java:101) > 1.132 > > > the 1st and 2nd are identical, about attribute ordering > 3 and 4 are security manager issues (where the aspectj-side is relevant) > 5 is..... to be investigated > > cheers > > Dannes > > eXist-db Native XML Database > http://www.exist-db.org > > > > -- eXist-db Native XML Database - http://exist-db.org Join us on linked-in: http://www.linkedin.com/groups?gid=35624 |
From: Dannes W. <di...@ex...> - 2014-09-16 19:47:47
|
Hi, After upgrading the aspect-j libs I am able to compile and run eXist-db (2.2) with Java8; The junit tests show a few issues though, I'd like to share the results: Summary Tests Failures Errors Skipped Success rate Time 2064 5 0 6 99.76% 858.236 All Failures Class Name Status Type Time(s) AllXqueryTests testAttributeNamespace Failure expected:<<c:C xmlns:[d="http://d" xmlns:c="http://c]" d:d="ddd">ccc</c:C...> but was:<<c:C xmlns:[c="http://c" xmlns:d="http://d]" d:d="ddd">ccc</c:C...> junit.framework.ComparisonFailure: expected:<<c:C xmlns:[d="http://d" xmlns:c="http://c]" d:d="ddd">ccc</c:C...> but was:<<c:C xmlns:[c="http://c" xmlns:d="http://d]" d:d="ddd">ccc</c:C...> at org.exist.xquery.XQueryTest.testAttributeNamespace(XQueryTest.java:1865) 0.089 AllXqueryTests testNoNamepaceDefinedForPrefix_1959010 Failure declare function local:copy($nodes as node()*) as node()* { for $n in $nodes return if ($n instance of element()) then element {node-name($n)} {(local:copy($n/@*), local:copy($n/node()))} else if ($n instance of attribute()) then attribute {node-name($n)} {$n} else if ($n instance of text()) then text {$n} else <Other/> }; let $c := <c:C xmlns:c="http://c" xmlns:d="http://d" d:d="ddd">ccc</c:C> return local:copy($c) expected:<<c:C xmlns:[d="http://d" xmlns:c="http://c]" d:d="ddd">ccc</c:C...> but was:<<c:C xmlns:[c="http://c" xmlns:d="http://d]" d:d="ddd">ccc</c:C...> junit.framework.ComparisonFailure: declare function local:copy($nodes as node()*) as node()* { for $n in $nodes return if ($n instance of element()) then element {node-name($n)} {(local:copy($n/@*), local:copy($n/node()))} else if ($n instance of attribute()) then attribute {node-name($n)} {$n} else if ($n instance of text()) then text {$n} else <Other/> }; let $c := <c:C xmlns:c="http://c" xmlns:d="http://d" d:d="ddd">ccc</c:C> return local:copy($c) expected:<<c:C xmlns:[d="http://d" xmlns:c="http://c]" d:d="ddd">ccc</c:C...> but was:<<c:C xmlns:[c="http://c" xmlns:d="http://d]" d:d="ddd">ccc</c:C...> at org.exist.xquery.XQueryTest.testNoNamepaceDefinedForPrefix_1959010(XQueryTest.java:3339) 0.084 IdFunctionTest differingRealAndEffectiveUsers Failure expected:<real> but was:<null> junit.framework.AssertionFailedError: expected:<real> but was:<null> at org.exist.xquery.functions.securitymanager.IdFunctionTest.differingRealAndEffectiveUsers(IdFunctionTest.java:95) 1.184 IdFunctionTest sameRealAndEffectiveUsers Failure expected:<user1> but was:<null> junit.framework.AssertionFailedError: expected:<user1> but was:<null> at org.exist.xquery.functions.securitymanager.IdFunctionTest.sameRealAndEffectiveUsers(IdFunctionTest.java:141) 0.014 UtilTests runXMLBasedTests Failure Test '7' in file 'util.xml' failed. junit.framework.AssertionFailedError: Test '7' in file 'util.xml' failed. at xquery.TestRunner.runXMLBasedTests(TestRunner.java:101) 1.132 the 1st and 2nd are identical, about attribute ordering 3 and 4 are security manager issues (where the aspectj-side is relevant) 5 is..... to be investigated cheers Dannes eXist-db Native XML Database http://www.exist-db.org |
From: Adam R. <ad...@ex...> - 2014-09-12 07:06:45
|
eXist has many of the features that you mention already built in. There are also some commercial CMS built atop eXist-db, such as Jordan's EasyDita. Recently ibalso saw a bridge for Plone announced on this mailing list. On 11 Sep 2014 21:17, "Philipp Burger" <pb...@hd...> wrote: > Hello, > I study print and media technology in the 6th semester with focus on > digital publishing at the Stuttgart Media University. > As a part of my Bachelor thesis following question popped up: > Are there existing eXist db functions or third-party solutions for typical > CMS functionalities like rights and role management, versioning, document > check in and check out,… for XML files? > > Thanks for your help > With best regards > > Philipp Burger > > > Hallo, > ich studiere Druck- und Medientechnologie im 6. Semester mit dem > Schwerpunkt Digital Publishing an der Hochschule der Medien in Stuttgart. > Im Rahmen meiner Bachelor-Arbeit ist folgende Frage aufgetaucht: > Gibt es für eXist db bestehende Funktionen oder Lösungen von > Drittanbietern um typische CMS Funktionalitäten wie > Rechte-Rollenverwaltung/Versionierung/Dokument einchecken/auschecken im > Mehrbenutzerbetrieb, Locking usw. für XML-Dateien zu realisieren? > > vielen Dank schon mal im Voraus > > gruß > Philipp Burger > > > > ------------------------------------------------------------------------------ > Want excitement? > Manually upgrade your production database. > When you want reliability, choose Perforce > Perforce version control. Predictably reliable. > > http://pubads.g.doubleclick.net/gampad/clk?id=157508191&iu=/4140/ostg.clktrk > _______________________________________________ > Exist-development mailing list > Exi...@li... > https://lists.sourceforge.net/lists/listinfo/exist-development > |
From: Philipp B. <pb...@hd...> - 2014-09-11 20:17:35
|
Hello, I study print and media technology in the 6th semester with focus on digital publishing at the Stuttgart Media University. As a part of my Bachelor thesis following question popped up: Are there existing eXist db functions or third-party solutions for typical CMS functionalities like rights and role management, versioning, document check in and check out,… for XML files? Thanks for your help With best regards Philipp Burger Hallo, ich studiere Druck- und Medientechnologie im 6. Semester mit dem Schwerpunkt Digital Publishing an der Hochschule der Medien in Stuttgart. Im Rahmen meiner Bachelor-Arbeit ist folgende Frage aufgetaucht: Gibt es für eXist db bestehende Funktionen oder Lösungen von Drittanbietern um typische CMS Funktionalitäten wie Rechte-Rollenverwaltung/Versionierung/Dokument einchecken/auschecken im Mehrbenutzerbetrieb, Locking usw. für XML-Dateien zu realisieren? vielen Dank schon mal im Voraus gruß Philipp Burger |
From: Loren C. <lor...@gm...> - 2014-09-10 00:08:42
|
Hello folks, I am working on my next presentation. I am working on adding dynamic menuing through the templating. Can you take a look at what I have done and make suggestions? https://github.com/lcahlander/menu-demo Thanks, Loren |
From: Dannes W. <da...@ex...> - 2014-09-09 08:29:38
|
All, at this moment the java service wrapper does not work anymore, it is caused by a recent jar upgrade... that has been introduced as a work around to get things working in tomcat again :-( https://github.com/eXist-db/exist/commit/48950535d9a42b5af4e367fbb95e25d1c838ab19 the trace: INFO | jvm 1 | 2014/09/09 10:12:05 | 09 Sep 2014 10:12:05,936 [WrapperListener_start_runner] WARN (WebAppContext.java [doStart]:501) - Failed startup of context eXist-db Open Source Native XML Database INFO | jvm 1 | 2014/09/09 10:12:05 | javax.servlet.ServletException: de.betterform.xml.config.XFormsConfigException: java.io.FileNotFoundException: /existdb/eXist-db/tools/WEB-INF/betterform-config.xml (No such file or directory) INFO | jvm 1 | 2014/09/09 10:12:05 | at de.betterform.agent.web.filter.XFormsFilter.init(XFormsFilter.java:74) .... INFO | jvm 1 | 2014/09/09 10:12:05 | at org.exist.wrapper.Main.start(Main.java:95) INFO | jvm 1 | 2014/09/09 10:12:05 | at org.tanukisoftware.wrapper.WrapperManager$11.run(WrapperManager.java:4117) INFO | jvm 1 | 2014/09/09 10:12:05 | Caused by: de.betterform.xml.config.XFormsConfigException: java.io.FileNotFoundException: /existdb/eXist-db/tools/WEB-INF/betterform-config.xml (No such file or directory) INFO | jvm 1 | 2014/09/09 10:12:05 | at de.betterform.xml.config.Config.getInstance(Config.java:169) INFO | jvm 1 | 2014/09/09 10:12:05 | at de.betterform.agent.web.WebFactory.initConfiguration(WebFactory.java:152) INFO | jvm 1 | 2014/09/09 10:12:05 | at de.betterform.agent.web.filter.XFormsFilter.init(XFormsFilter.java:66) INFO | jvm 1 | 2014/09/09 10:12:05 | ... 20 more INFO | jvm 1 | 2014/09/09 10:12:05 | Caused by: java.io.FileNotFoundException: /existdb/eXist-db/tools/WEB-INF/betterform-config.xml (No such file or directory) INFO | jvm 1 | 2014/09/09 10:12:05 | at java.io.FileInputStream.open(Native Method) INFO | jvm 1 | 2014/09/09 10:12:05 | at java.io.FileInputStream.<init>(FileInputStream.java:146) INFO | jvm 1 | 2014/09/09 10:12:05 | at java.io.FileInputStream.<init>(FileInputStream.java:101) INFO | jvm 1 | 2014/09/09 10:12:05 | at de.betterform.xml.config.Config.getInstance(Config.java:166) INFO | jvm 1 | 2014/09/09 10:12:05 | ... 22 more cheers Dannes -- eXist-db Native XML Database - http://exist-db.org Join us on linked-in: http://www.linkedin.com/groups?gid=35624 |
From: Michael W. <wes...@ja...> - 2014-09-04 05:00:12
|
XML Prague was very popular. I think I watched a couple of the 2012 Prague videos a couple of times, thinking they were for 2013 at the time. -- Michael Westbay Writer/System Administrator http://www.japanesebaseball.com/ |
From: Loren C. <lor...@gm...> - 2014-09-02 22:57:00
|
Here is the analytics report from YouTube for the last 365 days. It shows the videos that are being viewed the most. Video Views Estimated minutes watched Average view duration XML Prague 2012 - eXist-db pre-conference - Wolfgang Meier - Hands-on demos of eXist-db 197 (15%) 656 (15%) 3:19 Introduction to eXist-db HTML Templating Module 128 (9.7%) 518 (12%) 4:02 Templating in eXist 116 (8.8%) 748 (17%) 6:26 XML Prague 2012 - eXist-db pre-conference - Alain Couthures - XSLTForms, eXist-db and XForms 102 (7.7%) 201 (4.5%) 1:58 XML Prague 2012 - eXist-db pre-conference - Adam Retter - Security in eXist-db 89 (6.7%) 256 (5.7%) 2:52 Reliable Document Replication 67 (5.1%) 201 (4.5%) 3:00 Correctness Identity and Precision - Security Concerns in eXist-db 63 (4.8%) 478 (11%) 7:35 XML Prague 2012 - eXist-db pre-conference - Erik Siegel - Software Management 53 (4.0%) 202 (4.5%) 3:48 Introducing a new eXist-db range index for superior performance 50 (3.8%) 301 (6.7%) 6:00 Announcing eXist 2.2RC1 47 (3.6%) 98 (2.2%) 2:05 XML Prague 2012 - eXist-db pre-conference - Joern Turner - betterForm editor with eXist-db 46 (3.5%) 104 (2.3%) 2:15 XML Prague 2012 - eXist-db pre-conference - David Fichtmueller - Using eXist To Rescue Research Data 45 (3.4%) 63 (1.4%) 1:24 JSON and eXist 2.0 44 (3.3%) 121 (2.7%) 2:44 Adding Basic Authentication in eXist-db Apps 43 (3.3%) 132 (2.9%) 3:03 XML Prague 2012 - eXist-db pre-conference - Thomas White - Project xStatic 42 (3.2%) 49 (1.1%) 1:10 2007 Dragon Boat Races, Discovery Bay, Hong Kong 32 (2.4%) 12 (0.3%) 0:23 Harvesting ((standardised) metadata) for discoverability and exchange of resources 29 (2.2%) 60 (1.3%) 2:03 Some EXPath modules within eXist-db 29 (2.2%) 71 (1.6%) 2:26 TEI graphing 25 (1.9%) 107 (2.4%) 4:16 XML Prague 2012 - eXist-db pre-conference - Stefan Vasile - eXist development with oXygen 19 (1.4%) 35 (0.8%) 1:50 Southpoint Village Polar Bear Plunge 2013 Durham NC 19 (1.4%) 17 (0.4%) 0:52 XML Prague 2012 - eXist pre-conference - intro 15 (1.1%) 27 (0.6%) 1:48 Customizing eXide to fit your workflow 13 (1.0%) 35 (0.8%) 2:41 A Leaf Hanging by a Spider Thread 10 (0.8%) 4 (0.1%) 0:26 rHo-cLKBykM 1 (0.1%) 0 (0.0%) 0:01 1–25 of 25 Loren Cahlander Principal GreatLinkUp, LLC cah...@gr... lor...@gm... +1-651-747-6910 |
From: Dmitriy S. <sha...@gm...> - 2014-09-02 09:30:14
|
On Tue, Sep 2, 2014 at 5:35 AM, Alister Pillow <gsp...@gm...> wrote: > Thanks for your thoughts - I’ll stick with a wrapper element if it makes > no difference to the memory situation. I guess my concern is that there are > no explicit safeguards (in my code) for memory usage - and I don’t know > enough Java to know what will happen if someone tries to download a full > folder of mail messages. > You may limit this with counter to be not better than something. > The other issue now concerning me is that this is very slow. Maybe that’s > normal for mail. > It takes about 50 seconds to get the message list using a search on > Subject, and then another 40 to retrieve the 5 messages selected - and > that’s using my own ISP with only about 350 messages in the Inbox. > Hard to say, what protocol do you use for communication? -- Dmitriy Shabanov |
From: Alister P. <gsp...@gm...> - 2014-09-02 01:33:24
|
Thanks for your thoughts - I’ll stick with a wrapper element if it makes no difference to the memory situation. I guess my concern is that there are no explicit safeguards (in my code) for memory usage - and I don’t know enough Java to know what will happen if someone tries to download a full folder of mail messages. The other issue now concerning me is that this is very slow. Maybe that’s normal for mail. It takes about 50 seconds to get the message list using a search on Subject, and then another 40 to retrieve the 5 messages selected - and that’s using my own ISP with only about 350 messages in the Inbox. I think I’ll publish this now and wait for feedback. On 2 Sep 2014, at 12:49 am, Dannes Wessels <da...@ex...> wrote: > Hi, > > Also agree, but..... in the eXist-db code it is unhandy; for this you build in memory a structure with the MemoryBuilder, next step is... get the child elements from this builder :-) > > And probably in the xquery code you'll be bundling it again :-) > > greets > > Dannes > > > > On Mon, Sep 1, 2014 at 4:30 PM, Adam Retter <ad...@ex...> wrote: > Personal preference. > > However I agree with Dmitriy that a sequence is nicer here. > > > > > > -- > eXist-db Native XML Database - http://exist-db.org > Join us on linked-in: http://www.linkedin.com/groups?gid=35624 > ------------------------------------------------------------------------------ > Slashdot TV. > Video for Nerds. Stuff that matters. > http://tv.slashdot.org/_______________________________________________ > Exist-development mailing list > Exi...@li... > https://lists.sourceforge.net/lists/listinfo/exist-development |
From: Adam R. <ad...@ex...> - 2014-09-01 15:41:11
|
Perhaps one option would be to switch namespace processing off in Neko for this and then later add the namespaces back in using a custom filter (if that is desirable). http://nekohtml.sourceforge.net/settings.html#namespaces http://nekohtml.sourceforge.net/settings.html#filters On 1 September 2014 06:36, Alister Pillow <gsp...@gm...> wrote: > The error in more detail… Only happening when storing the document, not when parsing. > > 2014-08-31 17:19:02,585 [eXistThread-31] DEBUG (ModuleUtils.java [htmlToXHtml]:251) - Converting HTML to XML using NekoHTML parser for: alternative > 2014-08-31 17:19:03,724 [eXistThread-31] DEBUG (TransactionManager.java [execute]:159) - Starting new transaction: 5 > 2014-08-31 17:19:03,730 [eXistThread-31] DEBUG (Collection.java [validateXMLResourceInternal]:1631) - Scanning document /db/test/message-6.xml > 2014-08-31 17:19:03,731 [eXistThread-31] DEBUG (GrammarPool.java [retrieveInitialGrammarSet]:81) - Retrieve initial grammarset (http://www.w3.org/TR/REC-xml). > 2014-08-31 17:19:03,731 [eXistThread-31] DEBUG (GrammarPool.java [retrieveInitialGrammarSet]:85) - Found 0 grammars. > 2014-08-31 17:19:03,740 [eXistThread-31] DEBUG (Indexer.java [fatalError]:419) - fatal error at (58,2064) : The value of the attribute "prefix="xmlns",localpart="o",rawname="xmlns:o"" is invalid. Prefixed namespace bindings may not be empty. > 2014-08-31 17:19:03,740 [eXistThread-31] DEBUG (GrammarPool.java [retrieveInitialGrammarSet]:81) - Retrieve initial grammarset (http://www.w3.org/TR/REC-xml). > 2014-08-31 17:19:03,740 [eXistThread-31] DEBUG (GrammarPool.java [retrieveInitialGrammarSet]:85) - Found 0 grammars. > 2014-08-31 17:19:03,741 [eXistThread-31] ERROR (XMLDBStore.java [evalWithCollection]:220) - The XML parser reported a problem: fatal error at (58,2064) : The value of the attribute "prefix="xmlns",localpart="o",rawname="xmlns:o"" is invalid. Prefixed namespace bindings may not be empty. > org.xmldb.api.base.XMLDBException: The XML parser reported a problem: fatal error at (58,2064) : The value of the attribute "prefix="xmlns",localpart="o",rawname="xmlns:o"" is invalid. Prefixed namespace bindings may not be empty. > at org.exist.xmldb.LocalCollection.storeXMLResource(LocalCollection.java:893) > at org.exist.xmldb.LocalCollection.storeResource(LocalCollection.java:766) > at org.exist.xmldb.LocalCollection.storeResource(LocalCollection.java:754) > > I’ve tried adding a RemoveElement filter to the NekoHTML parser - but can’t make that work - no content is returned. The documentation seems to suggest that I have to add an acceptElement for every element I want to keep - which means all of HTML!!! > > Now I’m trying a FilterInputStream approach - but that seems such a blunt instrument - any other suggestions on how to remove <o:p></o:p> from the result of htmlTXHtml? > > This is how I modified ModuleUtils.htmlToXHtml > > LOG.debug("Converting HTML to XML using NekoHTML parser for: " + url); > reader = (XMLReader) Class.forName("org.cyberneko.html.parsers.SAXParser").newInstance(); > > ElementRemover remover = new ElementRemover(); > remover.removeElement("o:p"); > // setup filter chain > XMLDocumentFilter[] filters = { > remover > }; > > reader.setProperty("http://cyberneko.org/html/properties/names/elems","match"); > reader.setProperty("http://cyberneko.org/html/properties/names/attrs","no-change"); > reader.setProperty("http://cyberneko.org/html/properties/filters", filters); // ADDED FILTER here > > > On 31 Aug 2014, at 6:11 pm, Alister Pillow <gsp...@gm...> wrote: > >> Hi, >> Trying to finish off the mail:get-messages function. The error appears when trying to store an email as xml in the /db. >> >> I’ve hit a nasty little bug - nothing to do with eXist - and (surprise) related to mail from Microsoft Outlook - via Apple Mail. I now suspect that Apple Mail is the culprit. >> >> I forwarded an email from my Inbox to another account and then retrieved it using mail:get-messages. >> The original html section is full of <o:p></o:p> tags. These are end-of-paragraph markers inserted by MS Word when creating HTML. >> >> In the original email, the prefix and namespace is declared - but in the forwarded message, it is missing - consequently I get an error from SAXParser when trying to store this content in the DB. >> >> Is there some way to tell the parser to skip these (empty) elements? Or will I have to write a filter for the text before parsing it? >> >> I’m using Wolfgang’s suggestion: >> DocumentImpl html = ModuleUtils.htmlToXHtml(context, "alternative", new StreamSource(part.getInputStream()), null, null); >> ElementImpl rootElem = (ElementImpl)html.getDocumentElement(); >> >> (Otherwise, mail:get-messages is working quite nicely.) >> >> Thanks, >> Alister. > > > ------------------------------------------------------------------------------ > Slashdot TV. > Video for Nerds. Stuff that matters. > http://tv.slashdot.org/ > _______________________________________________ > Exist-development mailing list > Exi...@li... > https://lists.sourceforge.net/lists/listinfo/exist-development -- Adam Retter eXist Developer { United Kingdom } ad...@ex... irc://irc.freenode.net/existdb |
From: Dannes W. <da...@ex...> - 2014-09-01 15:20:03
|
Hi, Also agree, but..... in the eXist-db code it is unhandy; for this you build in memory a structure with the MemoryBuilder, next step is... get the child elements from this builder :-) And probably in the xquery code you'll be bundling it again :-) greets Dannes On Mon, Sep 1, 2014 at 4:30 PM, Adam Retter <ad...@ex...> wrote: > Personal preference. > > However I agree with Dmitriy that a sequence is nicer here. > > > -- eXist-db Native XML Database - http://exist-db.org Join us on linked-in: http://www.linkedin.com/groups?gid=35624 |
From: Adam R. <ad...@ex...> - 2014-09-01 14:31:05
|
Personal preference. However I agree with Dmitriy that a sequence is nicer here. On 1 September 2014 14:22, Dmitriy Shabanov <sha...@gm...> wrote: > Hello, > > > On Mon, Sep 1, 2014 at 2:22 PM, Alister Pillow <gsp...@gm...> > wrote: >> >> A more general dev question. >> >> mail:get-messages($inbox, $message-numbers) >> >> Should this return a single wrapper element >> <messages> >> <message>…</message> >> <message>…</message> >> … >> </messages> >> >> or a sequence >> ( >> <message>…</message>, >> <message>…</message>, >> ... >> ) >> >> Does it make any difference? I’m wondering how best to deal with large >> messages. > > > The difference is not so big, but I prefer sequence of elements. It always > simpler to wrap it vs extract. > > -- > Dmitriy Shabanov > > ------------------------------------------------------------------------------ > Slashdot TV. > Video for Nerds. Stuff that matters. > http://tv.slashdot.org/ > _______________________________________________ > Exist-development mailing list > Exi...@li... > https://lists.sourceforge.net/lists/listinfo/exist-development > -- Adam Retter eXist Developer { United Kingdom } ad...@ex... irc://irc.freenode.net/existdb |
From: Dmitriy S. <sha...@gm...> - 2014-09-01 13:22:32
|
Hello, On Mon, Sep 1, 2014 at 2:22 PM, Alister Pillow <gsp...@gm...> wrote: > A more general dev question. > > mail:get-messages($inbox, $message-numbers) > > Should this return a single wrapper element > <messages> > <message>…</message> > <message>…</message> > … > </messages> > > or a sequence > ( > <message>…</message>, > <message>…</message>, > ... > ) > > Does it make any difference? I’m wondering how best to deal with large > messages. > The difference is not so big, but I prefer sequence of elements. It always simpler to wrap it vs extract. -- Dmitriy Shabanov |
From: Alister P. <gsp...@gm...> - 2014-09-01 10:20:33
|
Hi, A more general dev question. mail:get-messages($inbox, $message-numbers) Should this return a single wrapper element <messages> <message>…</message> <message>…</message> … </messages> or a sequence ( <message>…</message>, <message>…</message>, ... ) Does it make any difference? I’m wondering how best to deal with large messages. Thanks, Alister. |