[jira] Commented: (JCR-1755) ClassCastException when registering custom node by XML file
[ https://issues.apache.org/jira/browse/JCR-1755?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12634115#action_12634115 ] Jakub Wozniakowski commented on JCR-1755: - Extremely quick reaction and fix. Thank you for that. > ClassCastException when registering custom node by XML file > --- > > Key: JCR-1755 > URL: https://issues.apache.org/jira/browse/JCR-1755 > Project: Jackrabbit > Issue Type: Bug > Components: jackrabbit-core >Affects Versions: core 1.4.5 > Environment: Spring 2.5, Spring Modules 0.9, Firefox 3, Tomcat 6, > Ubuntu 8.10, MySql 5 > Repository is deployed as a shared J2EE resource (JNDI). >Reporter: Jakub Wozniakowski >Assignee: Jukka Zitting >Priority: Critical > Fix For: core 1.4.6 > > > When trying to register node type from XML file using following code: > JackrabbitNodeTypeManager nodeTypeManager = > (JackrabbitNodeTypeManager)workspace.getNodeTypeManager(); > for(Resource resource : nodeDefinitions){ > System.out.println("** registering node:"+resource); > > nodeTypeManager.registerNodeTypes(resource.getInputStream(), > JackrabbitNodeTypeManager.TEXT_XML); > } > we receive such surprise: > Caused by: java.lang.ClassCastException: > com.sun.org.apache.xerces.internal.dom.DeferredDocumentImpl > at > org.apache.jackrabbit.core.util.DOMWalker.iterateElements(DOMWalker.java:215) > at > org.apache.jackrabbit.core.nodetype.xml.NodeTypeReader.getNodeTypeDefs(NodeTypeReader.java:121) > at > org.apache.jackrabbit.core.nodetype.NodeTypeManagerImpl.registerNodeTypes(NodeTypeManagerImpl.java:257) > at > org.apache.jackrabbit.core.nodetype.NodeTypeManagerImpl.registerNodeTypes(NodeTypeManagerImpl.java:499) > at > pl.codeservice.jcr.JcrCustomNodeRegister.registerNodes(JcrCustomNodeRegister.java:41) > at > pl.codeservice.jcr.JcrCustomNodeRegister.init(JcrCustomNodeRegister.java:27) > ... > Registering nodes by .cnd files works fine. -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.
[jira] Commented: (JCR-1755) ClassCastException when registering custom node by XML file
[ https://issues.apache.org/jira/browse/JCR-1755?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12633719#action_12633719 ] Jakub Wozniakowski commented on JCR-1755: - Confirmed. Surrounding node definitions by is successfull workaround. > ClassCastException when registering custom node by XML file > --- > > Key: JCR-1755 > URL: https://issues.apache.org/jira/browse/JCR-1755 > Project: Jackrabbit > Issue Type: Bug > Components: jackrabbit-core >Affects Versions: core 1.4.5 > Environment: Spring 2.5, Spring Modules 0.9, Firefox 3, Tomcat 6, > Ubuntu 8.10, MySql 5 > Repository is deployed as a shared J2EE resource (JNDI). >Reporter: Jakub Wozniakowski >Priority: Critical > > When trying to register node type from XML file using following code: > JackrabbitNodeTypeManager nodeTypeManager = > (JackrabbitNodeTypeManager)workspace.getNodeTypeManager(); > for(Resource resource : nodeDefinitions){ > System.out.println("** registering node:"+resource); > > nodeTypeManager.registerNodeTypes(resource.getInputStream(), > JackrabbitNodeTypeManager.TEXT_XML); > } > we receive such surprise: > Caused by: java.lang.ClassCastException: > com.sun.org.apache.xerces.internal.dom.DeferredDocumentImpl > at > org.apache.jackrabbit.core.util.DOMWalker.iterateElements(DOMWalker.java:215) > at > org.apache.jackrabbit.core.nodetype.xml.NodeTypeReader.getNodeTypeDefs(NodeTypeReader.java:121) > at > org.apache.jackrabbit.core.nodetype.NodeTypeManagerImpl.registerNodeTypes(NodeTypeManagerImpl.java:257) > at > org.apache.jackrabbit.core.nodetype.NodeTypeManagerImpl.registerNodeTypes(NodeTypeManagerImpl.java:499) > at > pl.codeservice.jcr.JcrCustomNodeRegister.registerNodes(JcrCustomNodeRegister.java:41) > at > pl.codeservice.jcr.JcrCustomNodeRegister.init(JcrCustomNodeRegister.java:27) > ... > Registering nodes by .cnd files works fine. -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.
[jira] Commented: (JCR-1755) ClassCastException when registering custom node by XML file
[ https://issues.apache.org/jira/browse/JCR-1755?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12633702#action_12633702 ] Jukka Zitting commented on JCR-1755: Doesn't look like a XML library version issue to me. The failing code in DOMWalker expects the parent of the currently processed XML node to be an element, but in your case it looks like it's the top-level XML document. We probably in any case need to fix that in DOMWalker, but I believe you can work around this issue by modifying your node type definition files. If my guess is right, your XML file looks like this: ... Try wrapping the content in a element, like this: ... > ClassCastException when registering custom node by XML file > --- > > Key: JCR-1755 > URL: https://issues.apache.org/jira/browse/JCR-1755 > Project: Jackrabbit > Issue Type: Bug > Components: jackrabbit-core >Affects Versions: core 1.4.5 > Environment: Spring 2.5, Spring Modules 0.9, Firefox 3, Tomcat 6, > Ubuntu 8.10, MySql 5 > Repository is deployed as a shared J2EE resource (JNDI). >Reporter: Jakub Wozniakowski >Priority: Critical > > When trying to register node type from XML file using following code: > JackrabbitNodeTypeManager nodeTypeManager = > (JackrabbitNodeTypeManager)workspace.getNodeTypeManager(); > for(Resource resource : nodeDefinitions){ > System.out.println("** registering node:"+resource); > > nodeTypeManager.registerNodeTypes(resource.getInputStream(), > JackrabbitNodeTypeManager.TEXT_XML); > } > we receive such surprise: > Caused by: java.lang.ClassCastException: > com.sun.org.apache.xerces.internal.dom.DeferredDocumentImpl > at > org.apache.jackrabbit.core.util.DOMWalker.iterateElements(DOMWalker.java:215) > at > org.apache.jackrabbit.core.nodetype.xml.NodeTypeReader.getNodeTypeDefs(NodeTypeReader.java:121) > at > org.apache.jackrabbit.core.nodetype.NodeTypeManagerImpl.registerNodeTypes(NodeTypeManagerImpl.java:257) > at > org.apache.jackrabbit.core.nodetype.NodeTypeManagerImpl.registerNodeTypes(NodeTypeManagerImpl.java:499) > at > pl.codeservice.jcr.JcrCustomNodeRegister.registerNodes(JcrCustomNodeRegister.java:41) > at > pl.codeservice.jcr.JcrCustomNodeRegister.init(JcrCustomNodeRegister.java:27) > ... > Registering nodes by .cnd files works fine. -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.
[jira] Commented: (JCR-1755) ClassCastException when registering custom node by XML file
[ https://issues.apache.org/jira/browse/JCR-1755?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12633691#action_12633691 ] Alexander Klimetschek commented on JCR-1755: Oh, and Jackrabbit uses/requires xerces version 2.8.1 > ClassCastException when registering custom node by XML file > --- > > Key: JCR-1755 > URL: https://issues.apache.org/jira/browse/JCR-1755 > Project: Jackrabbit > Issue Type: Bug > Components: jackrabbit-core >Affects Versions: core 1.4.5 > Environment: Spring 2.5, Spring Modules 0.9, Firefox 3, Tomcat 6, > Ubuntu 8.10, MySql 5 > Repository is deployed as a shared J2EE resource (JNDI). >Reporter: Jakub Wozniakowski >Priority: Critical > > When trying to register node type from XML file using following code: > JackrabbitNodeTypeManager nodeTypeManager = > (JackrabbitNodeTypeManager)workspace.getNodeTypeManager(); > for(Resource resource : nodeDefinitions){ > System.out.println("** registering node:"+resource); > > nodeTypeManager.registerNodeTypes(resource.getInputStream(), > JackrabbitNodeTypeManager.TEXT_XML); > } > we receive such surprise: > Caused by: java.lang.ClassCastException: > com.sun.org.apache.xerces.internal.dom.DeferredDocumentImpl > at > org.apache.jackrabbit.core.util.DOMWalker.iterateElements(DOMWalker.java:215) > at > org.apache.jackrabbit.core.nodetype.xml.NodeTypeReader.getNodeTypeDefs(NodeTypeReader.java:121) > at > org.apache.jackrabbit.core.nodetype.NodeTypeManagerImpl.registerNodeTypes(NodeTypeManagerImpl.java:257) > at > org.apache.jackrabbit.core.nodetype.NodeTypeManagerImpl.registerNodeTypes(NodeTypeManagerImpl.java:499) > at > pl.codeservice.jcr.JcrCustomNodeRegister.registerNodes(JcrCustomNodeRegister.java:41) > at > pl.codeservice.jcr.JcrCustomNodeRegister.init(JcrCustomNodeRegister.java:27) > ... > Registering nodes by .cnd files works fine. -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.
[jira] Commented: (JCR-1755) ClassCastException when registering custom node by XML file
[ https://issues.apache.org/jira/browse/JCR-1755?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12633694#action_12633694 ] Jakub Wozniakowski commented on JCR-1755: - Using Sun Java 1.5.0.15 > ClassCastException when registering custom node by XML file > --- > > Key: JCR-1755 > URL: https://issues.apache.org/jira/browse/JCR-1755 > Project: Jackrabbit > Issue Type: Bug > Components: jackrabbit-core >Affects Versions: core 1.4.5 > Environment: Spring 2.5, Spring Modules 0.9, Firefox 3, Tomcat 6, > Ubuntu 8.10, MySql 5 > Repository is deployed as a shared J2EE resource (JNDI). >Reporter: Jakub Wozniakowski >Priority: Critical > > When trying to register node type from XML file using following code: > JackrabbitNodeTypeManager nodeTypeManager = > (JackrabbitNodeTypeManager)workspace.getNodeTypeManager(); > for(Resource resource : nodeDefinitions){ > System.out.println("** registering node:"+resource); > > nodeTypeManager.registerNodeTypes(resource.getInputStream(), > JackrabbitNodeTypeManager.TEXT_XML); > } > we receive such surprise: > Caused by: java.lang.ClassCastException: > com.sun.org.apache.xerces.internal.dom.DeferredDocumentImpl > at > org.apache.jackrabbit.core.util.DOMWalker.iterateElements(DOMWalker.java:215) > at > org.apache.jackrabbit.core.nodetype.xml.NodeTypeReader.getNodeTypeDefs(NodeTypeReader.java:121) > at > org.apache.jackrabbit.core.nodetype.NodeTypeManagerImpl.registerNodeTypes(NodeTypeManagerImpl.java:257) > at > org.apache.jackrabbit.core.nodetype.NodeTypeManagerImpl.registerNodeTypes(NodeTypeManagerImpl.java:499) > at > pl.codeservice.jcr.JcrCustomNodeRegister.registerNodes(JcrCustomNodeRegister.java:41) > at > pl.codeservice.jcr.JcrCustomNodeRegister.init(JcrCustomNodeRegister.java:27) > ... > Registering nodes by .cnd files works fine. -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.
[jira] Commented: (JCR-1755) ClassCastException when registering custom node by XML file
[ https://issues.apache.org/jira/browse/JCR-1755?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12633688#action_12633688 ] Alexander Klimetschek commented on JCR-1755: Looks like the classical "container or JVM provides different XML implementation (Xerces version)" than expected, ie. from what is provided in Jackrabbit's lib. > ClassCastException when registering custom node by XML file > --- > > Key: JCR-1755 > URL: https://issues.apache.org/jira/browse/JCR-1755 > Project: Jackrabbit > Issue Type: Bug > Components: jackrabbit-core >Affects Versions: core 1.4.5 > Environment: Spring 2.5, Spring Modules 0.9, Firefox 3, Tomcat 6, > Ubuntu 8.10, MySql 5 > Repository is deployed as a shared J2EE resource (JNDI). >Reporter: Jakub Wozniakowski >Priority: Critical > > When trying to register node type from XML file using following code: > JackrabbitNodeTypeManager nodeTypeManager = > (JackrabbitNodeTypeManager)workspace.getNodeTypeManager(); > for(Resource resource : nodeDefinitions){ > System.out.println("** registering node:"+resource); > > nodeTypeManager.registerNodeTypes(resource.getInputStream(), > JackrabbitNodeTypeManager.TEXT_XML); > } > we receive such surprise: > Caused by: java.lang.ClassCastException: > com.sun.org.apache.xerces.internal.dom.DeferredDocumentImpl > at > org.apache.jackrabbit.core.util.DOMWalker.iterateElements(DOMWalker.java:215) > at > org.apache.jackrabbit.core.nodetype.xml.NodeTypeReader.getNodeTypeDefs(NodeTypeReader.java:121) > at > org.apache.jackrabbit.core.nodetype.NodeTypeManagerImpl.registerNodeTypes(NodeTypeManagerImpl.java:257) > at > org.apache.jackrabbit.core.nodetype.NodeTypeManagerImpl.registerNodeTypes(NodeTypeManagerImpl.java:499) > at > pl.codeservice.jcr.JcrCustomNodeRegister.registerNodes(JcrCustomNodeRegister.java:41) > at > pl.codeservice.jcr.JcrCustomNodeRegister.init(JcrCustomNodeRegister.java:27) > ... > Registering nodes by .cnd files works fine. -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.