pnever 2003/09/16 12:04:35
Modified: src/share/org/apache/slide/structure StructureImpl.java
Log:
Fixed startup problem. Thanks again to Martin Holz:
After fixing the NPE in ObjectNode, I have an other startup problem.
java.lang.IllegalStateException: Existing binding users at / has to be removed first
at org.apache.slide.structure.ObjectNode.addBinding(ObjectNode.java:480)
at org.apache.slide.structure.ObjectNode.addChild(ObjectNode.java:460)
at org.apache.slide.structure.StructureImpl.create(StructureImpl.java:499)
at
org.apache.slide.common.XMLUnmarshaller.loadObjectNode(XMLUnmarshaller.java:194)
at
org.apache.slide.common.XMLUnmarshaller.loadObjectNode(XMLUnmarshaller.java:305)
at org.apache.slide.common.XMLUnmarshaller.unmarshal(XMLUnmarshaller.java:126)
at
org.apache.slide.common.NamespaceAccessTokenImpl.importData(NamespaceAccessTokenImpl.java:317)
at org.apache.slide.common.Namespace.loadBaseData(Namespace.java:821)
at org.apache.slide.common.EmbeddedDomain.addNamespace(EmbeddedDomain.java:230)
StructureImpl tries to add a store root node to its parent, even
if the node already exists. This will fail during startup.
In my configuration the node /users is created in Domain.xml using
<objectnode classname="org.apache.slide.structure.SubjectNode" uri="/users" >
<permission action="/actions/read" subject="+/users/authors" />
</objectnode>
and there is also a store mounted at /users.
Revision Changes Path
1.30 +8 -6
jakarta-slide/src/share/org/apache/slide/structure/StructureImpl.java
Index: StructureImpl.java
===================================================================
RCS file:
/home/cvs/jakarta-slide/src/share/org/apache/slide/structure/StructureImpl.java,v
retrieving revision 1.29
retrieving revision 1.30
diff -u -r1.29 -r1.30
--- StructureImpl.java 8 Sep 2003 15:50:30 -0000 1.29
+++ StructureImpl.java 16 Sep 2003 19:04:35 -0000 1.30
@@ -496,8 +496,10 @@
// if the object already exists map it anyway into
// the node hierarchy, to prevent loose of nodes
// during start up
- parentObject.addChild(courObject);
- store(token, parentObject);
+ if (!parentObject.hasChild(courObject)) {
+ parentObject.addChild(courObject);
+ store(token, parentObject);
+ }
}
throw new ObjectAlreadyExistsException(strUri);
}
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]