
What awaits us in Liferay 7.0
Liferay announces the latest milestone version of Liferay 7.0 m7. This means that alpha and beta will go further, in which error correction will go - functional changes are no longer especially expected. And although about six months before the release, now you can see what new awaits us in the new version of Liferay
First, a small introduction for those who do not know what Liferay is . In a nutshell - this is SharePoint, but in Java and Open-Source.
If very simplified - then this is the most accurate definition. Although everything is certainly not so simple and so straightforward.
If a little more detailed - this is a web portal developed on Java Enterprise Edition technologies (about technologies a bit below) according to the Open Source scheme. At the same time, there is a company that is engaged in the purposeful development of this product and provides Enterprise support (already for money). Liferay can be applied
More details can be found on the Liferay website itself or here (already in Russian) .
The main innovation, because of 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 internal architecture (and indeed the entire ecosystem around Liferay, as it entails changes in plugin development). Once upon a time, Liferay was based on EJB. EJBs were then second, they were large and heavy, and required large and heavy servers to run (minimum JBoss) - which was not always justified. Then Liferay was transferred to the lightweight Spring Framework - and this struck him for 7 years (I could be mistaken in which exact version this transition occurred - but for a long time). And now OSGI. What does this give to users (although rather to programmers who implement solutions based on Liferay - end users do not care what technologies are used):
So, we look forward to it. One thing is scary - such major architectural changes are not easy and simple - but I hope that the release (including by the community) will be well tested for release.
What unfortunately is not expected:
Big changes are expected in the user interface:

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 segmentation of portal users (according to various criteria) and the display of different content for different segments. Plus company support. 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) geolocation and segmentation by regions of Russia will have to be added - but this (we look above at OSGI) can already be make just a separate plugin.
Liferay continues a bold experiment to introduce its new, innovative editor. There are no more toolbars and buttons. Only contextual editing

Also such a decision - not for everybody. For example, I have clients who ask to throw out Liferay 6.2 CKEditor 4 and screw in the old FCKEditor 3, because it "looks more like an old word that everyone is used to using." So how do they explain innovative contextual editing?
Fortunately, you can easily configure which editor is used
You can now attach any content to a geographical point and build (for example) interactive maps

Liferay has such a thing as Staging - this is when you prepare all the necessary changes (new pages, new content) on a separate (test) site and then publish it on the working server by pressing a button (or according to a schedule) after passing the necessary approval. This is useful, because (for example) it allows you not to “break” the loaded product cluster, but to calmly make your changes on the test server and then publish them at night to the prod. True, 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 stage in the form of templates for reuse.
This is actually just a short list of major changes. While working on a new version, the guys from Liferay have already done a great job (only 170 User Storys have been closed within Liferay 7.0 m7 ) and I really hope that they will finish the work (with good quality) and in six months we will see a new version .

What is a Liferay?
First, a small introduction for those who do not know what Liferay is . In a nutshell - this is SharePoint, but in Java and Open-Source.
If very simplified - then this is the most accurate definition. Although everything is certainly not so simple and so straightforward.
If a little more detailed - this is a web portal developed on Java Enterprise Edition technologies (about technologies a bit below) according to the Open Source scheme. At the same time, there is a company that is engaged in the purposeful development of this product and provides Enterprise support (already for money). Liferay can be applied
- and classically - as an intra-corporate portal (organization of joint work of employees) or a corporate social network,
- and for creating external sites (one example is the site of the mobile operator Yota recently mentioned on the hub ),
- and you can use it as a platform for developing your applications (very different B2B and B2C solutions are obtained on it very well).
More details can be found on the Liferay website itself or here (already in Russian) .
Architecture changes
The main innovation, because of 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 internal architecture (and indeed the entire ecosystem around Liferay, as it entails changes in plugin development). Once upon a time, Liferay was based on EJB. EJBs were then second, they were large and heavy, and required large and heavy servers to run (minimum JBoss) - which was not always justified. Then Liferay was transferred to the lightweight Spring Framework - and this struck him for 7 years (I could be mistaken in which exact version this transition occurred - but for a long time). And now OSGI. What does this give to users (although rather to programmers who implement solutions based on Liferay - end users do not care what technologies are used):
- The portal core is now modular. You can easily turn off the excess. One of the minuses of Liferay was called that in its core there is a lot of "superfluous". When installing Liferay, users received not only the Portlet Container and admin panel with the necessary basic functionality - but also a bunch of modules, and the need for some of them caused great doubts. Now it will be possible to form your own set of modules that we want to be included in 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 tricky mechanism called BeanLocator (which was essentially a hack). Now everything is honest, everything is strictly within the framework of basic technologies
- It’s easier to make changes to the core of the portal itself. Just replace the module that implements the required functionality with yours. That's all, I hope no ext-plugins will be needed anymore (those who were engaged in deep customization of Liferay will understand)
So, we look forward to it. One thing is scary - such major architectural changes are not easy and simple - but I hope that the release (including by the community) will be well tested for release.
What unfortunately is not expected:
- The default server is still Tomcat 7. In fact, I would really like to see Tomcat 8 and the use of WebSockets in the portal
- The implementation of web services is still on the first Axis. There are no words. Probably have to wait for the 8th version.
UI changes
Big changes are expected in the user interface:
- New topic. They promise a more “easy”, mobile-friendly and all that. Also more customizable. It’s 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. To everyone. Now there is no separate Control Panel. There is a Product Menu (crawls out on the left). Page management from the side buttons migrated to the footer of the page. Well and much more. Then I feel it will take a long time to get used to

- Ajax page loading: many portlets can now load their content without reloading the page (for example, switching from a list of blogs to a specific post). It is important that such support is at the level of the basic framework, 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 segmentation of portal users (according to various criteria) and the display of different content for different segments. Plus company support. 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) geolocation and segmentation by regions of Russia will have to be added - but this (we look above at OSGI) can already be make just a separate plugin.
New editor
Liferay continues a bold experiment to introduce its new, innovative editor. There are no more toolbars and buttons. Only contextual editing

Also such a decision - not for everybody. For example, I have clients who ask to throw out Liferay 6.2 CKEditor 4 and screw in the old FCKEditor 3, because it "looks more like an old word that everyone is used to using." So how do they explain innovative contextual editing?
Fortunately, you can easily configure which editor is used
Content geolocation
You can now attach any content to a geographical point and build (for example) interactive maps

Staging Templates
Liferay has such a thing as Staging - this is when you prepare all the necessary changes (new pages, new content) on a separate (test) site and then publish it on the working server by pressing a button (or according to a schedule) after passing the necessary approval. This is useful, because (for example) it allows you not to “break” the loaded product cluster, but to calmly make your changes on the test server and then publish them at night to the prod. True, 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 stage in the form of templates for reuse.
This is actually just a short list of major changes. While working on a new version, the guys from Liferay have already done a great job (only 170 User Storys have been closed within Liferay 7.0 m7 ) and I really hope that they will finish the work (with good quality) and in six months we will see a new version .