PLEASE DO NOT REPLY TO THIS MESSAGE. TO FURTHER COMMENT ON THE STATUS OF THIS BUG PLEASE FOLLOW THE LINK BELOW AND USE THE ON-LINE APPLICATION. REPLYING TO THIS MESSAGE DOES NOT UPDATE THE DATABASE, AND SO YOUR COMMENT WILL BE LOST SOMEWHERE. http://nagoya.apache.org/bugzilla/show_bug.cgi?id=3007 *** shadow/3007 Wed Aug 8 14:33:35 2001 --- shadow/3007.tmp.9409 Wed Aug 8 14:35:21 2001 *************** *** 131,133 **** --- 131,166 ---- ------- Additional Comments From [EMAIL PROTECTED] 2001-08-08 14:33 ------- Created an attachment (id=401) Modified PDFDocmument.java + + + ------- Additional Comments From [EMAIL PROTECTED] 2001-08-08 14:35 ------- + I ran into the same problem and did some digging. I believe I've located the + problem. The problem is that the PDFDocument class sometimes creates an IDNode + for an ID before the IDReferences.createID gets called. When createID gets + called a bit later, it sees that the ID already exists and things it's a + duplicate. + + I made the following modifications to IDReferences, and that seemed to clear up + the problem: + + 1. Created a new attribute 'unvalidatedIds' to track IDs that have been created, + but not validated. + + 2. Created methods to add to, remove from and search for an ID in the + unvalidatedIds list. Modified constructor to initialize the list. + + 3. Modified createID to check if the Id is in the unvalidatedIds. If so, it + removes it from the list (as well as from the idValidation list). It does NOT + raise a dup error :> + + 4. Added a CreateUnvalidatedID(ID as String) method that calls createNewId, AND + adds the new id to the unvalidateIds list. + + 5. Modified PDFDocument.getGoToReference to call CreateUnvalidatedID instead of + createNewId + + I've attached the modified java files. (Hope it's ok this way. Didn't have + time to pursue installing/using CVS) You may wish to consider a different name + than unvalidatedId (the similarity with idValidation may cause confusion). I + couldn't come up with anything better in the 5 minutes I spent thinking about it + :> --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, email: [EMAIL PROTECTED]