A liferay fremework