This website uses cookies to ensure you get the best experience. Learn More.
Caption
Liferay Portal and Liferay Commerce share the same Bundle and Docker image. To get started using either Liferay Portal or Liferay Commerce, choose the best download option suited for your environment below.
To use Liferay Portal 7.4 GA45:
docker run -it -p 8080:8080 liferay/portal:7.4.3.45-ga45
For more information on using the official Liferay docker image see the liferay/portal repo on Docker Hub.
If you are used to binary releases, you can find the Liferay Portal 7.4 GA45 and Liferay Commerce 4.0 GA45 release on the download page. If you need additional files (for example, the source code, or dependency libraries), visit the release page.
For development using the Liferay Platform, update Liferay Workspace to use the latest dependencies, by adding the following line to the build.gradle file:
dependencies { compileOnly group: "com.liferay.portal", name: "release.portal.api" }
All portal dependencies are now defined with a single declaration. When using an IDE such as Eclipse or IntelliJ all apis are immediately available in autocomplete for immediate use.
By setting a product info key property it will be possible to update all dependencies to a new version by updating the liferay.workspace.product property in the liferay workspace projects gradle.property file:
liferay.workspace.product = portal-7.4-ga45
When using an IDE such as Eclipse or IntelliJ all apis are immediately available in autocomplete for immediate use.
Users to have access to the object entry files quickly, without needing to go to the entry details
https://issues.liferay.com/browse/LPS-162245
Now users can reorder the fragment sets they have available for page building however they want, so that they can place their most used fragment sets on top and have a much better and faster page building experience.
https://issues.liferay.com/browse/LPS-158737
Users can now mark the fragments and widgets they use more often as Favorites, so that they can access them faster and have a better page building experience.
With this feature, users are able to create fully customizable forms on Content Pages, then map them to Liferay custom Objects. This way they can set up their custom applications and style the look and feel of their pages with a single set of tools: the page editor and the fragments. At the same time, they can provide a seamless and consistent experience for their users as they go through the different screens of their applications, increasing both engagement and conversion.
Customers can also develop their own form components to be used in the Page editor.
https://issues.liferay.com/browse/LPS-150277 https://issues.liferay.com/browse/LPS-149720 https://issues.liferay.com/browse/LPS-157738
This new feature provide a portlet UI and service to add/update/remove OAuth Clients (only for OIDC at the moment.)
https://issues.liferay.com/browse/LPS-139642
This feature allows portal to issue access token in JWT.
JWT access token is widely used in varies of scenario to reduce network traffic and simplify development, so developers needs this for resource accessing. LXC for example.
https://issues.liferay.com/browse/LPS-157790
Administrators can track the start and the end of reindex actions (full reindex, single type reindex and spell-check dictionaries reindex) for each Virtual Instance (i.e., Company) in the system. The new log entries are present by default, identified by company, with no adjustment to the logging settings of the system.
Log entries like those below are printed when performing reindex actions on a system with two Virtual Instances:
Reindex all search indexes:
2022-09-23 17:54:26.037 INFO [liferay/background_task-2][ReindexPortalBackgroundTaskExecutor:57] Start reindexing company 0 2022-09-23 17:54:35.446 INFO [liferay/background_task-2][ReindexPortalBackgroundTaskExecutor:76] Finished reindexing company 0 2022-09-23 17:54:35.446 INFO [liferay/background_task-2][ReindexPortalBackgroundTaskExecutor:57] Start reindexing company 20097 2022-09-23 17:54:43.658 INFO [liferay/background_task-2][ReindexPortalBackgroundTaskExecutor:76] Finished reindexing company 20097 2022-09-23 17:54:43.659 INFO [liferay/background_task-2][ReindexPortalBackgroundTaskExecutor:57] Start reindexing company 43612 2022-09-23 17:54:50.914 INFO [liferay/background_task-2][ReindexPortalBackgroundTaskExecutor:76] Finished reindexing company 43612
Reindex a single model (e.g., AccountEntry):
12022-09-23 17:54:55.343 INFO [liferay/background_task-3][ReindexSingleIndexerBackgroundTaskExecutor:125] Start reindexing company 20097 for class name com.liferay.account.model.AccountEntry 22022-09-23 17:54:55.384 INFO [liferay/background_task-3][ReindexSingleIndexerBackgroundTaskExecutor:150] Finished reindexing company 20097 for class name com.liferay.account.model.AccountEntry 32022-09-23 17:54:55.385 INFO [liferay/background_task-3][ReindexSingleIndexerBackgroundTaskExecutor:125] Start reindexing company 43612 for class name com.liferay.account.model.AccountEntry 42022-09-23 17:54:55.394 INFO [liferay/background_task-3][ReindexSingleIndexerBackgroundTaskExecutor:150] Finished reindexing company 43612 for class name com.liferay.account.model.AccountEntry 5
Reindex the spell-check dictionaries
12022-09-23 18:03:18.736 INFO [http-nio-8080-exec-1][BaseSpellCheckIndexWriter:278] Start indexing dictionary com/liferay/portal/search/dependencies/spellchecker/en_US.txt for company 0 22022-09-23 18:03:25.004 INFO [http-nio-8080-exec-1][BaseSpellCheckIndexWriter:301] Finished indexing dictionary com/liferay/portal/search/dependencies/spellchecker/en_US.txt for company 0 32022-09-23 18:03:25.006 INFO [http-nio-8080-exec-1][BaseSpellCheckIndexWriter:278] Start indexing dictionary com/liferay/portal/search/dependencies/spellchecker/es_ES.txt for company 0 42022-09-23 18:03:27.922 INFO [http-nio-8080-exec-1][BaseSpellCheckIndexWriter:301] Finished indexing dictionary com/liferay/portal/search/dependencies/spellchecker/es_ES.txt for company 0 52022-09-23 18:03:27.925 INFO [http-nio-8080-exec-1][BaseSpellCheckIndexWriter:278] Start indexing dictionary com/liferay/portal/search/dependencies/spellchecker/en_US.txt for company 20097 62022-09-23 18:03:34.106 INFO [http-nio-8080-exec-1][BaseSpellCheckIndexWriter:301] Finished indexing dictionary com/liferay/portal/search/dependencies/spellchecker/en_US.txt for company 20097 72022-09-23 18:03:34.107 INFO [http-nio-8080-exec-1][BaseSpellCheckIndexWriter:278] Start indexing dictionary com/liferay/portal/search/dependencies/spellchecker/es_ES.txt for company 20097 82022-09-23 18:03:37.209 INFO [http-nio-8080-exec-1][BaseSpellCheckIndexWriter:301] Finished indexing dictionary com/liferay/portal/search/dependencies/spellchecker/es_ES.txt for company 20097 92022-09-23 18:03:37.214 INFO [http-nio-8080-exec-1][BaseSpellCheckIndexWriter:278] Start indexing dictionary com/liferay/portal/search/dependencies/spellchecker/en_US.txt for company 43612 102022-09-23 18:03:43.596 INFO [http-nio-8080-exec-1][BaseSpellCheckIndexWriter:301] Finished indexing dictionary com/liferay/portal/search/dependencies/spellchecker/en_US.txt for company 43612 112022-09-23 18:03:43.597 INFO [http-nio-8080-exec-1][BaseSpellCheckIndexWriter:278] Start indexing dictionary com/liferay/portal/search/dependencies/spellchecker/es_ES.txt for company 43612 122022-09-23 18:03:47.373 INFO
https://issues.liferay.com/browse/LPS-161460
We have added a few new Template Context Variables to the Search Results widget so now they can be used when creating a custom widget template:
Modified Date: display the modified date.
Modified User Name: display the name of the user who last modified the document.
Modified User Portrait: display the string of the user's portrait URL who last modified the document.
Creator User Portrait: display the string of the creator user's portrait URL.
Publish Date: display the publish date.
https://issues.liferay.com/browse/LPS-157872
The ticket LPS-119049 hid all exception data leaking from the TunnelServlet. However, many features, like remote staging actually used the exceptions to show descriptive error messages to the users about the issues they receive when doing remote staging operations: activating/deactivating remote staging or starting a remote publish process.
Some issues, like LPS-126729 could be worked around without sending the exception data back, but some others required the actual data to show the correct error message.
So from now you can set this parameter in the portal-ext.properties file to hide/show the exceptions thrown in the methods called through the TunnelServlet (default value is false, this means that the exceptions will be shown by default):
portal-ext.properties
tunnel.servlet.hide.exception.data=true
The default value originally intended to be true, but it has been changed. See Brian’s comment on the PR: Lps 154557 fix 2 by shuyangzhou · Pull Request #121080 · brianchandotcom/liferay-portal
https://issues.liferay.com/browse/LPS-154557
This Story doesn't contain technical changes, only the UI changed.
The UI changes are described in the Story.
https://issues.liferay.com/browse/LPS-156640
All documentation for Liferay Portal and Liferay Commerce can now be found on our documentation site: learn.liferay.com. For more information on upgrading to Liferay Portal 7.4 GA45 see refer to the Upgrade Overview.
Liferay's general policy is to test Liferay Portal and Liferay Commerce against newer major releases of operating systems, open source app servers, browsers, and open source databases (we regularly update the bundled upstream libraries to fix bugs or take advantage of new features in the open source we depend on).
Liferay Portal 7.4 GA45 and Liferay Commerce 4.0 GA45 were tested extensively for use with the following Application/Database Servers:
Application Server
Tomcat 9.0
Wildfly 18.0, 23.0
Database
MySQL 5.7, 8.0
MariaDB 10.2, 10.4, 10.6
PostgreSQL 12.x, 13.x, 14.x
JDK
IBM J9 JDK 8
Oracle JDK 8
Oracle JDK 11
All Java Technical Compatibility Kit (TCK) compliant builds of Java 11 and Java 8
Search Engine Compatibility Matrix
Source is available as a zip archive on the release page, or on its home on GitHub. If you're interested in contributing, take a look at our contribution page.
If you believe you have encountered a bug in the new release you can report your issue by following the bug reporting instructions.
Support is provided by our awesome community. Please visit helping a developer page for more details on how you can receive support.
Fixes
List of known issues