Fórumok

Table mapping problem when used mapping-key in Liferay6.2

Munikanta Singh, módosítva 10 év-val korábban

Table mapping problem when used mapping-key in Liferay6.2

New Member Bejegyzések: 21 Csatlakozás dátuma: 2014.02.27. Legújabb bejegyzések
Hi
I am using Liferay6.2 and I tried to make relationship between two tables Author and Post as following
 <service-builder package-path="com.liferay.sample">
	<author>XXXX</author>
	<namespace>SAMPLE</namespace>
	<entity name="Author" local-service="true">
        <column name="authorId" type="long" primary="true" />
        <column name="name" type="String" />
        <column name="posts" type="Collection" entity="Post" mapping-key="authorId" />
    </entity>
    <entity name="Post" local-service="true">
        <column name="postId" type="long" primary="true" />
        <column name="title" type="String" />
        <column name="content" type="String" />
        <column name="authorId" type="long" />
    </entity>
  </service-builder>


but when I do Build Services from eclipse IDE the build get fail with the following exception :

com.liferay.portal.kernel.xml.DocumentException: Error on line 14 of document : Attribute "mapping-key" must be declared for element type "column". Nested exception: Attribute "mapping-key" must be declared for element type "column".
[echo] at com.liferay.portal.xml.SAXReaderImpl.read(SAXReaderImpl.java:426)
[echo] at com.liferay.portal.xml.SAXReaderImpl.read(SAXReaderImpl.java:444)
[echo] at com.liferay.portal.kernel.xml.SAXReaderUtil.read(SAXReaderUtil.java:161)
[echo] at com.liferay.portal.tools.servicebuilder.ServiceBuilder.<init>(ServiceBuilder.java:632)
[echo] at com.liferay.portal.tools.servicebuilder.ServiceBuilder.main(ServiceBuilder.java:228)
[echo] Caused by: org.dom4j.DocumentException: Error on line 14 of document : Attribute "mapping-key" must be declared for element type "column". Nested exception: Attribute "mapping-key" must be declared for element type "column".
[echo] at org.dom4j.io.SAXReader.read(SAXReader.java:482)
[echo] at org.dom4j.io.SAXReader.read(SAXReader.java:365)
[echo] at com.liferay.portal.xml.SAXReaderImpl.read(SAXReaderImpl.java:423)
[echo] ... 4 more


Is it wrong what I am doing and if it is wrong what should be the proper way ?

Thanks
thumbnail
Harish Kumar, módosítva 10 év-val korábban

RE: Table mapping problem when used mapping-key in Liferay6.2

Expert Bejegyzések: 483 Csatlakozás dátuma: 2010.07.31. Legújabb bejegyzések
Hi Munikanta,

Extracted from liferay-service-builder_6_2_0.dtd


The mapping-key attribute is no longer supported. See LPS-32250 for more
information. The value of the mapping-key is now always assumed to be the column
entity's primary key.
thumbnail
meera prince, módosítva 10 év-val korábban

RE: Table mapping problem when used mapping-key in Liferay6.2

Liferay Legend Bejegyzések: 1111 Csatlakozás dátuma: 2011.02.08. Legújabb bejegyzések
Hi
Please have look into following post
http://www.liferaysavvy.com/2014/01/liferay-service-builder-many-to-many_3547.html

Regards,
Meera Prince
thumbnail
Fahad v, módosítva 9 év-val korábban

RE: Table mapping problem when used mapping-key in Liferay6.2

Junior Member Bejegyzések: 35 Csatlakozás dátuma: 2014.07.14. Legújabb bejegyzések
Hi,
Can i add like this
<column name="faqId" type="long" entity="BlogsEntry" mapping-table="BlogsEntry"></column>


i need to make a foreign key relation with liferay's "BlogsEntry" Table

if i add like this and make build service i am getting and error
  [delete] Deleting: C:\liferay-developer-studio\liferay-plugins-sdk-6.2\portlets\survey-portlet\build-service-classpath.jar
     [echo] Loading jar:file:/C:/liferay-portal-tomcat-6.2-ee-sp6-20140703103932543/liferay-portal-6.2-ee-sp6/tomcat-7.0.42/webapps/ROOT/WEB-INF/lib/portal-impl.jar!/system.properties
     [echo] Loading jar:file:/C:/liferay-portal-tomcat-6.2-ee-sp6-20140703103932543/liferay-portal-6.2-ee-sp6/tomcat-7.0.42/webapps/ROOT/WEB-INF/lib/portal-impl.jar!/portal.properties
     [echo] Loading jar:file:/C:/liferay-portal-tomcat-6.2-ee-sp6-20140703103932543/liferay-portal-6.2-ee-sp6/tomcat-7.0.42/webapps/ROOT/WEB-INF/lib/portal-impl.jar!/portal-patched.properties
     [echo] Loading jar:file:/C:/liferay-portal-tomcat-6.2-ee-sp6-20140703103932543/liferay-portal-6.2-ee-sp6/tomcat-7.0.42/webapps/ROOT/WEB-INF/lib/portal-impl.jar!/com/liferay/portal/tools/dependencies/portal-tools.properties
     [echo] Building Favourite
     [echo] 10:03:03,306 ERROR [main][runtime:96] Template processing error: "Method public java.util.List com.liferay.portal.tools.servicebuilder.ServiceBuilder.getMappingEntities(java.lang.String) throws java.io.IOException threw an exception when invoked on com.liferay.portal.tools.servicebuilder.ServiceBuilder@4cdf7e"
     [echo] Method public java.util.List com.liferay.portal.tools.servicebuilder.ServiceBuilder.getMappingEntities(java.lang.String) throws java.io.IOException threw an exception when invoked on com.liferay.portal.tools.servicebuilder.ServiceBuilder@4cdf7e
\



is there any way to relate the liferay default table and with my entity ?