Search code examples
liferayliferay-7

Liferay 7.2.1 - Portlet API upgrade in fragment-host


I'm asking a question about portlet version 2.0 and 3.0 in the fragment-host. I'm using Liferay 7.2.1 GA2.

For example, this one :

Fragment-Host: com.liferay.users.admin.web;bundle-version="4.0.27"

In the init.jsp, I have :

<%@ taglib uri="http://java.sun.com/portlet_2_0" prefix="portlet" %>

But since Liferay 7.1, it should be (cf Breaking Changes) :

<%@ taglib uri="http://xmlns.jcp.org/portlet_3_0" prefix="portlet" %>

For now I don't made this change and I've the following error : Requires 3.0 opt-in

Do I made this change or is there another solution ?

Thanks,


Solution

  • With a fragment, you'll update/modify a JSP that belongs to a (typically) stock portlet. This overriding JSP needs to follow the standard that the overridden portlet sets.

    In other words: If you try to provide a Portlet-2.0-spec JSP to a Portlet following the 3.0 specs, you might not find what you expect, and apparently get the error message that you report.

    In general: If you override JSPs, you're dealing with implementation level changes to the code that Liferay delivers - there's a lot of maintenance effort connected to it, and this is one of the prices you'll have to pay