在WSAD5.1下的EJB关系查询的问题

25251325 2003-10-19 05:03:33
我有两个表:product和productproperty表,其中product表的主键是companyid、productid,而productproperty表的主键是:companyid、productid、warehouseid。companyid和productid是外键。在WSAD5.1下自底向上创建EJB时,WSAD5.1会帮我创建好两个EJB的关系:Productproperty_To_Product。
现在,我创建这样的查询:我要根据companyid查询所有的的productproperty表的内容,EJBQL的语句是:select object(o) from Productproperty o where o.fk_prodproperty_1_coid = ?1,但是保存时却出现了这样的错误:WQRY0036E: Productproperty o does not have a field fk_prodproperty_1_coid。
但是我的部署代码中很明显的有fk_prodproperty_1_coid的CMP的,其部署代码如下:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE ejb-jar PUBLIC "-//Sun Microsystems, Inc.//DTD Enterprise JavaBeans 2.0//EN" "http://java.sun.com/dtd/ejb-jar_2_0.dtd">
<ejb-jar id="ejb-jar_ID">
<display-name>Test</display-name>
<enterprise-beans>
<entity id="ContainerManagedEntity_1066527363484">
<ejb-name>Product</ejb-name>
<local-home>com.elite.erp.ejb.cmp.ProductLocalHome</local-home>
<local>com.elite.erp.ejb.cmp.ProductLocal</local>
<ejb-class>com.elite.erp.ejb.cmp.ProductBean</ejb-class>
<persistence-type>Container</persistence-type>
<prim-key-class>com.elite.erp.ejb.cmp.ProductKey</prim-key-class>
<reentrant>False</reentrant>
<cmp-version>2.x</cmp-version>
<abstract-schema-name>Product</abstract-schema-name>
<cmp-field id="CMPAttribute_1066527363593">
<field-name>companyid</field-name>
</cmp-field>
<cmp-field id="CMPAttribute_1066527363609">
<field-name>productid</field-name>
</cmp-field>
...//其他些非键CMP
</entity>
<entity id="ContainerManagedEntity_1066527363500">
<ejb-name>Productproperty</ejb-name>
<local-home>com.elite.erp.ejb.cmp.ProductpropertyLocalHome</local-home>
<local>com.elite.erp.ejb.cmp.ProductpropertyLocal</local>
<ejb-class>com.elite.erp.ejb.cmp.ProductpropertyBean</ejb-class>
<persistence-type>Container</persistence-type>
<prim-key-class>com.elite.erp.ejb.cmp.ProductpropertyKey</prim-key-class>
<reentrant>False</reentrant>
<cmp-version>2.x</cmp-version>
<abstract-schema-name>Productproperty</abstract-schema-name>
<cmp-field>
<field-name>fk_prodproperty_1_companyid</field-name>
</cmp-field>
<cmp-field>
<field-name>fk_prodproperty_1_productid</field-name>
</cmp-field>
<cmp-field id="CMPAttribute_1066527364188">
<field-name>warehouseid</field-name>
</cmp-field>
...//其他些非键CMP
</entity>
<relationships>
<ejb-relation>
<ejb-relation-name>Productproperty_To_Product</ejb-relation-name>
<ejb-relationship-role id="EJBRelationshipRole_1066527364422">
<ejb-relationship-role-name>fk_prodproperty_1</ejb-relationship-role-name>
<multiplicity>Many</multiplicity>
<relationship-role-source>
<ejb-name>Productproperty</ejb-name>
</relationship-role-source>
<cmr-field>
<cmr-field-name>fk_prodproperty_1</cmr-field-name>
</cmr-field>
</ejb-relationship-role>
<ejb-relationship-role id="EJBRelationshipRole_1066527364423">
<ejb-relationship-role-name>productproperty</ejb-relationship-role-name>
<multiplicity>One</multiplicity>
<relationship-role-source>
<ejb-name>Product</ejb-name>
</relationship-role-source>
<cmr-field>
<cmr-field-name>productproperty</cmr-field-name>
<cmr-field-type>java.util.Collection</cmr-field-type>
</cmr-field>
</ejb-relationship-role>
</ejb-relation>
</relationships>
</ejb-jar>
请问这是什么原因?本人初学WSAD5,能帮我解决问题的,300分相送!!
...全文
40 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
wangmiaonow 2003-11-03
  • 打赏
  • 举报
回复
5.1在哪里有下啊,等不能给偶一份,谢谢passionow@163.com
25251325 2003-10-21
  • 打赏
  • 举报
回复
TO Richchu(Rich Chu) :
因为我是从Productproperty中进行FINDER的,而Productproperty中没有Producr这个CMP/CMR,只有product这个CMR,所以你这方法是行不通的啊
学而优则仕2 2003-10-21
  • 打赏
  • 举报
回复
写错了,Producr--->应该是Product。
如果你用了cmp的关系,是不需要数据库表的键关系的,而是用角色名称代表。就是:
<relationship-role-source>
...
</relationship-role-source>
中的Productproperty以及Product。

p.Productproperty代表了导航关系。
学而优则仕2 2003-10-20
  • 打赏
  • 举报
回复
大概是这样的:
select object(o) from Producr p, IN (p.Productproperty) AS o
where o.companyid =?1
25251325 2003-10-20
  • 打赏
  • 举报
回复
怎么没人回答?解决的另开贴子,500报酬!!!!!
klbt 2003-10-19
  • 打赏
  • 举报
回复
超长的问题,帮你顶。

2,633

社区成员

发帖
与我相关
我的任务
社区描述
WebSphere 是 IBM 的软件平台。它包含了编写、运行和监视全天候的工业强度的随需应变 Web 应用程序和跨平台、跨产品解决方案所需要的整个中间件基础设施,如服务器、服务和工具。
社区管理员
  • WebSphere社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧