Is it realy this difficult or have I just missed something? I have now tried about 30h to make this work but still no luck.
Current status:
- Getting data from database to beans [just does select too many times and get's next sequence, but not really a problem yet]
- Updating data does does not work:
+ it does UPDATE to file_categories (Category) but INSERT on category_names (CategoryName)
+ does not have correct category_id while doing INSERT (which it should never do)
- Deleting data does not work (referential integrity violation)
+ it tries to delete first from file_categories (Category) -> referential error because there is data in category_names (CategoryName)
- Inserting data does not work
+ it does not pass category_id to category_names (CategoryName)
+ does INSERT to the category_names (CategoryName) before file_categories (Category) -> if category_id would be passed -> referential error
I made database simplier to like this:
CREATE TABLE file_categories ( ID SERIAL. PRIMARY KEY (ID));
CREATE TABLE category_names ( ID SERIAL, CATEGORY_ID INTEGER NOT NULL, NAME VARCHAR(50), PRIMARY KEY (ID), FOREIGN KEY (CATEGORY_ID) REFERENCES file_categories (ID));
Category.java has:
... private int id; pricate Collection names = new ArrayList(); ... setters/getters for id setters/getters for names
public addNames (CategoryName name) {
names.add (name);
}
...
------------
CategoryName.java has:
private int id;
private int category_id;
private String name;and I have getters/setters for everyone of those ---------
repository.xml
<descriptor-repository version="1.0" isolation-level="read-uncommitted">
<jdbc-connection-descriptor jcd-alias="testdb" default-connection="true" platform="PostgreSQL" subprotocol="postgresql">
<sequence-manager className="org.apache.ojb.broker.util.sequence.SequenceManagerNextValImp l"/>
</jdbc-connection-descriptor>
<class-descriptor class="net.vettenranta.category.bean.Category" table="FILE_CATEGORIES">
<field-descriptor name="id"
primarykey="true"
nullable="false"
default-fetch="true"
autoincrement="true"
column="ID"
sequence-name="file_categories_id_seq"
jdbc-type="INTEGER"
access="readonly"/>
<collection-descriptor name="names"
element-class-ref="net.vettenranta.category.bean.CategoryName"
collection- class="org.apache.ojb.broker.util.collections.ManageableArrayList"
otm-dependent="true">
<inverse-foreignkey field-ref="category_id"/>
</collection-descriptor>
</class-descriptor>
<class-descriptor class="net.vettenranta.category.bean.CategoryName" table="CATEGORY_NAMES">
<field-descriptor name="id"
primarykey="true"
nullable="false"
default-fetch="true"
column="ID"
jdbc-type="INTEGER"
autoincrement="true"
sequence-name="category_names_id_seq" access="readonly"/>
<field-descriptor name="category_id"
nullable="false"
default-fetch="true"
column="CATEGORY_ID"
jdbc-type="INTEGER" />
<field-descriptor name="name"
default-fetch="true"
column="NAME"
jdbc-type="VARCHAR"/>
</class-descriptor>
---------------
--
"Always remember that you are unique, just like everyone else!"
* http://iki.fi/joose/ * [EMAIL PROTECTED] * +358 44 561 0270 *
--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
