[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

RE: Implementation of XML:DB API



> What was the problem with the build.xml? I don't see any difference?

Removed line 22
<property name="s" value="${path.separator}" />

Changed line 23
<property name="ozone.dir" value="../.."/>
to
<property name="ozone.dir" value="../../build"/>

And line 26
<property name="jar.dir" value="${ozone.dir}/bin"/>
to the lib directory
<property name="jar.dir" value="${ozone.dir}/lib"/>

And line 30-32
-    <property name="cp"
value="${build.dir}${s}${ozone.dir}${s}${jar.dir}/ozone.jar"/>
-    <property name="cp"
value="${cp}${s}${jar.dir}/jndi.jar${s}${jar.dir}/castor.jar${s}${jar.dir}/j
avaclass.jar${s}${jar.dir}/w3c-dom.jar${s}${jar.dir}/xalan.jar${s}${jar.dir}
/xerces.jar"/>
-    <property name="classpath"
value="${cp}${s}${jar.dir}/jakarta-regexp.jar${s}${jar.dir}/jsdk.jar${s}${ja
r.dir}/junit.jar${s}${jar.dir}/omquery.jar${s}${jar.dir}/xtdash.jar${s}${jar
.dir}/jta-spec1_0_1.jar"/>

To the cleaner
+  <!--Classpath-->
+  <path id="classpath">
+        <pathelement path="${build.dir}"/>
+        <fileset dir="${jar.dir}">
+                 <include name="**/*.jar"/>
+        </fileset>
+  </path>

And line 63
-  <target name="classes" depends="prepare">
-    <javac srcdir="${src.dir}"
-           destdir="${build.dir}"
-           classpath="${classpath}"
-           includes="*.java"
-    />
-  </target>

To use the new classpath reference
+  <target name="classes" depends="prepare">
+    <javac srcdir="${src.dir}"
+           destdir="${build.dir}"
+           classpathref="/ozone-dev/08-2001/classpath"
+           includes="*.java"
+    />
+  </target>


>
> > it builds i get an Exception (Transaction - ta(121): uncaught exception:
> > (java.lang.RuntimeException: The given DOM document must not
> have children
> > if a whole document shall be converted!) is this what you talked about
> > before regarding the transaction bug?
>
> Exactly this is the "bug" I mean. Even if clearDocument() is called,
> the content of the persistent doc node is removed, and the document
> doesn't contain any child node the encasing methods in XMLContainer
> complain about a non-empty document what result in the exception above.
> I'm not sure if we're talking about nested transactions here, because
> such transactions are not allowed/implemented.
>
>
> 	Client			     Server
>
>      XMLContainer ----- XMLContainerHelper
>   (SAXChunkProducer)    (SAXChunkConsumer)
>
> 					  |
>
>  			 	  Document
>
>    					  |
>
> 				clearDocument()
>
>
> Here's what happens (simplified):
>
> 1. the sample code on client side starts a new transaction to enclose
> the XMLContainer.domStore(null, transientNode) method. "null" means:
> overwrite the existing persistent node with the given "transientNode".
>
> 2. XMLContainerHelper creates a new SAXChunkConsumer when
> beginInputSequence()
> is called. Before returning the new SAXChunkConsumer the helper calls
> clearDocument() on the existing persitent Document Node to remove the
> content.
>
> 3. SAXChunkProducer creates chunks of SAX events which are streamed
> to the server side (SAXChunkConsumer), unpacked and invoked on the
> persistent Node. But this fails beacuse the Document node isn't empty.
>
>
>
> Hope this helps a little bit...
> Lars

Yes it helps a lot. I'll take a look at it tonight and see if I can figure
something out.

Best regards,
Per

----------------------------------------------------------------------
Post a message:         mailto:ozone-dev@ozone-db.org
Unsubscribe:            mailto:ozone-dev-request@ozone-db.org?body=unsubscribe
Contact administrator:  mailto:ozone-dev-owner@ozone-db.org
Read archived messages: http://www.ozone-db.org/
----------------------------------------------------------------------