Liferay-用于GroupWrapper的钩子
|
我正在尝试覆盖com.liferay.portal.model.Group中的getDescriptiveName()方法
我找到了一个包装器(com.liferay.portal.model.GroupWrapper),所以我尝试按照文档中的说明编写一个钩子:
liferay-hook.xml
:
<service>
<service-type>com.liferay.portal.model.GroupWrapper</service-type>
<service-impl>fr.villedeniort.hook.expando.GroupWrapperImpl</service-impl>
</service>
fr.villedeniort.hook.expando.GroupWrapperImpl.java
:
public class GroupWrapperImpl extends GroupWrapper {
public GroupWrapperImpl(Group group) {
super(group);
}
@Override
public java.lang.String getDescriptiveName()
throws com.liferay.portal.kernel.exception.PortalException,
com.liferay.portal.kernel.exception.SystemException {
return super.getDescriptiveName();
}
部署钩子后,将引发异常:
java.lang.NoSuchMethodException: fr.villedeniort.hook.expando.GroupWrapperImpl.<init>(com.liferay.portal.model.GroupWrapper)
我浏览了发现在此部分中断的代码,这是我忽略的原因:
Constructor<?> serviceImplConstructor = serviceImplClass.getConstructor(new Class<?>[] {serviceTypeClass});
此时,变量具有以下值:
serviceType \"com.liferay.portal.model.GroupWrapper\" (id=14829)
serviceImpl \"fr.villedeniort.hook.expando.GroupWrapperImpl\" (id=14830)
serviceTypeClass Class<T> (com.liferay.portal.model.GroupWrapper) (id=14831)
serviceImplClass Class<T> (fr.villedeniort.hook.expando.GroupWrapperImpl) (id=14832)
你有什么主意吗?
谢谢!
没有找到相关结果
已邀请:
2 个回复
扦帽次杏
蕉衫