Milen Dyankov

Software Engineer, Consultant, Developer Advocate

Recent Posts

  • May 29, 2012

    Mobile device detection in Liferay 6.1

    I’m still getting a lot of questions about how to use the multi-device extension in Liferay 6.1. The answer is, you don’t have to! The code was contributed to Liferay and it’s now available OOTB in Liferay 6.1.

  • April 01, 2012

    Liferay Portal Systems Development - review

    Imagine you are not a Java guru but a … connoisseur of art. You are visiting a beautiful city called Liferay and you know it’s full of museums, art galleries, music halls, great architecture, … You can certainly organize your trip in many different ways. One of them is taking the bus tour and this is what a Liferay Portal Systems Development book would be in this analogy. Actually it may even be a very good idea for a start. However, please note, the route is somewhat outdated and passes by places which no longer exists. Also the tour guide is all the time pointing out things, but as soon as the story becomes really interesting and you can’t wait for the details, she moves to the next subject.

  • February 01, 2012

    Liferay Beginner's Guide - review

    As I promised a few weeks ago, in this post I’ll share my thoughts about “Liferay Beginner’s Guide” book. As with earlier reviews, don’t expect any judgments, recommendations or generalizations. Those are to be made by you. I’ll only concentrate on what I found interesting (or boring) and worth mentioning (for one reason or another). So let me try to summarize over 350 pages in a few lines.

  • October 27, 2011

    Simple mobile device emulator in Firefox

    After my "Pluggable mobile device detection" presentation during Liferay Europe Symposium a lot of people asked about the mobile device emulator I was using. The truth is, it's not a real "emulator" but a simple combination of html page and a Firefox user script. However, it does the trick and for most people seems to be good enough (at least for a start). So, I made a promise to share it and finally found the time to blog about it.

  • March 23, 2011

    Liferay - preserve GWT portlet state between reloads

    One of the problems with GWT (which is even more noticeable in portal environment) is preserving it's state between page reloads. In a GWT-only application (or single portlet on the page case) one can give user no other option but using only GWT controls to practically avoid page reloads. In most cases however this is not really possible nor wise thing to do. In portlet environments in particular, reloading the page is a very commmon thing to do, giving all portlets a chance to refresh their content after some action has taken place. The thing is, GWT portlets will, by default, render their initial state, which may not be what user expects.      

    For example, consider the GWT Chatroom portlet I was using in my previous posts Liferay GWT portlet - how to make it "instanceable" and use GWT RPC and Liferay GWT portlet - replacing GWT-RPC with JSON. Imagine user has entered a chatroom. Then she clicks on some other portlet on the page. The page is reloaded and Chatroom portlet returns to it's initial state. The user will have to enter the room again every time she clicks on another portlet. Let's see how this can be fixed.