Anonymous | Login | Signup for a new account | 12-17-2024 08:49 PST |
Main | My View | View Issues | Change Log | Docs |
Viewing Issue Simple Details [ Jump to Notes ] | [ View Advanced ] [ Issue History ] [ Print ] | ||||||||
ID | Category | Severity | Reproducibility | Date Submitted | Last Update | ||||
0001265 | [Resin] | minor | always | 07-24-06 09:09 | 09-08-06 10:23 | ||||
Reporter | ferg | View Status | public | ||||||
Assigned To | |||||||||
Priority | normal | Resolution | fixed | ||||||
Status | closed | Product Version | |||||||
Summary | 0001265: EJB/Amber create/getter/setter issues | ||||||||
Description |
(rep by Gary Zhu) http://bugs.caucho.com/view.php?id=971 [^] EJB setter methods still do not work until after a getter is called. Hmm. The test case for that situation is passing, so I'm not sure what the difference it. We are creating EJB and then setting some fields in the same transaction, I suspect that might be the cause. I stepped through the following code, when 1. EJB was created and 2. non of the getter methods is called and 3. code was still in the same session bean then __caucho_dirtyMask_1 was not 0 __caucho_session.update(this) was not invoked and setter value was not saved. As soon as a getter method was called, __caucho_dirtyMask_1 becomes 0. ========= code ============= EquipmentCMP_Amber.class: public void setSellerIdField(int v) { int oldValue = __caucho_super_get_sellerIdField(); if (oldValue == v && (__caucho_loadMask_0 & 1L) != 0) return; __caucho_super_set_sellerIdField(v); long oldMask = __caucho_dirtyMask_1; __caucho_dirtyMask_1 |= 33554432L; if (__caucho_session != null && oldMask == 0) __caucho_session.update(this); } =========end of code ============== Our (code change) workaround has been to invoke getter method right after EJB creation. |
||||||||
Additional Information | |||||||||
Attached Files | |||||||||
|
Mantis 1.0.0rc3[^]
Copyright © 2000 - 2005 Mantis Group
71 total queries executed. 27 unique queries executed. |