开发者

To Go or Not To Go with Liferay? What's the good, bad, and ugly? [closed]

开发者 https://www.devze.com 2023-04-07 12:56 出处:网络
Closed. This question is opinion-based. It is not currently accepting answers. Want to improve this question? Update the question so it can be answered with facts and citations by editing th
Closed. This question is opinion-based. It is not currently accepting answers.

Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.

Closed 8 years ago.

Improve this question

We are evaluating several solutions for a new web thing we're looking to build. There are several aspects to it, including user management, content management, campaigns, community, and financial transactions.

We are looking to roll the framework ourselves, using Joomla + Vaadin + CAS (to name a few) to DIY, but I am wondering if we should simply adopt the Liferay portal for one-stop shopping?

I have looked for testimonials and have not come up with much. I appreciate anyone who has used Liferay (or chosen not to) who would share what technical hu开发者_开发问答rdles it solves (or doesn't) and potentially what others it may create.

Thank you!


Disclaimer: I work for Liferay now; however, I answered this question long before I started to work here. Also, Liferay has pivoted a bit in these years. Nonetheless, I believe the core of the answer still applies.

My companyThe company I worked for is a Liferay Inc. partner, so I have a lot of experience in it. Also, maybe you want to take my opinions with a grain of salt :)

We have used various Java portal tools, and the truth is: as a corporate portal, Liferay is the best one in the market, AFAIK. It is rich in functionality, has few bugs, its code is well written, the community is very helpful, and it is flexible and customizable, useful for a wide range of necessities.

Nonetheless, Liferay is a portal tool, so it excels as a content-centric platform. If you manage a lot of content (such as news, articles, blogs, wikis and forums), then I would happily recommend Liferay as your platform. In other cases, I would suggest a better consideration. You can use something like an ERP, for example.

Anyway, I have seen Liferay used as a general development platform in various places, and the result is reasonable. One gets a significant productivity boost when using Liferay. You do not need to think about users, permissions, content management... Liferay handles even complex, low-level issues such as clustering and sharding. And the Liferay Service Builder is one of the best scaffolding tools for Java I've seen. When I think about it, I feel that Liferay, with its various out-of-the-box applications and its Service Builder, is like a Ruby on Rails/Django for Java.

OTOH, Liferay is enormous, and it can be a problem. You may get a lot of unused stuff cluttering your platform. You will have to study a vast application, and it will demand much time and effort from you. Unfortunately, Liferay's documentation is poor, to make things worse.(I'd say Liferay's documentation improved a lot since I originally posted this answer.) Since Liferay does solve a wide range of problems, its codebase is big. This complexity can be dispensable in many, if not most, applications.

Also, if your application does not use a lot of content, Liferay can provide various helpful tools, but it will not be the natural environment for using Liferay. You will be locked in the Liferay platform, too, which can restrict your choices. You may want to analyze Liferay tools, but I do not know if it would be a good platform.

To summarize, I would say:

  • If you want to use a Java-based portal, or to build a broad, complex portal, I recommend Liferay without restrictions;
  • If you want to create an application that manages a lot of content, Liferay is an excellent platform to do it, and I think it may be the best choice;
  • If your application is big but not content-centric, I would not recommend Liferay, but it can be useful;
  • If your application does not manage a lot of content and is potentially small, Liferay probably will add more complexity than it is worth.


We decided not to go with Liferay primarily because we did not need a portal server and would only have been using it for security things. Since we were running against an Active Directory server for maintaining user info and permissions, we decided to just build out a Spring MVC application and use Spring Security to tie into Active Directory.

In the end, the decision was made to not use Liferay because we didn't want all of the extra overhead of a portlet container when we didn't need all of the extra stuff, and also wanted to maintain full control / flexibility over exactly how everything was strung together.

0

精彩评论

暂无评论...
验证码 换一张
取 消

关注公众号