JDOMツリーを歩きながら、変更を加える必要があります。この時点で、変更は主に現在新しい要素を追加していますが、要素の並べ替えや要素の削除も含まれる可能性があります。すべての作業は同じスレッドで行われるため、同時実行の問題はありません。
トラバーサル中にノードを追加しようとすると、JDOMイテレータがConcurrentModificationExceptionをスローする可能性があるため、これは困難であることがわかります。私が見る限り、JDOMはDOMノードを直接リンクする代わりにリストを使用しているため、その場で変更を行うことは困難です。
これに対処する方法について、トラバースが完了するまで追加を延期する、またはトラバースされたツリーが変更されないようにその場で新しいツリーを構築するなど、いくつかの推奨事項を見てきました。変更するときにツリーの一貫したビューが必要になるため、これらは機能しません。
ここではJDOMが機能しないのではないかと思い始めています。他のJavaDOMモデルのいずれかがこれを容易にしますか?または、JDOMでこれを行う方法はありますか?