gpt4 book ai didi

java - session.js 文件(OOB)覆盖 Liferay 7。

转载 作者:行者123 更新时间:2023-12-02 02:52:53 25 4
gpt4 key购买 nike

我正在致力于将我的项目从 liferay 6x 迁移到 lifeary 7x。任务是覆盖 OOB(开箱即用)文件 session.js 并自定义 session 警告/错误消息。我已经覆盖了 Language_en.properties 以进行错误/警告的文本​​自定义,效果很好。但无法覆盖 session 。 session.js 文件的 github 位置为 liferay-portal/modules/apps/foundation/frontend-js/frontend-js-web/src/main/resources/META-INF/resources/liferay/session.js。我们知道,钩子(Hook)功能在 Lifeary 7 中已被弃用,并且也尝试过 jsp 覆盖,但没有成功。请帮助我完成如何在 liferay 7 平台中覆盖 session.js 文件的步骤。

提前致谢和赞赏。

最佳答案

有点晚了,但我刚刚解决了这个问题。

您需要做的就是使用 bnd.bnd 描述符、config.js 配置文件和您自己的 session-custom.js 创建 JAR 模块

对于 Maven,我有这个项目结构:

module-name
|- src.main.resources.META-INF.resources.js
| |- config.js
| |- session-custom.js
|- bnd.bnd
|- pom.xml

bnd.bnd

Liferay-JS-Config: /META-INF/resources/js/config.js
Web-ContextPath: /session-custom

config.js

;(function() {
console.log('Loading custom AUI modules configuration');

var base = MODULE_PATH + '/js/';

AUI().applyConfig(
{
groups: {
mymodulesoverride: {
base: base,
combine: Liferay.AUI.getCombine(),
filter: Liferay.AUI.getFilterConfig(),
modules: {
'liferay-session-customized': {
path: 'session-custom.js',
condition: {
name: 'liferay-session-customized',
trigger: 'liferay-session',
when: 'instead'
},
requires: [
'aui-io-request',
'aui-timer',
'cookie',
'liferay-notification'
]
}
},
root: base
}
}
}
);
})();

pom.xml

<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
http://maven.apache.org/xsd/maven-4.0.0.xsd"
>

<!-- ... -->

<packaging>jar</packaging>

<dependencies>
<dependency>
<groupId>biz.aQute.bnd</groupId>
<artifactId>biz.aQute.bndlib</artifactId>
<version>3.1.0</version>
<scope>provided</scope>
</dependency>
</dependencies>

<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.1</version>
<configuration>
<source>1.8</source>
<target>1.8</target>
</configuration>
</plugin>

<plugin>
<artifactId>maven-resources-plugin</artifactId>
<version>2.5</version>
<configuration>
<encoding>UTF-8</encoding>
</configuration>
</plugin>
</plugins>
</build>
</project>

有用的链接:

Overriding AUI module

CONFIGURING MODULES FOR LIFERAY PORTAL’S LOADERS

关于java - session.js 文件(OOB)覆盖 Liferay 7。,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43534810/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com