Message Boards
Liferay 6.2. Build-service falla en many-to-many
Serguei Carrascosa Cervilla, modified 6 Years ago.
Liferay 6.2. Build-service falla en many-to-many
New Member Posts: 6 Join Date: 3/18/16 Recent Posts
Hola,
Hemos configurado el service.xml para crear dos entidades con una relación tipo many-to-many.
Después de hacer el build-service el código autogenerado del servicio es incorrecto y no compila. Parece ser que el problema surge de la entidad con una clave primaria compuesta:
Sin embargo no hemos tenido ningun problema en generar este tipo de relaciones con entidades cuyas claves primarias eran simples. ¿Es posible que la relación many-to-many no esté soportada cuando se dan entidades con claves primarias compuestas?
Muchas gracias.
Hemos configurado el service.xml para crear dos entidades con una relación tipo many-to-many.
<entity name="Pago" local-service="true" remote-service="false" uuid="true" json-enabled="false" table="POEJ_Pagos">
<column name="solicitudAyudaId" type="long" primary="true" json-enabled="false"></column>
<column name="numero" type="int" primary="true" json-enabled="false"></column>
<column name="createDate" type="Date"></column>
<column name="importe" type="double"></column>
<column name="causaDenegacion" type="Collection" entity="CausaDenegacionPago" mapping-table="RegistroPago_CausaDenegacion" />
<finder name="SolicitudAyuda" return-type="Collection">
<finder-column name="solicitudAyudaId"></finder-column>
</finder>
</entity>
<entity name="CausaDenegacionPago" local-service="true" remote-service="false" table="POEJ_Causa_Denegacion_Pago" json-enabled="false">
<column name="causaDenegacionPagoId" type="long" primary="true" />
<column name="descripcion" type="String"></column>
<column name="pago" type="Collection" entity="Pago" mapping-table="RegistroPago_CausaDenegacion" />
</entity>
Después de hacer el build-service el código autogenerado del servicio es incorrecto y no compila. Parece ser que el problema surge de la entidad con una clave primaria compuesta:
apper<l,r> cannot be applied to given types;
[ERROR] required: long,long
[ERROR] found: PagoPK,long
[ERROR] reason: actual argument PagoPK cannot be converted to long by method invocation conversion
</l,r>
Sin embargo no hemos tenido ningun problema en generar este tipo de relaciones con entidades cuyas claves primarias eran simples. ¿Es posible que la relación many-to-many no esté soportada cuando se dan entidades con claves primarias compuestas?
Muchas gracias.