The easiest solution of this issue is to just modify your bean's persistenceImpl class's method name afterPropertiesSet: -
/**
* Initializes the MyBean persistence.
*/
public void afterPropertiesSet() {
String[] listenerClassNames = StringUtil.split(GetterUtil.getString(
com.liferay.portal.kernel.util.PropsUtil.get(
"value.object.listener.com.test.model.MyBean")));
if (listenerClassNames.length > 0) {
try {
List<ModelListener<MyBean>> listenersList = new ArrayList<ModelListener<MyBean>>();
for (String listenerClassName : listenerClassNames) {
listenersList.add((ModelListener<MyBean>)InstanceFactory.newInstance(PortletClassLoaderUtil.getClassLoader(), listenerClassName, (Class<?>[])null, (Object[])null)); }
listeners = listenersList.toArray(new ModelListener[listenersList.size()]);
}
catch (Exception e) {
_log.error(e);
}
}
}
For completely fixed this issue just change the liferay.src\portal-impl\src\com\liferay\portal\tools\servicebuilder\dependencies\persistence_impl.ftl: -
/**
* Initializes the ${entity.humanName} persistence.
*/
public void afterPropertiesSet() {
String[] listenerClassNames = StringUtil.split(GetterUtil.getString(${propsUtil}.get("value.object.listener.${packagePath}.model.${entity.name}")));
if (listenerClassNames.length > 0) {
try {
List<ModelListener<${entity.name}>> listenersList = new ArrayList<ModelListener<${entity.name}>>();
for (String listenerClassName : listenerClassNames) {
listenersList.add((ModelListener<${entity.name}>)InstanceFactory.newInstance(PortletClassLoaderUtil.getClassLoader(), listenerClassName, (Class<?>[])null, (Object[])null));
}
listeners = listenersList.toArray(new ModelListener[listenersList.size()]);
}
catch (Exception e) {
_log.error(e);
}
}
Cheers and happy coding............
Please sign in to flag this as inappropriate.