jackrabbit-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Stefan Guggisberg <stefan.guggisb...@gmail.com>
Subject Re: [JackRabbit 1.6] Import throws Exception when sharable node is used.
Date Thu, 19 Nov 2009 09:28:12 GMT
hi jervis,

as thomas pointed out, shareable nodes are a jcr 2.0 feature.
there was some preliminary jcr 2.0 support in jackrabbit 1.6
but it's not officially supported.

your problem is caused by missing sharable nodes support
in the importXML method.

for more information see 14.7 and 14.8 in the JCR 2.0 spec:
http://www.day.com/specs/jcr/2.0/14_Shareable_Nodes.html

jcr 2.0 (and shareable nodes) will be fully supported in the
upcoming jackrabbit 2.0 release. there's a beta that you can
use until the final 2.0 release becomes available.

cheers
stefan

On Thu, Nov 19, 2009 at 7:12 AM, Jervis Liu <jervisliu@gmail.com> wrote:
> Hi,
>
> I am using the sharable node feature in JackRabbit 1.6. I did an
> export using Session.exportSystemView() then I import back using
> Session.getWorkspace().importXML(). Everything work fine until I
> created some sharable nodes. I got exception from importXML() like
> below:
>
> Caused by: javax.jcr.nodetype.NoSuchNodeTypeException:
> {http://www.jcp.org/jcr/nt/1.0}share
>    at org.apache.jackrabbit.core.nodetype.NodeTypeRegistry.getEffectiveNodeType(NodeTypeRegistry.java:1024)
>    at org.apache.jackrabbit.core.nodetype.NodeTypeRegistry.getEffectiveNodeType(NodeTypeRegistry.java:471)
>    at org.apache.jackrabbit.core.nodetype.EffectiveNodeType.getApplicableChildNodeDef(EffectiveNodeType.java:682)
>    at org.apache.jackrabbit.core.nodetype.EffectiveNodeType.checkAddNodeConstraints(EffectiveNodeType.java:655)
>    at org.apache.jackrabbit.core.BatchedItemOperations.checkAddNode(BatchedItemOperations.java:732)
>    at org.apache.jackrabbit.core.xml.WorkspaceImporter.resolveUUIDConflict(WorkspaceImporter.java:150)
>    at org.apache.jackrabbit.core.xml.WorkspaceImporter.startNode(WorkspaceImporter.java:487)
>    at org.apache.jackrabbit.core.xml.SysViewImportHandler.processNode(SysViewImportHandler.java:86)
>    at org.apache.jackrabbit.core.xml.SysViewImportHandler.endElement(SysViewImportHandler.java:231)
>    at org.apache.jackrabbit.core.xml.ImportHandler.endElement(ImportHandler.java:183)
>    at org.apache.jackrabbit.commons.xml.DefaultContentHandler.endElement(DefaultContentHandler.java:83)
>    at org.apache.xerces.parsers.AbstractSAXParser.endElement(Unknown Source)
>    at org.apache.xerces.impl.XMLNSDocumentScannerImpl.scanEndElement(Unknown
> Source)
>    at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl$FragmentContentDispatcher.dispatch(Unknown
> Source)
>    at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown
> Source)
>    at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
>    at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
>    at org.apache.xerces.parsers.XMLParser.parse(Unknown Source)
>    at org.apache.xerces.parsers.AbstractSAXParser.parse(Unknown Source)
>    at org.apache.xerces.jaxp.SAXParserImpl$JAXPSAXParser.parse(Unknown Source)
>    at org.apache.xerces.jaxp.SAXParserImpl.parse(Unknown Source)
>    at org.apache.jackrabbit.commons.xml.ParsingContentHandler.parse(ParsingContentHandler.java:62)
>    at org.apache.jackrabbit.commons.AbstractWorkspace.importXML(AbstractWorkspace.java:54)
>    at org.drools.repository.RulesRepository.importRulesRepositoryFromStream(RulesRepository.java:979)
>    ... 20 more
>
> The code snippet I used to create sharable nodes looks like below roughly:
>
>        sharableNodeA().addMixin("mix:shareable");
>        .....
>
>        Session session = repo.getSession();
>        Workspace workspace = session.getWorkspace();
>        String path = "/pathA/pathB/sharableNodeB";
>        workspace.clone(workspace.getName(), sharableNodeA.getPath(),
> path, false);
>        ..............
>
> I wonder where the schema mix:shareable is defined? Obviously it is
> not defined by http://www.jcp.org/jcr/nt/1.0. Did I do anything wrong
> or it is a bug in JackRabbit 1.6?
>
> Thanks,
> Jervis Liu
>

Mime
View raw message