LifeRay Content Management System (Reviewed)

  • seems easy to install enough, there’s also a wiki page containing information how to install on Windows and other platforms.
  • its possible to develop a portlet using PHP. However, the question is, if a portlet like this can take advantage of most (if not all) features have to offer similar to what a JSP written portlet have? Sadly there’s no real support for developing or integrating complex PHP applications into it.

I’ve made some reviews and read some topics regarding this from the lifeRay Community Forum:

http://www.liferay.com/web/guest/community/forums/-/message_boards/search?_19_redirect=%2Fweb%2Fguest%2Fcommunity%2Fforums%2F-%2Fmessage_boards%2Fcategory%2F239390&_19_breadcrumbsCategoryId=239390&_19_searchCategoryId=239390&_19_tabs1TabsScroll=&_19_keywords=PHP


there are many users want to use php to develope porlets in liferay. in the forum you can see people ask all kind of php questions. but it seems none of the liferay developers focus on the php part. you can earn more customers with php i think.


the quercus engine in the liferay is very old and buggy. are there any plans to update it? i trid to update it by myself last year. but i found i can not call liferay java function any more in php. so there must be some tricky part about quercus integrated in liferay.


NO! The lack of help on this forum is really pissed a lot of people off… why offer a cross platform product if the programmers language of choice cannot be replicated? Liferay could someday be a great application if the “developers” of this application would, oh I don’t know, actually come up with some kind of helpful/useful documentation… the “documentation” that is out there is definitely not helpful!


The php portlet isn’t really usable for anything but very simple php scripts. The PHPPortlet use Quercus for executing the php and that part works fine, it’s the post processing which isn’t enough. I’ve looked into it and for example it doesn’t handle paths correctly, doesn’t rewrite other tags than a and form etc. I’m working on addressing those issues but it’s not so easy to accomplish as the whole page returned by php needs to be converted.

If you want to deploy a complex php application under Liferay then there are a few alternatives:

Use Quercus to deploy the php app as a separate war on the same app server. Quercus is a java implementation of php, 5.2 I think.

Use native php with Tomcat, there are several descriptions on the net on how to get php5 to run under tomcat.

Use native php with Apache.


Where are all the PHP functions?

Where are $_POST and $_GET?

How the crap is this framework supposed to support PHP when normal PHP developers CAN’T GET HELP on the forums? Their posts have all gone unanswered for MONTHS.

Sorry, but I have no plans to talk good about this platform because it is seriously lacking. I guess I just don’t see it’s use being widespread because the average developer won’t use it with no support.

Thanks Sean

P.S.: So far it’s been slow as BEANS.


My apologies about being so harsh, but I really feel like there has not been adequate documentation about Liferay.

So, we figured it out on our own after about 12 hours. It took us that long to realize that Liferay hijacks the PHP you write and rewrites any urls, hrefs, file paths, etc. Everything has to be written in a local format, for example:

/page2.php // or page3.php

Also, it looks as though we cannot do any XHR (AJAX) to pull in any data from pages in the same portlet. Apparently the PHP is not parsed at all, and just the contents of the PHP file are returned.

Lastly, without parsing PHP with a XHR request, and forcing a full page to be rendered (no JSON?!) this platform really does not cater to the way most web developers work (Yes, most web developers are using PHP, not Java).

So, how can we do the following things?:

1. Do a normal AJAX request to a page in the same portlet. 2. Return the AJAX response data in JSON (or other parse-able format: XML, regular HTML) without any Liferay template wrappers


mcahornsirup said…

Hi. I’am currently thinking about “enabling” PHP-Developers to build PHP-Portlets. But what is the benefit? Is it possible to use a PHP-Framework they are allready familiar with too? Or, is it just “syntactic sugar”?

What about the persistence? how easy/difficult is it to use the infrastructure provided?

Somehow it looks like a marketing trick…


eichelgartenweg said…

hi,

from my view its only a marketing trick. It is not really useful…

serveresource with php 9/25/09 5:59 AM hi: i have create dynamic content with php for user to download. I have read the portlet download howto guide:

Howto Guide

but I am not really understand it. and i can not make the concept working under php. my php code like below:

$portal = $response->getResponse(); $portal->setContentType(“application/octet-stream”); $portal->addHeader(“Content-Disposition”,’attachment; filename=”test.bin”‘); echo $dynamic_content;

the “setContentType” and “addHeader” method runs happily. but the $dynamic_content is still show on the screen, not to the user for download.

I know I must miss something or misunderstand the whole concept. thanks for help!!


RE: serveresource with php 9/25/09 8:42 PM as a reply to sky tb. hi: i now use another php script runninig under apache to handle the download request. I hope there is a better way to handle this under liferay. I am still studying the concept. any recommend to finish the job?

———

Analysis:

  • Portlet PHP Developments lacks documentation and Forum/Community support, Most PHP questions could be given absolute answers, or not answered at all.
  • Only supports basic PHP portlets.
  • Quercus used for executing PHP script is old and buggy.
  • Finally, as PHP/Web developer it did gave me a feeling of it being quite slow, despite being installed and tested in a local machine. I could be wrong though, maybe because it loads a lot of scripts  and css before being displayed…

An alternative here is to use SOAP web service. For example:

PHP (back-end) application, shall be the SOAP server. And that portlets are made in Java, which fetches data from/to SOAP server.

  • Share/Bookmark

About this entry