It bewilders me that you are trying to make a choice between portlets and OSGI. It's like saying "I want to build a house but I don't know if I need a car or a plasma screen". In other words, the subject of this thread is a bit weird
OSGi and Portlets handle completely different problems. OSGi provides modularity at a software construction level. It will help you manage your components, such as repository and business service implementations, provides things like versioning and visibility of those components.
A portal engine, such as Liferay, is a container that gives your applications some real-world context. It handles the administration of users and pages for you, it helps you exposing your functionality to end-users, allows you to define a general look and feel for each application. OSGi obviously has no purpose in that field.
So I think you should take a step back...