Hi Nick,
On Fri, Jun 19, 2009 at 3:06 PM, Nick Stolwijk<[email protected]> wrote:
> On our acceptance environment we are encountering strange errors with
> the webdavservice.
>
> java.lang.IllegalArgumentException: Absolute path
> '/part/of/the/path.xml' cannot be constructed if root path is
> configured as '/default/files/default.www'
> at
> nl.hippo.client.webdav.DocumentPathImpl.<init>(DocumentPathImpl.java:101)
> at
> nl.hippo.client.webdav.DocumentPathImpl.createAbsolutePath(DocumentPathImpl.java:171)
> at
> nl.hippo.client.webdav.DocumentPathImpl.createAbsolutePath(DocumentPathImpl.java:167)
> at
> nl.hippo.client.webdav.binding.content.DocumentFactory.bindSearch(DocumentFactory.java:174)
> at
> nl.hippo.client.webdav.binding.content.DocumentFactory.fetchCollection(DocumentFactory.java:117)
> at
> nl.hippo.client.webdav.service.WebdavServiceImpl.fetchCollection(WebdavServiceImpl.java:127)
> at nl.hippo.portal.cms.CMSServiceImpl.search(CMSServiceImpl.java:134)
> at nl.hippo.portal.cms.CMSServiceImpl.search(CMSServiceImpl.java:91)
>
> Unfortunately we cannot capture the messages between our portal and
> the repository. Also we could not reproduce it with a little test
> program (concurrent executing the same dasl for a few thousand times
> without caching) and the repository.
Any chance you can / want to share the program? ;-)
> When investigating the DocumentFactory[1] code we found the following snippet:
>
> 166 : wgrevink 5129
> 167 : wgrevink 5142 // This is a hack to set the 'path' attribute
> of each Document/DocumentMetadata object
> 168 : // in the DocumentCollection which is not set
> automatically by the unmarshalling.
> 169 : // TODO: Refactor the unmarshalling so that it does
> set
> the path attribute directly and then remove this loop.
> 170 : ArrayList documentsWithPath = new ArrayList();
> 171 : Iterator it = binding.getDocuments().iterator();
> 172 : while (it.hasNext()) {
> 173 : DocumentImpl docWithoutPath = (DocumentImpl)
> it.next();
> 174 : wgrevink 6475 DocumentPath docPath =
> config.getBasePath().createAbsolutePath(docWithoutPath.tmpPath);
>
> Could this be related to our problem? Is this a known problem?
I don't think that part is related. From the looks of it in the
DocumentPathImpl.java it tries to construct the full path, but the
created path doesn't match the configured rootPath in de properties.
This can happen if you submit a relative path as an absolute path. So
"/part/of/the/path.xml" should have been "part/of/the/path.xml"
without the slash at the beginning.
Regards,
Bart
>
> With regards,
>
> [1]
> http://svn.hippocms.org/viewvc/hippo-repository-java-adapter/tags/Release-WCL-2_11_00/hippo-repository-webdav-client/src/java/nl/hippo/client/webdav/binding/content/DocumentFactory.java?view=annotate
>
> Nick Stolwijk
> ~Java Developer~
>
> Iprofs BV.
> Claus Sluterweg 125
> 2012 WS Haarlem
> www.iprofs.nl
> ********************************************
> Hippocms-dev: Hippo CMS development public mailinglist
>
> Searchable archives can be found at:
> MarkMail: http://hippocms-dev.markmail.org
> Nabble: http://www.nabble.com/Hippo-CMS-f26633.html
>
>
--
Hippo B.V. - Amsterdam
Oosteinde 11, 1017 WT, Amsterdam, +31(0)20-5224466
Hippo USA Inc. - San Francisco
101 H Street, Suite Q, Petaluma CA, 94952-3329, +1 (707) 773-4646
-----------------------------------------------------------------
http://www.onehippo.com - [email protected]
-----------------------------------------------------------------
********************************************
Hippocms-dev: Hippo CMS development public mailinglist
Searchable archives can be found at:
MarkMail: http://hippocms-dev.markmail.org
Nabble: http://www.nabble.com/Hippo-CMS-f26633.html