I had the same symptom once, I had declared my primary keys as Integer and
returned int rather than Integer in my ejbCreate methods. Have you
accidently done the same???
Anyways, it seems Orion is quite non-informative about semantical errors, so
I have entered a bug report about this issue (#349).

R.

-----Original Message-----
From: [EMAIL PROTECTED]
[mailto:[EMAIL PROTECTED]]On Behalf Of Alex Paransky
Sent: 6. marts 2001 04:59
To: Orion-Interest
Subject: RE: Problem retrieving dependents after Orion restart


I have been playing with the simple example some more, and still cannot
resolve the issue.  The strange thing is that it seems to write the data to
the tables correctly.  All the fields are filled in as expected, it just
fails to read the data back after restart.  I am not sure the best way to
proceed.

Here are the layout for the tables which are being used:

Person Table:
+----------------+---------------+------+-----+---------+-------+
| Field          | Type          | Null | Key | Default | Extra |
+----------------+---------------+------+-----+---------+-------+
| id             | bigint(20)    |      | PRI | 0       |       |
| salutation     | varchar(255)  | YES  |     | NULL    |       |
| name           | varchar(255)  | YES  |     | NULL    |       |
| email          | varchar(255)  | YES  |     | NULL    |       |
| createDate     | timestamp(14) | YES  |     | NULL    |       |
| modifyDate     | timestamp(14) | YES  |     | NULL    |       |
| parentId       | bigint(20)    | YES  |     | NULL    |       |
| parentRelation | bigint(20)    | YES  |     | NULL    |       |
+----------------+---------------+------+-----+---------+-------+

Phones Table:
+---------+--------------+------+-----+---------+-------+
| Field   | Type         | Null | Key | Default | Extra |
+---------+--------------+------+-----+---------+-------+
| id      | bigint(20)   |      |     | 0       |       |
| number  | varchar(255) | YES  |     | NULL    |       |
| ownerId | bigint(20)   | YES  |     | NULL    |       |
+---------+--------------+------+-----+---------+-------+

In the PhonesTable ownerId is the foreign key for person.id field.  The
following join properly returns the data:

select * from ejb_person_PersonEntity pe, ejb_phones ph where pe.id =
ph.ownerId;

Does any one know what the problem is?

Thanks.
-AP_





-----Original Message-----
From: [EMAIL PROTECTED]
[mailto:[EMAIL PROTECTED]]On Behalf Of Alex Paransky
Sent: Monday, March 05, 2001 6:13 PM
To: Orion-Interest
Subject: RE: Problem retrieving dependents after Orion restart


Here is an excerpt from orion-ejb-jar.xml, can someone tell me if I have
something configured incorrectly.  Again, the data is properly written to
the database, it is just NOT READ when orion is restarted and
getPhoneDependents() api is executed.

<entity-deployment name="ejb.person.PersonEntity"
location="ejb.person.PersonEntity"
wrapper="PersonEntityHome_EntityHomeWrapper33"
table="ejb_person_PersonEntity" data-source="jdbc/siteDS">
  <primkey-mapping>
    <cmp-field-mapping>
      <fields>
          <cmp-field-mapping name="id" persistence-name="id" />
      </fields>
    </cmp-field-mapping>
  </primkey-mapping>
  <cmp-field-mapping name="salutation" persistence-name="salutation" />
  <cmp-field-mapping name="name" persistence-name="name" />
  <cmp-field-mapping name="email" persistence-name="email" />
  <cmp-field-mapping name="phoneDependents">
    <collection-mapping table="ejb_phones">
      <primkey-mapping>
        <cmp-field-mapping>
          <fields>
            <cmp-field-mapping name="id" persistence-name="id" />
          </fields>
        </cmp-field-mapping>
      </primkey-mapping>
      <value-mapping type="ejb.person.PersonPhone">
        <cmp-field-mapping name="value">
          <properties>
            <cmp-field-mapping name="id" persistence-name="id" />
            <cmp-field-mapping name="number" persistence-name="number" />
            <cmp-field-mapping name="person">
              <entity-ref home="ejb.person.PersonEntity">
                <cmp-field-mapping name="person">
                  <fields>
                    <cmp-field-mapping name="id" persistence-name="ownerId"
/>
                  </fields>
                </cmp-field-mapping>
              </entity-ref>
            </cmp-field-mapping>
          </properties>
        </cmp-field-mapping>
      </value-mapping>
    </collection-mapping>
  </cmp-field-mapping>
  <ejb-ref-mapping name="ejb/id" />
</entity-deployment>

Again, the ejb.person.PersonEntity has a 1 to N relation with dependend
ejb.pers.PersonPhone.

Thanks.
-AP_

-----Original Message-----
From: [EMAIL PROTECTED]
[mailto:[EMAIL PROTECTED]]On Behalf Of Alex Paransky
Sent: Monday, March 05, 2001 1:18 PM
To: Orion-Interest
Subject: Problem retrieving dependents after Orion restart


I have an entity bean with 1-N relationships to dependents.  I have two
clients, the first client executes a method on a session that populates and
works with the data.  The second client tries to access the data.  When I
run the first client followed by the second client, second client works
correctly.  When I run the first client, then RESTART ORION, then run second
client, second client fails to find dependents (but they are there, in the
table).

Here is the output:

Orion/1.4.7 initialized
Create person entity
Add phone1
Add phone2
Add phone3
Phone: 8551 (818) 541-0029 1
Phone: 8552 None 2
Phone: 8553 (310) 880-5962 3
Deleting last phone
Phones: [Lejb.util.Value;@44006e

[apara@junior orion]$ ./go
Orion/1.4.7 initialized
Phones: null

First we create a new person entity, set the phones (dependents), then list
the phones, finally delete the last phone.  Then restarting orion, we try to
lookup the phone dependents.  Phones returns as null.  The table contains
correct values.  Phones ARE there.

What could be wrong?

-AP_




Reply via email to