Return-Path: Delivered-To: apmail-incubator-cayenne-user-archive@locus.apache.org Received: (qmail 92098 invoked from network); 5 Jun 2006 15:35:10 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (209.237.227.199) by minotaur.apache.org with SMTP; 5 Jun 2006 15:35:10 -0000 Received: (qmail 15418 invoked by uid 500); 5 Jun 2006 15:35:09 -0000 Delivered-To: apmail-incubator-cayenne-user-archive@incubator.apache.org Received: (qmail 15394 invoked by uid 500); 5 Jun 2006 15:35:09 -0000 Mailing-List: contact cayenne-user-help@incubator.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: cayenne-user@incubator.apache.org Delivered-To: mailing list cayenne-user@incubator.apache.org Received: (qmail 15384 invoked by uid 99); 5 Jun 2006 15:35:09 -0000 Received: from asf.osuosl.org (HELO asf.osuosl.org) (140.211.166.49) by apache.org (qpsmtpd/0.29) with ESMTP; Mon, 05 Jun 2006 08:35:09 -0700 X-ASF-Spam-Status: No, hits=2.0 required=10.0 tests=RCVD_IN_BL_SPAMCOP_NET,SPF_PASS X-Spam-Check-By: apache.org Received-SPF: pass (asf.osuosl.org: domain of hefest@gmail.com designates 64.233.182.190 as permitted sender) Received: from [64.233.182.190] (HELO nf-out-0910.google.com) (64.233.182.190) by apache.org (qpsmtpd/0.29) with ESMTP; Mon, 05 Jun 2006 08:35:06 -0700 Received: by nf-out-0910.google.com with SMTP id p77so1518242nfc for ; Mon, 05 Jun 2006 08:34:44 -0700 (PDT) DomainKey-Signature: a=rsa-sha1; q=dns; c=nofws; s=beta; d=gmail.com; h=received:message-id:date:from:to:subject:in-reply-to:mime-version:content-type:content-transfer-encoding:content-disposition:references; b=cFoYJUn/wmjAidIvzdxDehO+mhgBjul3+WhIHTsPYaknbB8s/PK8URqDAfwvPLgH3PwExjQVgk0z0GOzQ++KagFq3YVpcOcIyS0EShDp3FycKyep8rcebrzK0W4g0o9PKCcmYUCV247o+xa7HY+WahmwvP3uP60Z8sbA8b9v74o= Received: by 10.49.6.9 with SMTP id j9mr4467731nfi; Mon, 05 Jun 2006 08:34:44 -0700 (PDT) Received: by 10.48.206.7 with HTTP; Mon, 5 Jun 2006 08:34:44 -0700 (PDT) Message-ID: Date: Mon, 5 Jun 2006 17:34:44 +0200 From: "Tomi NA" To: cayenne-user@incubator.apache.org Subject: Re: very, very serious problem - null values where objects should be In-Reply-To: <121661B7-4E69-4B82-8B6E-6C7F04FF54DD@objectstyle.org> MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Content-Disposition: inline References: <46FCBD16-A5C5-48C4-A69A-F7B5B8A5E062@gmail.com> <121661B7-4E69-4B82-8B6E-6C7F04FF54DD@objectstyle.org> X-Virus-Checked: Checked by ClamAV on apache.org X-Spam-Rating: minotaur.apache.org 1.6.2 0/1000/N On 6/5/06, Andrus Adamchik wrote: > > On Jun 5, 2006, at 5:00 PM, Tomi NA wrote: > > > However, the complex event sequences, usage of a databinding framework > > coupled with classes generated with a modifed superclass template > > create a fairly hard to follow interaction. The breakpoint in the > > setToObjectGroup() method never catches anything, for instance. It is > > the usage environment that somehow nullifies parts of the object > > graph... > > You can go one step down - override 'DataObject.writeProperty' and > log the output when the property is 'toObjectGroup' and value is > 'null' (or even call Thread.dumpStack() to get the full stack trace > of the call). How would this provide more information than monitoring setToObjectGroup() execution? Where is writeProperty used outside of the setters? Still, I tried it and it isn't called. I just still receive null values. And it very amusing: I set the wanted object group in a dropdown, start the search for all object of the group and get the objects, but they can't reach back to the group (which they try to do when they display information about themselves). I overrid it like so (my break point on the "if" statement never caught anything): public void writeProperty(String propName, Object val) { super.writeProperty(propName, val); if (val == null) { Thread.dumpStack(); } } > If you still don't see any suspect invocations, this is probably > something related to serialization. Funny you should mention that: this is the first project I'm using serialization and plan to use it much more. To that end, I extended DataObject with a custom readResolve method: protected Object readResolve() throws ObjectStreamException { DataContext dc = Util.getDataContext(); return dc == null ? this : dc.localObject(getObjectId(), this); } Still, judging from the wheres and hows I got null values, this does not seem to be the problem. I appreciate the help. t.n.a.