2017-04-21 30 views
0

我正在將我的項目從liferay 6x遷移到Lifetime 7x。任務是重寫OOB(out of box)文件session.js並自定義會話警告/錯誤消息。我已經覆蓋Language_en.properties文本自定義錯誤/警告正常工作。但無法覆蓋會話。 js文件進行自定義。session.js文件的github位置爲liferay-portal/modules/apps/foundation/frontend -js/frontend -js-web/src/main/resources/META-INF/resources/liferay/session .js。正如我們所知,鉤子特性在Liferay 7中已被棄用,並且也嘗試過使用jsp override,但沒有獲得成功。請幫助我瞭解如何覆蓋liferay 7平臺中的session.js文件。session.js文件(OOB)覆蓋Liferay 7.

謝謝&提前升值。

回答

2

有點晚了,但我剛剛解決了這個問題。

所有你需要做的是建立與bnd.bnd描述JAR模塊,config.js配置文件和你自己的會話custom.js

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