Hi, I have recently read an article on the IBM developerWorks website (http://www.ibm.com/developerworks/library/x-xmlbeanse/index.html ) that describes how to use interface extensions to utilize events within XMLBeans. I am able to register event listeners, fire events, and do everything else they describe in the article but I am having a problem where I set one XmlObject to another through use of the XmlObject::set(XmlObject arg) method which does not execute my preSet() and postSet() methods.
This is an example using the PurchaseOrderDocument example found on the XMLBeans tutorial page: public static void main(String[] args){ PurchaseOrder po_one = PurchaseOrderDocument.PurchaseOrder.Factory.newInstance(); po_one.addModelChangeListener(new IModelChangeListener(){ public void modelChange(ModelChangeEvent evt){ System.err.println("EVENT"); } }); PurchaseOrder po_two = PurchaseOrderDocument.PurchaseOrder.Factory.newInstance(); po_one.addNewCustomer(); // prints "EVENT" on stderr po_one.set(po_two); // does not print anything po_one.addNewCustomer(); // prints "EVENT" on stderr } I am using an extremely stripped down version of the code on the IBM's website for the static implementation files so that my preSet and postSet methods basically do this: public static boolean preSet(...){ return true; } public static void postSet(XmlObject xo, ...){ ((IModelChangeListener)xo).fireModelChangeEvent(new ModelChangeEvent(...)); return; } Is this happening because po_one.set(po_two) isn't really changing anything about po_one except what it's pointing to in memory? Thank you, Bryan Worrell __ Bryan Worrell The MITRE Corporation [EMAIL PROTECTED] --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]