java 去还是不去 Liferay?什么是好、坏和丑?

声明:本页面是StackOverFlow热门问题的中英对照翻译,遵循CC BY-SA 4.0协议,如果您需要使用它,必须同样遵循CC BY-SA许可,注明原文地址和作者信息,同时你必须将它归于原作者(不是我):StackOverFlow 原文地址: http://stackoverflow.com/questions/7560838/
Warning: these are provided under cc-by-sa 4.0 license. You are free to use/share it, But you must attribute it to the original authors (not me): StackOverFlow

提示:将鼠标放在中文语句上可以显示对应的英文。显示中英文
时间:2020-10-30 20:30:20  来源:igfitidea点击:

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

javajoomlaliferayvaadincas

提问by Alexx

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?

我们正在考虑自己推出框架,使用 Joomla + Vaadin + CAS(仅举几例)来 DIY,但我想知道我们是否应该简单地采用 Liferay 门户进行一站式购物?

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 hurdles it solves (or doesn't) and potentially what others it may create.

我一直在寻找推荐书,但没有得到太多。我感谢任何使用过 Liferay(或选择不使用)的人,他们会分享它解决(或不解决)哪些技术障碍以及它可能创造的其他技术障碍。

Thank you!

谢谢!

采纳答案by cdeszaq

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.

我们决定不使用 Liferay 主要是因为我们不需要门户服务器,而且只会将它用于安全方面。由于我们在 Active Directory 服务器上运行以维护用户信息和权限,因此我们决定构建一个 Spring MVC 应用程序并使用 Spring Security 来绑定到 Active Directory。

In the end, the decision was made to notuse 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.

最后,决定使用 Liferay,因为当我们不需要所有额外的东西时,我们不想要 portlet 容器的所有额外开销,并且还希望保持完全控制/灵活性一切是如何串在一起的。

回答by brandizzi

Disclaimer: I work for Liferay now; however, the answer was posted long before I started to work here.

免责声明:我现在为 Liferay 工作;然而,答案早在我开始在这里工作之前就已经发布了。

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

我的公司我工作的公司是 Liferay Inc. 的合作伙伴,所以我在这方面有很多经验。另外,也许您想对我的意见持保留意见:)

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, being useful for a wide range of necessities.

我们使用过各种 Java 门户工具,事实是:作为企业门户,Liferay 是市场上最好的 AFAIK。它功能丰富,bug 少,代码写得很好,社区非常有帮助,而且灵活且可定制,适用于各种必需品。

Nonetheless, Liferay is a portal tool, so it excels as a content-centric platform. If you will manage a lot of content (such as news, articles, blogs, wikis, 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.

尽管如此,Liferay 是一个门户工具,因此它作为一个以内容为中心的平台表现出色。如果您将管理大量内容(例如新闻、文章、博客、维基、论坛...),那么我很乐意推荐 Liferay 作为您的平台。在其他情况下,我会建议更好的考虑。例如,您可以使用 ERP 之类的东西。

Anyway, I have seen Liferay used as a general development platform in various places and the result is reasonable. In fact, one gets a great improvement in productivity when using Liferay. You do not need to think about users, permissions, content management... Even complex low level issues like clustering and sharding can be delegated to Liferay. 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.

反正我在各个地方都看到过Liferay作为通用的开发平台,结果是合理的。事实上,当使用 Liferay 时,生产力得到了很大的提高。您无需考虑用户、权限、内容管理……即使是复杂的低级问题,如集群和分片,也可以委托给 Liferay。Liferay Service Builder 是我见过的最好的 Java 脚手架工具之一。当我想到它时,我觉得 Liferay 及其各种开箱即用的应用程序和它的服务构建器,就像 Java 的 Ruby on Rails/Django。

OTOH, Liferay is big and it can be a problem. You may get a lot of unused stuff cluttering your platform. You will have to study a huge application and it will demand much time and effort from you. Unfortunately, Liferay documentation is poor, to make things worse. Since Liferay does solve a wide range of problems, its codebase is big. This complexity can be dispensable in many, if not most, applications.

OTOH,Liferay 很大,它可能是一个问题。您可能会在您的平台上看到很多未使用的东西。您将不得不研究一个庞大的应用程序,这将需要您花费大量时间和精力。不幸的是,Liferay 文档很差,让事情变得更糟。由于 Liferay 确实解决了广泛的问题,它的代码库很大。这种复杂性在许多(如果不是大多数)应用程序中是可有可无的。

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.

另外,如果您的应用程序使用的内容不多,Liferay 可以提供各种有用的工具,但它不会是使用 Liferay 的自然环境。您也将被锁定在 Liferay 平台中,这会限制您的选择。您可能想分析 Liferay 工具,但我不知道它是否是一个好的平台。

Summarizing, I would say:

总结一下,我想说:

  • If you want to use a Java-based portal, or to build a wide, complex portal, I recommend Liferay without restrictions;
  • If you want to create an application which manages a lot of content, Liferay is a good 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.
  • 如果你想使用基于Java的门户,或者构建一个广泛、复杂的门户,我推荐Liferay,没有限制;
  • 如果你想创建一个管理大量内容的应用程序,Liferay 是一个很好的平台,我认为它可能是最好的选择;
  • 如果您的应用程序很大但不是以内容为中心,我不会推荐 Liferay 但它可能很有用;
  • 如果您的应用程序不管理大量内容并且可能很小,Liferay 可能会增加比其价值更多的复杂性。