Thx for your attention Alex,

this is a piece o sql (postgresql) I use to create tables.

--calendar section--
CREATE SEQUENCE calendar_seq;
CREATE TABLE calendar (
id INTEGER DEFAULT nextval('calendar_seq'),
validity_start date NOT NULL,
validity_end date CHECK(validity_end >= validity_start),
description varchar(255) NOT NULL,
rounds INTEGER,
PRIMARY KEY (id)
);
CREATE UNIQUE INDEX cal_descr_ix ON calendar(description);

CREATE SEQUENCE workweek_seq;
CREATE TABLE workweek (
id INTEGER DEFAULT nextval('workweek_seq') PRIMARY KEY,
week_day INTEGER DEFAULT 1,
round INTEGER,
start_t time DEFAULT('00:00') NOT NULL,
end_t time DEFAULT('23:59') CHECK (end_t > start_t),
calendar_id INTEGER REFERENCES calendar(id) );


while in bean generated calendarPk is

public CalendarPK( int id )
{
this.id = id;
}

generated from

/**
* Retrieve the Calendars's id.
*
* @return Returns the id of this Calendar.
* @ejb.persistent-field
* @ejb.pk-field
* @jboss.column-name
* name="id"
*/
public abstract int getId(); /**
* Sets the Calendar's id.
*
* @param pId The id of this Calendar.
*/
public abstract void setId(int pId);
I've consulted some manuals but I can's see the problem.


Alex Loubyansky wrote:

Hello kiuma,

what is the type of Calendar's primary key? What pk values you tried?

alex

Thursday, November 14, 2002, 11:38:27 AM, you wrote:

k> I've tryed also setting the post create method, but whit no result.

k> public WorkweekPK ejbCreate( WorkweekData pWorkweek, CalendarLocal k> lCalendar )
k> throws
k> InvalidValueException,
k> EJBException,
k> CreateException
k> {
k> // Clone the given Value Object to keep changed private
k> WorkweekData lData = (WorkweekData) pWorkweek.clone();
k> // Save the new Workweek
k> try {
k> lData.setId( generateUniqueId() );
k> setId( lData.getId() );
k> } catch (ServiceUnavailableException e) { k> System.out.println("Workweek Creation Error: \n" + k> e.getMessage());
k> throw new EJBException(e.getMessage());
k> }
k> setValueObject( lData ); k> // This is only possible in CMPs. Otherwise return a valid PK.
k> return null;
k> }

k> /**
k> */
k> public void ejbPostCreate( WorkweekData pWorkweek, CalendarLocal lCalendar )
k> {
k> setCalendar( lCalendar );
k> }


k> In my database calendar_id is always clean.

k> Please help me!!!!



k> kiuma wrote:

Hi I'm using jboss3.2b + xdoclet cvs

I've a calendar with many workweek days

so I configured xdoclet directives for

WorkweekBean
/**
* @ejb.interface-method
* view-type="local"
* @ejb.relation
* name="calendar-workweeks"
* role-name="workweek-has-calendar"
* cascade-delete="yes"
* target-ejb="Calendar"
* @jboss.relation
* fk-constraint="true"
* fk-column="calendar_id"
* related-pk-field="id"
*/
public abstract CalendarLocal getCalendar();

/**
* @ejb.interface-method
* view-type="local"
*/
public abstract void setCalendar(CalendarLocal pCalendarData);



while for
CalendarBean

/**
* @ejb.relation
* name="calendar-workweeks"
* role-name="calendar-has-workweeks"
* @ejb.interface-method
* view-type="local"
*/
public abstract Collection getWorkweeks(); /**
* @ejb.interface-method
* view-type="local"
*/
public abstract void setWorkweeks(Collection pHolydays);


when in my session I execute the following commands
WorkweekLocal wEntity = wHome.create( pView ); wEntity.setCalendar( lCalendar );

Workweek is created, but no calendar_id is set.
Could you help me please ?



the piece of the generated jboss_cmp is:
<ejb-relation>
<ejb-relation-name>calendar-workweeks</ejb-relation-name>

<foreign-key-mapping/>

<ejb-relationship-role>
<ejb-relationship-role-name>workweek-has-calendar</ejb-relationship-role-name>
<fk-constraint>true</fk-constraint>
<key-fields/>
</ejb-relationship-role>
<ejb-relationship-role>
<ejb-relationship-role-name>calendar-has-workweeks</ejb-relationship-role-name>
<key-fields>
<key-field>
<field-name>id</field-name>
<column-name>calendar_id</column-name>
</key-field>
</key-fields>
</ejb-relationship-role>





-------------------------------------------------------
This sf.net email is sponsored by: To learn the basics of securing your web site with SSL, click here to get a FREE TRIAL of a Thawte Server Certificate: http://www.gothawte.com/rd524.html
_______________________________________________
JBoss-user mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/jboss-user


Reply via email to