dev@glassfish.java.net

Re: NetBeans doesn't import tables with no primary key

From: Marina Vatkina <Marina.Vatkina_at_Sun.COM>
Date: Tue, 01 Aug 2006 12:52:40 -0700

Hi Cheng,

NetBeans will have hard time distinguishing between unique keys for
the purpose of PK and for e.g. 1-1 relationship (or any other unique
key for that matter). But NetBeans should allow (if it doesn't) to map
existing classes to existing tables with entity PKs mapped to unique
keys.

Gordon, is TopLink Essentials tested with Informix 7?

thanks,
-marina

Cheng Fang wrote:
> Thanks, Gordon. I've posted your reply to the forum. I also tried this
> usecase on Toplink/Hibernate + J2SE, and it does work.
>
> Now the question from the user is, NetBeans 5.5 beta 2 does not support
> entity class generation from tables with no primary key. In the
> generate-entity-class-from-table wizard, all tables with no primary key
> are grayed out.
>
> Why would NetBeans disable a feature supported by Glassfish, Toplink and
> Hiberante? Can we enable it?
>
> Cheng
>
>
>
>
> Gordon Yorke wrote:
>
>> Hello Cheng,
>> If they know which columns correspond to the Unique Index they can
>> map these as the PK's in EJB3 even though they are not specified as
>> PK's in their tables. These @Id mappings would satisfy the EJB3.0
>> requirements but their application would not be required to use these
>> PK's if they did not apply. All queries could be JPA queries.
>> --Gordon
>>
>> -----Original Message-----
>> From: Cheng.Fang_at_Sun.COM [mailto:Cheng.Fang_at_Sun.COM]On Behalf Of Cheng
>> Fang
>> Sent: Monday, July 31, 2006 3:30 PM
>> To: dev_at_glassfish.dev.java.net
>> Subject: primary tables with no primary key supported in EJB 3?
>>
>>
>> Follow-up question for the user: is this supported in Glassfish EJB 3
>> (Persistence)?
>>
>> http://gceclub.sun.com.cn/NASApp/sme/jive/thread.jsp?forum=22&thread=39131
>>
>>
>> The reason he/she is asking this question is, his company used C and
>> Informix 7 before, and it has been working pretty well for 7 years.
>> They don't know why these tables have no primary key (most only have
>> unique index), since original developers have left.
>>
>> Now they are working on a new project, and evaluating EJB 3
>> (persistence) for possible use. They need to use these legacy data, but
>> don't want change the database structure. They have hundreds of tables
>> like this and some talbes contain several million records.
>>
>> In Glassfish EJB 3, is it possible to loosen the validation and allow
>> these apps to deploy and run, maybe with some sort of warning? The user
>> said situations like this is not uncommon. And any advice in general?
>>
>> Their app deploys and runs fine on Jboss.
>>
>> Thanks,
>>
>> Cheng
>>
>>
>> Marina Vatkina wrote:
>>
>>
>>
>>> No, we do not support primary tables without primary keys for CMP 2.1.
>>>
>>> regards,
>>> -marina
>>>
>>> Cheng Fang wrote:
>>>
>>>
>>>
>>>> This user is using ejb 2.1 on SJSAS PE 9. The Student table doesn't
>>>> designate a primary key, but in ejb code he uses 'id' as if it was a
>>>> primary key. The app failed to deploy on SJSAS 9. But he was able to
>>>> deploy and run the same app on JBoss.
>>>>
>>>> error messages (hope you can tell something from a few keywords)
>>>> Deploying application in domain failed; 运行 EJBC 时发生错误 -- 来自
>>>> EJB 编译器的致命错误 -- JDO74025: JDOCodeGenerator: 验证应用程序
>>>> “EJBModule1” 的模块“EJBModule1”中的 CMP Bean“Fhdsckfhz”时捕获异常:
>>>> JDO72335: 如果与生 成的类 testsss.FhdsckfhzBean96247497_JDOState 对应
>>>> 的 Bean 的表 fhdsckfhz 被映射为主表, 则它必须有主键。请选择其它主表或
>>>> 验证模式文件的内容是否正确。
>>>>
>>>> Once he specified 'id' as primary key in database table, it deploys
>>>> and runs fine. So the question is, does SJSAS 9 ejb 2.x support
>>>> tables with no primary key?
>>>>
>>>> More details are here:
>>>> http://gceclub.sun.com.cn/NASApp/sme/jive/thread.jsp?forum=22&thread=39131
>>>>
>>>>
>>>>
>>>>
>>>
>>> ---------------------------------------------------------------------
>>> To unsubscribe, e-mail: dev-unsubscribe_at_glassfish.dev.java.net
>>> For additional commands, e-mail: dev-help_at_glassfish.dev.java.net
>>>
>>>
>>
>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: dev-unsubscribe_at_glassfish.dev.java.net
>> For additional commands, e-mail: dev-help_at_glassfish.dev.java.net
>>
>>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe_at_glassfish.dev.java.net
> For additional commands, e-mail: dev-help_at_glassfish.dev.java.net
>