Werner,

Interestingly enough, I tried out this test with 0.9.9M1 and it works just fine 
without giving me the exception. Though, it does not work with 0.9.7.

I am going to try and go through the change logs between these two releases and 
see what fix went in to make the problem go away (I need the change so that I 
can back port it onto the 0.9.5 release). In the mean time, if the problem 
rings a bell could you point me to the fix?

Regards, Vishal.

-----Original Message-----
From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]
Sent: Tuesday, September 13, 2005 11:28 AM
To: [email protected]
Subject: RE: [castor-dev] Using access="read-only" in the mapping file


Werner,

This is a different issue that I am facing. I had sent out two mails requesting 
help on the same day for two different problems, and I am using very similar 
code infrastructure to illustrate the two problems - so maybe that is the cause 
for confusion.

I'm really stuck with this one, and any information would really help.

Thanks, Vishal.

-----Original Message-----
From: Werner Guttmann [mailto:[EMAIL PROTECTED]

Sent: Monday, September 12, 2005 11:22 PM
To: [email protected]
Subject: RE: [castor-dev] Using access="read-only" in the mapping file

Vishal,

I have replied to the Jira issue you raised the other day.

Werner

On Mon, 12 Sep 2005 11:47:52 +0530, [EMAIL PROTECTED] wrote:

>
>Hi,
>
>Sorry for being a bother, but I would appreciate any help on this problem.
>
>Thanks, Vishal.
>
>-----Original Message-----
>From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]
>Sent: Tuesday, September 06, 2005 3:16 PM
>To: [email protected]
>Subject: RE: [castor-dev] Using access="read-only" in the mapping file
>
>
>Werner,
>
>Sorry!!
>Here are the code fragments:
>
>CounterType and CounterVar are simple classes that just have the get & set 
>methods as described in the mapping file

below:
>
><mapping>
>
>
>       <!-- Mapping for CounterType table -->
>       <class name="CounterType"
>                               identity="id" access="read-only" 
> key-generator="IDENTITY">
>       <cache-type type="none" />
>       <map-to table="COUNTER_TYPE" />
>
>               <field name="id" type="integer" >
>                       <sql name="counter_type_id" type="integer" 
> read-only="true"/>
>               </field>
>               <field name="description" type="string">
>                       <sql name="counter_type_desc" type="varchar" 
> read-only="true"/>
>               </field>
>
>       </class>
>
>       <!-- Mapping for Counter table -->
>       <class name="CounterVar"
>                               identity="id" key-generator="IDENTITY">
>       <cache-type type="none" />
>       <map-to table="COUNTER_VAR" />
>
>               <field name="id" type="integer" >
>                       <sql name="counter_var_id" type="integer"/>
>               </field>
>               <field name="number" type="integer" >
>                       <sql name="counter_var_number" type="integer"/>
>               </field>
>               <field name="type" type="CounterType">
>                       <sql name="counter_var_type" />
>               </field>
>       </class>
>
></mapping>
>
>below is the DB schema and some sample inserts:
>
>drop DATABASE IF EXISTS TEST;
>create DATABASE TEST;
>use TEST;
>
>create table TEST.COUNTER_TYPE
>
>       (
>               COUNTER_TYPE_ID INTEGER NOT NULL auto_increment,
>
>               COUNTER_TYPE_DESC VARCHAR(50) NOT NULL,
>               PRIMARY KEY (COUNTER_TYPE_ID)
>       )
>       type=Innodb;
>
>INSERT INTO TEST.COUNTER_TYPE (COUNTER_TYPE_DESC) VALUES ("Type1");
>INSERT INTO TEST.COUNTER_TYPE (COUNTER_TYPE_DESC) VALUES ("Type2");
>INSERT INTO TEST.COUNTER_TYPE (COUNTER_TYPE_DESC) VALUES ("Type3");
>INSERT INTO TEST.COUNTER_TYPE (COUNTER_TYPE_DESC) VALUES ("Type4");
>INSERT INTO TEST.COUNTER_TYPE (COUNTER_TYPE_DESC) VALUES ("Type5");
>
>create table TEST.COUNTER_VAR
>
>       (
>               COUNTER_VAR_ID INTEGER NOT NULL auto_increment,
>
>               COUNTER_VAR_NUMBER INTEGER NOT NULL,
>               COUNTER_VAR_TYPE INTEGER NOT NULL,
>               INDEX COUNTER_TYPE_IDX (COUNTER_VAR_TYPE),
>               FOREIGN KEY(COUNTER_VAR_TYPE) REFERENCES 
> TEST.COUNTER_TYPE(COUNTER_TYPE_ID)

ON DELETE CASCADE,
>               PRIMARY KEY (COUNTER_VAR_ID)
>       )
>       type=Innodb;
>INSERT INTO TEST.COUNTER_VAR(COUNTER_VAR_NUMBER, COUNTER_VAR_TYPE) VALUES 
>(111, 1);
>INSERT INTO TEST.COUNTER_VAR(COUNTER_VAR_NUMBER, COUNTER_VAR_TYPE) VALUES 
>(222, 2);
>INSERT INTO TEST.COUNTER_VAR(COUNTER_VAR_NUMBER, COUNTER_VAR_TYPE) VALUES 
>(333, 3);
>INSERT INTO TEST.COUNTER_VAR(COUNTER_VAR_NUMBER, COUNTER_VAR_TYPE) VALUES 
>(444, 4);
>INSERT INTO TEST.COUNTER_VAR(COUNTER_VAR_NUMBER, COUNTER_VAR_TYPE) VALUES 
>(555, 5);
>
>The main program simply retrieves an instance of CounterVar in the DbLocked 
>mode and then tries to set a new value of

CounterType (which is retrieved in the DbLocked mode) into it and commit the 
transaction:
>
>            jdo = new JDO("TEST");
>            jdo.setConfiguration("/root/test/db.xml");
>            db = jdo.getDatabase();
>            db.begin();
>            CounterVar cv = retrieve(1, db);
>            CounterType ct = retrieveType(3, db);
>            cv.setType(ct);
>            db.commit();
>            db.close();
>
>Both the retrieves are being done in the DbLocked mode.
>The exception listed below is seen when doing the commit.
>
>Hope this helps. Please let me know if you need any more information.
>
>Regards, Vishal.
>
>-----Original Message-----
>From: Werner Guttmann [mailto:[EMAIL PROTECTED]
>
>Sent: Monday, September 05, 2005 8:45 PM
>To: [email protected]
>Subject: AW: [castor-dev] Using access="read-only" in the mapping file
>
>Vishal,
>
>please no attachments to a mailing list like this. Just include the relevant 
>code fragments (actual code, mapping file, etc.)

within the body of an email when making your inquiry.
>
>Regards
>Werner
>
>-----Ursprüngliche Nachricht-----
>Von: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]
>Gesendet: Montag, 05. September 2005 16:15
>An: [email protected]
>Betreff: [castor-dev] Using access="read-only" in the mapping file
>
>
>
>Hi,
>
>I have an object that is related to another object which loads data from
>a table whose contents are static. For these relations, I have defined
>the static data classes as 'access="read-only"' in my mapping file - to
>avoid any problems with locking the rows with static data in the DB.
>
>Now, in my main class, I want to change the reference to the static
>object at runtime but I am getting the following exception:
>
>[test]# java TestReadOnly
>GENERAL EXCEPTION - OUTSIDE BLOCK!!!
>org.exolab.castor.jdo.PersistenceException: Object, [EMAIL PROTECTED],
>links to another object, [EMAIL PROTECTED] that is not
>loaded/updated/created in this transaction
>        at
>org.exolab.castor.persist.ClassMolder.preStore(ClassMolder.java:1326)
>        at
>org.exolab.castor.persist.LockEngine.preStore(LockEngine.java:725)
>        at
>org.exolab.castor.persist.TransactionContext.prepare(TransactionContext.
>java:1464)
>        at
>org.exolab.castor.jdo.engine.DatabaseImpl.commit(DatabaseImpl.java:518)
>        at TestReadOnly.main(TestReadOnly.java:28)
>[test]#
>
>The test program and other associated files are attached.
>
>Any help about how I can change the referenced object in the main class
>would be appreciated.
>
>Regards, Vishal.
>
>
>
>
>Confidentiality Notice
>
>
>The information contained in this electronic message and any attachments to 
>this message are intended
>for the exclusive use of the addressee(s) and may contain confidential or 
>privileged information. If
>you are not the intended recipient, please notify the sender at Wipro or 
>[EMAIL PROTECTED] immediately
>and destroy all copies of this message and any attachments.
>
>-------------------------------------------------
>If you wish to unsubscribe from this list, please
>
>send an empty message to the following address:
>
>[EMAIL PROTECTED]
>-------------------------------------------------
>
>
>
>
>Confidentiality Notice
>
>
>The information contained in this electronic message and any attachments to 
>this message are intended
>for the exclusive use of the addressee(s) and may contain confidential or 
>privileged information. If
>you are not the intended recipient, please notify the sender at Wipro or 
>[EMAIL PROTECTED] immediately
>and destroy all copies of this message and any attachments.
>
>-------------------------------------------------
>If you wish to unsubscribe from this list, please
>send an empty message to the following address:
>
>[EMAIL PROTECTED]
>-------------------------------------------------
>
>
>
>
>Confidentiality Notice
>
>The information contained in this electronic message and any attachments to 
>this message are intended
>for the exclusive use of the addressee(s) and may contain confidential or 
>privileged information. If
>you are not the intended recipient, please notify the sender at Wipro or 
>[EMAIL PROTECTED] immediately
>and destroy all copies of this message and any attachments.
>
>-------------------------------------------------
>If you wish to unsubscribe from this list, please

>send an empty message to the following address:
>
>[EMAIL PROTECTED]
>-------------------------------------------------
>





-------------------------------------------------
If you wish to unsubscribe from this list, please

send an empty message to the following address:

[EMAIL PROTECTED]
-------------------------------------------------




Confidentiality Notice


The information contained in this electronic message and any attachments to 
this message are intended
for the exclusive use of the addressee(s) and may contain confidential or 
privileged information. If
you are not the intended recipient, please notify the sender at Wipro or [EMAIL 
PROTECTED] immediately
and destroy all copies of this message and any attachments.

-------------------------------------------------
If you wish to unsubscribe from this list, please
send an empty message to the following address:

[EMAIL PROTECTED]
-------------------------------------------------




Confidentiality Notice

The information contained in this electronic message and any attachments to 
this message are intended
for the exclusive use of the addressee(s) and may contain confidential or 
privileged information. If
you are not the intended recipient, please notify the sender at Wipro or [EMAIL 
PROTECTED] immediately
and destroy all copies of this message and any attachments.

-------------------------------------------------
If you wish to unsubscribe from this list, please
send an empty message to the following address:

[EMAIL PROTECTED]
-------------------------------------------------

Reply via email to