Liferay has announced the release of the latest milestone version of Liferay 7.0 m7. This means that alpha and beta will go further, in which there will be a correction of errors - the functional changes are not particularly expected. And although it is still about six months before the release, you can already see what is waiting for us in the new version of Liferay.

What is Liferay?
First, a small introduction for those who do not know what
Liferay is . If in a nutshell - this is SharePoint, but in Java and Open-Source.
If it is very simplistic - then this is the most accurate definition. Although all of course is not so simple and so straightforward.
If a little more detail - this is a web portal developed on Java Enterprise Edition technologies (about technologies below) according to the Open Source scheme. At the same time, there is a company that is engaged in the targeted development of this product and provides Enterprise support (already for money). Liferay can be applied
- and classically - as an internal corporate portal (organization of teamwork of employees) or corporate social network,
- and to create external sites (one of the examples is the site of the mobile operator Yota , recently mentioned in Habré),
- or you can use it as a platform for developing your own applications (various B2B and B2C solutions are very good for it).
You can read more on the
Liferay website itself or
here (in Russian) .
Architecture changes
The main innovation, due to which the new version will be 7.0 and not (for example) 6.3 is the transition to OSGI. This is a huge change in terms of the internal architecture (and the whole ecosystem around Liferay, as this entails changes in the development of plug-ins). Once upon a time, Liferay was based on EJB. The EJBs were second then, they were big and heavy, and required large and heavy servers to run (at least JBoss) - which was not always justified. Then Liferay was transferred to the light Spring Framework - and this hurt him for about 7 years (I could be mistaken in exactly what version this transition occurred - but quite a long time ago). And now OSGI. What this gives users (although, rather, programmers implementing solutions based on Liferay - end users do not care what technologies are made of):
- The portal core is now modular. You can easily turn off the excess. One of the drawbacks of Liferay called that in its core a lot of "extra". Putting Liferay, users received not only the Portlet Container and the admin panel with the necessary basic functionality - but also a bunch of modules, and the need for some of them caused great doubts. Now you can create your own set of modules that we want to go into the kernel
- All plugins (additions to the portal) are now being developed as OSGI modules. Previously, each plugin was a separate web application (from the point of view of Application Server) that communicated with the portal through a cunning mechanism called BeanLocator (which was essentially a hack). Now everything is fair, everything is strictly within the framework of basic technologies.
- It is easier to make changes to the portal core itself. Simply replace the module that implements the required functionality with your own. Everything, I hope no longer need any ext-plug-ins (who was engaged in deep customization of Liferay, he will understand)
So, we look forward to. One thing scares - such serious architectural changes are not easy and simple - but I hope that the version (including by the community) will be well tested for release.
')
What unfortunately is not expected:
- Tomcat 7 is still the default server. In fact, I'd love to see Tomcat 8 and use WebSockets in the portal
- The implementation of web services is still on the first Axis. Here without words. Apparently you have to wait for the 8th version.
UI changes
Big changes are expected in the user interface:
- New topic. They promise a lighter, mobile-friendly and all that. Similarly more customizable. It is still difficult to assess what is behind this, but if you make the “Powered by Liferay” label disabled or configurable, this will be a big step forward :)
- New management. Everybody. There is no separate control panel now. There is a Product Menu (crawls out to the left). Managing the page from the side buttons migrated to the footer of the page. Well, much more. Here I feel will have to get used for a long time

- Loading pages Ajax-ohm: many portlets can now load their content without reloading the page (for example, moving from a list of blogs to a specific post). It is important that such support is at the base framework level, so that it can be used everywhere.
Audience Targeting
In fact, the Audience Targeting plugin is already available in 6.2, but in 7-ke it should open in all its glory. What it is? This is segmentation of portal users (according to different criteria) and display of various content for various segments. Plus support companies. The basic functionality for any self-respecting CMS has finally become available in Liferay (and how we missed it!)
It is clear that (for example) Russia will have to add geolocation and segmentation by regions - but this (we are looking at OSGI above) can already be done just as a separate plug-in.
New editor
Liferay continues a bold experiment in introducing its new, innovative editor. There are no more toolbars and buttons. Context editing only

Also such a decision - an amateur. For example, I have clients who ask to throw out 6.2 CKEditor 4 from Liferay and screw in the old FCKEditor 3, because it “looks more like the old Word that everyone is used to using”. So how can they explain about innovative contextual editing?
The blessing that it is possible to adjust easily which editor is used
Geolocation of content
You can now attach any content to a geographic point and build (for example) interactive maps.

Templates for Staging
In Liferay there is such a thing as Staging - this is when you prepare on a separate (test) site all the necessary changes (new pages, new content) and then after clicking a button (or on a schedule) after completing the necessary coordination, publish it on the production server. The thing is useful, because (for example) it allows you not to “break” the loaded grocery cluster, but calmly make your changes on the test server and then publish them at night on the prod. The truth is that a lot of nuances come out in life - and those who worked in Liferay with staging will appreciate the ability to remember the configuration for the stage as templates for reuse.
In fact, this is just a small list of major changes. During the work on the new version, the guys from Liferay have already done a tremendous job (only within the Liferay 7.0 m7 about
170 User Story are closed) and we really want to hope that they will finish the work (with good quality) and in six months we will see the new version .