掲示板

Service-builder: customizar el generador de id.

6年前 に Serguei Carrascosa Cervilla によって更新されました。

Service-builder: customizar el generador de id.

New Member 投稿: 6 参加年月日: 16/03/18 最新の投稿
Buenos días,

Estoy tratando de implementar un generador de claves primarias que devuelva un String siguiendo el patrón "VAC1, VAC2, VAC3,...". Según la definicion del service-builder puedes configurarlo de la siguiente manera:


<column name="id" type="String" primary="true" id-type="class" id-param="com.liferay.counter.service.persistence.VACGenerator" />


Y VACGenerator.java :


public class VACGenerator implements IdentifierGenerator {
	
	private final static String COD_CERT_PREFIX = "VAC";
	
	@Override
	public Serializable generate(SessionImplementor arg0, Object arg1) throws HibernateException {
		
		Certificacion certificacion = CertificacionLocalServiceUtil.getLast();
		String codiCertificacio = COD_CERT_PREFIX + 1;
		if (certificacion != null) {
			String codi = certificacion.getCodigoCertificacion();
			int numCertif = Integer.parseInt(codi.substring(3));
			codiCertificacio = COD_CERT_PREFIX + ++numCertif;
		}
		return codiCertificacio;
	}
}


Después de hacer build-service, al desplegar el servicio tengo la siguiente excepción:

Caused by: org.hibernate.MappingException: Could not interpret id generator strategy [com.liferay.counter.service.persistence.VACGenerator]
	at org.hibernate.id.factory.DefaultIdentifierGeneratorFactory.getIdentifierGeneratorClass(DefaultIdentifierGeneratorFactory.java:137)
	at org.hibernate.id.factory.DefaultIdentifierGeneratorFactory.createIdentifierGenerator(DefaultIdentifierGeneratorFactory.java:108)
	... 45 more


Parece que no lo estoy configurando correctamente. ¿Alguien ha implementado con éxito un generador de id en el service-builder?

Muchas gracias.
thumbnail
3年前 に Eduardo P. García によって更新されました。

RE: Service-builder: customizar el generador de id. (回答)

Regular Member 投稿: 157 参加年月日: 12/03/16 最新の投稿
Esta consulta fue resuelta en el siguiente hilo: https://web.liferay.com/es/community/forums/-/message_boards/message/95067464