<?xml version="1.0" encoding="UTF-8"?>
<feed xmlns="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <title>javax.portlet version for Liferay 7.1</title>
  <link rel="self" href="https://liferay.dev/c/message_boards/find_thread?p_l_id=119785294&amp;threadId=111032157" />
  <subtitle>javax.portlet version for Liferay 7.1</subtitle>
  <id>https://liferay.dev/c/message_boards/find_thread?p_l_id=119785294&amp;threadId=111032157</id>
  <updated>2026-05-08T17:29:37Z</updated>
  <dc:date>2026-05-08T17:29:37Z</dc:date>
  <entry>
    <title>RE: javax.portlet version for Liferay 7.1</title>
    <link rel="alternate" href="https://liferay.dev/c/message_boards/find_message?p_l_id=119785294&amp;messageId=111034331" />
    <author>
      <name>Minhchau Dang</name>
    </author>
    <id>https://liferay.dev/c/message_boards/find_message?p_l_id=119785294&amp;messageId=111034331</id>
    <updated>2018-09-25T18:28:27Z</updated>
    <published>2018-09-25T18:28:27Z</published>
    <summary type="html">&lt;html&gt;&lt;head&gt;&lt;/head&gt;&lt;body&gt;&lt;blockquote&gt;
  &lt;div class="quote-title"&gt;Aleksey Kashytsa:&lt;/div&gt;
  &lt;div class="quote"&gt;
    &lt;div class="quote-content"&gt;
      &lt;pre&gt;
&lt;span&gt;mavenBom &lt;/span&gt;&lt;span&gt;"com.liferay:com.liferay.ce.portal.compile.only:&lt;/span&gt;7.1.0&lt;span&gt;"
&lt;/span&gt;&lt;span&gt;mavenBom &lt;/span&gt;&lt;span&gt;"com.liferay:com.liferay.ce.portal.bom:7.1.0&lt;/span&gt;&lt;span&gt;"&lt;/span&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;&lt;/blockquote&gt;
&lt;p&gt;As mentioned in your other Maven BOM thread (&lt;a href="https://community.liferay.com/en/forums/-/message_boards/message/111030456"&gt;reference&lt;/a&gt;),
  that BOM is invalid.&lt;/p&gt;
&lt;p&gt;However, you'll run into the same versioning problem by switching to
  the newer proof of concept BOM, since
  &lt;code&gt;com.liferay.portal:release.portal.bom.compile.only:7.1.0&lt;/code&gt;
  lists the same &lt;code&gt;javax.portlet:portlet-api&lt;/code&gt; version as as &lt;code&gt;com.liferay:com.liferay.ce.portal.compile.only:7.1.0&lt;/code&gt;.&lt;/p&gt;
&lt;blockquote&gt;
  &lt;div class="quote-title"&gt;Aleksey Kashytsa:&lt;/div&gt;
  &lt;div class="quote"&gt;
    &lt;div class="quote-content"&gt;If it's so why BOM of Liferay 7.1 has
      portlet-api version 2.0 and not 3.0.0?&lt;/div&gt;&lt;/div&gt;&lt;/blockquote&gt;
&lt;p&gt;My best guess is that, for compatibility reasons, Liferay claims to
  export &lt;code&gt;javax.portlet&lt;/code&gt; (the package) version 2.0 in its &lt;a href="https://github.com/liferay/liferay-portal/blob/7.1.0-ga1/modules/core/portal-bootstrap/system.packages.extra.bnd#L123"&gt;system.packages.extra.bnd&lt;/a&gt;,
  even though its actual compile time dependency is version 3.0.1 of the
  portlet API, as listed in &lt;a href="https://github.com/liferay/liferay-portal/blob/7.1.0-ga1/lib/global/dependencies.properties#L1"&gt;dependencies.properties&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;As for why we aren't claiming to export version 3.0 of that package,
  it's a mix of the fact that Liferay won't finish implementing Portlet
  3.0 until GA2 alongside some of the reasons listed &lt;a href="https://issues.liferay.com/browse/LPS-81636"&gt;LPS-81636&lt;/a&gt;.
  However, it's not clear to me if Liferay will also change the
  Export-Package versions once Portlet 3.0 is code-complete, given the
  desire to have backwards compatibility.&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</summary>
    <dc:creator>Minhchau Dang</dc:creator>
    <dc:date>2018-09-25T18:28:27Z</dc:date>
  </entry>
  <entry>
    <title>javax.portlet version for Liferay 7.1</title>
    <link rel="alternate" href="https://liferay.dev/c/message_boards/find_message?p_l_id=119785294&amp;messageId=111032156" />
    <author>
      <name>Aleksey Kashytsa</name>
    </author>
    <id>https://liferay.dev/c/message_boards/find_message?p_l_id=119785294&amp;messageId=111032156</id>
    <updated>2018-09-25T14:49:11Z</updated>
    <published>2018-09-25T14:49:11Z</published>
    <summary type="html">&lt;hr /&gt;
&lt;p&gt;
  &lt;span&gt; &lt;/span&gt; &lt;/p&gt;
&lt;p&gt;Developing a portlet outside of Liferay workspace I use these plugins
  for build and manage version&lt;/p&gt;
&lt;pre&gt;
        classpath &lt;span&gt;group&lt;/span&gt;: &lt;span&gt;&amp;quot;com.liferay&amp;quot;&lt;/span&gt;, &lt;span&gt;name&lt;/span&gt;: &lt;span&gt;&amp;quot;com.liferay.gradle.plugins&amp;quot;&lt;/span&gt;, &lt;span&gt;version&lt;/span&gt;: &lt;span&gt;&amp;quot;3.5.23&amp;quot;
&lt;/span&gt;&lt;span&gt;        &lt;/span&gt;classpath &lt;span&gt;group&lt;/span&gt;: &lt;span&gt;&amp;quot;io.spring.gradle&amp;quot;&lt;/span&gt;, &lt;span&gt;name&lt;/span&gt;: &lt;span&gt;&amp;quot;dependency-management-plugin&amp;quot;&lt;/span&gt;, &lt;span&gt;version&lt;/span&gt;: &lt;span&gt;&amp;quot;1.0.6.RELEASE&amp;quot;
&lt;/span&gt;&lt;/pre&gt;
&lt;p&gt;
  &lt;span&gt;with respective BOMs&lt;/span&gt;&lt;/p&gt;
&lt;pre&gt;
&lt;span&gt;mavenBom &lt;/span&gt;&lt;span&gt;&amp;quot;com.liferay:com.liferay.ce.portal.compile.only:&lt;/span&gt;7.1.0&lt;span&gt;&amp;quot;
&lt;/span&gt;&lt;span&gt;mavenBom &lt;/span&gt;&lt;span&gt;&amp;quot;com.liferay:com.liferay.ce.portal.bom:7.1.0&lt;/span&gt;&lt;span&gt;&amp;quot;&lt;/span&gt;&lt;/pre&gt;
&lt;p&gt;
  &lt;span&gt;I get error:&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;error: cannot access RenderURL&lt;br /&gt;         PortletURL redirectURL =
  liferayPortletResponse.createRenderURL();&lt;br /&gt;
                                                         ^&lt;br /&gt;   class
  file for javax.portlet.RenderURL not found&lt;/p&gt;
&lt;p&gt;
  &lt;span&gt; &lt;/span&gt;
  &lt;span&gt;  &lt;/span&gt;&lt;/p&gt;
&lt;p&gt;Looking on Liferay 7.1.0 sources I found that many portlets uses&lt;/p&gt;
&lt;pre&gt;
&lt;span&gt;compileOnly &lt;/span&gt;&lt;span&gt;group&lt;/span&gt;: &lt;span&gt;&amp;quot;javax.portlet&amp;quot;&lt;/span&gt;, &lt;span&gt;name&lt;/span&gt;: &lt;span&gt;&amp;quot;portlet-api&amp;quot;&lt;/span&gt;, &lt;span&gt;version&lt;/span&gt;: &lt;span&gt;&amp;quot;3.0.0&amp;quot;&lt;/span&gt;&lt;/pre&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;
  &lt;span&gt;Modifing my dependencies to use
    &lt;em&gt;&amp;quot;java.portlet:portlet-api:3.0.0&amp;quot;&lt;/em&gt;  &lt;/span&gt;I got&lt;/p&gt;
&lt;p&gt;
  &lt;em&gt;Unresolved requirement: Import-Package: javax.portlet; version=&amp;quot;[3.0.0,4.0.0)&amp;quot;&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;and only aditing to bnd.bnd &lt;strong&gt;-contract: *&lt;/strong&gt; get my
  portlet working.&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;Have I use &lt;strong&gt;
    &lt;span&gt;compileOnly &lt;/span&gt;
    &lt;span&gt;group&lt;/span&gt;: &lt;span&gt;&amp;quot;javax.portlet&amp;quot;&lt;/span&gt;,
    &lt;span&gt;name&lt;/span&gt;: &lt;span&gt;&amp;quot;portlet-api&amp;quot;&lt;/span&gt;,
    &lt;span&gt;version&lt;/span&gt;: &lt;span&gt;&amp;quot;3.0.0&amp;quot; &lt;/span&gt;&lt;/strong&gt;
  &lt;span&gt;to compile for Liferay 7.1?&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;
  &lt;span&gt;If it's so why BOM of Liferay 7.1 has portlet-api version 2.0
    and not 3.0.0?&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;
  &lt;span&gt;Thanks!&lt;/span&gt;&lt;/p&gt;</summary>
    <dc:creator>Aleksey Kashytsa</dc:creator>
    <dc:date>2018-09-25T14:49:11Z</dc:date>
  </entry>
</feed>
