ZK can be configured to use in Liferay. However, the ajax request sent by ZK to the server goes through its own servlet directly before landing on the controller class. This request sent does not contain request attributes like WebKeys.THEME_DISPLAY etc. These request attributes are populated so that we have access to implicit objects of Liferay like logged on user etc. A Liferay developer is handicapped without these objects. It would be nice of ZK to hit the portlet class and then go through the servlet to hit the method of controller class.