首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >更改现有的Liferay 7类

更改现有的Liferay 7类
EN

Stack Overflow用户
提问于 2016-11-20 20:36:27
回答 2查看 828关注 0票数 0

我需要对救生筏7专用消息portlet做一些更改,我想问:

是否有一种使用模块覆盖救生筏门户类的方法?在我的例子中,我想更改类PrivateMessagingUtil。

诚挚的问候,

丹尼尔

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2018-01-11 07:09:38

您可以自定义Liferay7services,创建一个服务项目类型。您可以使用命令行创建它:

代码语言:javascript
复制
blade create -t service-wrapper -p com.liferay.docs.serviceoverride -c UserLocalServiceOverride -s com.liferay.portal.kernel.service.UserLocalServiceWrapper service-override

我需要未发送给用户的密码更改确认邮件,因此我从类UserLocalServiceWrapper重写UserLocalServiceWrapper方法,并将silentUpdate传递为true。

代码语言:javascript
复制
@Component(
immediate = true,
property = {
},
service = ServiceWrapper.class)

public class UserLocalServiceOverride extends UserLocalServiceWrapper {

public UserLocalServiceOverride() {
    super(null);
}

@Override
public com.liferay.portal.kernel.model.User updatePassword(long userId,
    java.lang.String password1, java.lang.String password2,
    boolean passwordReset)
    throws com.liferay.portal.kernel.exception.PortalException {

    return updatePassword(userId,
            password1, password2,
            passwordReset, true);
}

@Override
public com.liferay.portal.kernel.model.User updatePassword(long userId,
    java.lang.String password1, java.lang.String password2,
    boolean passwordReset, boolean silentUpdate)
    throws com.liferay.portal.kernel.exception.PortalException {

    return super.updatePassword(userId, password1, password2,
        passwordReset, silentUpdate);
}
}

查看Liferay文档中的这个链接:

base/7-0/customizing-liferay-services-service-wrappers

希望它能帮到你。

票数 1
EN

Stack Overflow用户

发布于 2016-11-20 20:59:58

不看代码:如果有扩展点:使用它。当您命名要更改的类时,我假设没有类,因此扩展点可能在调用此方法的其他类中。不是每个类都有一个扩展点。如果其他一切都失败了,您将不得不咬紧牙关,维护一个分支版本--至少它(可能,我还没有看过代码)是一个插件,因此其大小和影响将是相对有限的。

如果您想要做的更改背后有一个很好的故事,请使用开罚单,更好的是使用建议的实现。与组件所有者讨论。

...and在这里分别回答了Daniele的评论问题:我没有看代码--这就是这种问题的问题所在:在一种不同的情绪下,我会拒绝“我想在Xxx类中修改一些代码”的问题,并在评论中提出一个反问题:“你到底想要实现什么?”通常有更好的解决方案,但当提出这样的技术问题时,任何答案都可能是次优的。因为布雷提已经选择了他打算用来解决他的问题的解决方案,所以我坚持我的话--假设他的实际意图,你可以自由地添加一个更好的答案。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/40709094

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档