jackrabbit-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Jervis Liu <jervis...@gmail.com>
Subject [JackRabbit 1.6] Import throws Exception when sharable node is used.
Date Thu, 19 Nov 2009 06:12:57 GMT
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