<?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>POI dependency solution  - read data from excel</title>
  <link rel="self" href="https://liferay.dev/c/message_boards/find_thread?p_l_id=119785294&amp;threadId=118631145" />
  <subtitle>POI dependency solution  - read data from excel</subtitle>
  <id>https://liferay.dev/c/message_boards/find_thread?p_l_id=119785294&amp;threadId=118631145</id>
  <updated>2026-04-04T13:29:39Z</updated>
  <dc:date>2026-04-04T13:29:39Z</dc:date>
  <entry>
    <title>RE: POI dependency solution  - read data from excel</title>
    <link rel="alternate" href="https://liferay.dev/c/message_boards/find_message?p_l_id=119785294&amp;messageId=121492724" />
    <author>
      <name>Neil Francese</name>
    </author>
    <id>https://liferay.dev/c/message_boards/find_message?p_l_id=119785294&amp;messageId=121492724</id>
    <updated>2022-08-09T15:15:47Z</updated>
    <published>2022-08-09T15:15:46Z</published>
    <summary type="html">&lt;p&gt;I feel like there has to be a better solution for using POI in OSGI
  portlets.  I'm attempting to use it in JSF Thin Portlets and it's been
  a nightmare.  &lt;/p&gt;</summary>
    <dc:creator>Neil Francese</dc:creator>
    <dc:date>2022-08-09T15:15:46Z</dc:date>
  </entry>
  <entry>
    <title>RE: POI dependency solution  - read data from excel</title>
    <link rel="alternate" href="https://liferay.dev/c/message_boards/find_message?p_l_id=119785294&amp;messageId=121440555" />
    <author>
      <name>Aditya Bhardwaj</name>
    </author>
    <id>https://liferay.dev/c/message_boards/find_message?p_l_id=119785294&amp;messageId=121440555</id>
    <updated>2022-06-09T15:20:37Z</updated>
    <published>2022-06-08T11:41:15Z</published>
    <summary type="html">&lt;p&gt;I am using LIferay 7.3 and these are my dependencies&lt;/p&gt;
&lt;p&gt;In bnd.bnd file&lt;/p&gt;
&lt;p&gt;Include-Resource:\&lt;br /&gt;     @poi-4.1.2.jar,\&lt;br /&gt;    
  @poi-ooxml-4.1.2.jar,\&lt;br /&gt;     @poi-ooxml-schemas-4.1.2.jar,\&lt;br /&gt;
      @commons-collections4-4.4.jar,\&lt;br /&gt;    
  @commons-compress-1.19.jar,\&lt;br /&gt;     @commons-lang3-3.9.jar,\&lt;br /&gt;
      @xmlbeans-3.1.0.jar&lt;br /&gt;     &lt;br /&gt;  Import-Package: \&lt;br /&gt;    
  !com.sun.*,\&lt;br /&gt;     !junit*,\&lt;br /&gt;    
  !org.apache.avalon.framework.logger,\&lt;br /&gt;    
  !org.apache.crimson.jaxp,\&lt;br /&gt;    
  !org.apache.jcp.xml.dsig.internal.dom,\&lt;br /&gt;    
  !org.apache.log,\&lt;br /&gt;     !org.apache.xml.resolver*,\&lt;br /&gt;    
  !org.bouncycastle.*,\&lt;br /&gt;     !org.gjt.xpp,\&lt;br /&gt;    
  !org.junit*,\&lt;br /&gt;     !org.relaxng.datatype,\&lt;br /&gt;    
  !org.xmlpull.v1,\&lt;br /&gt;     !com.microsoft.schemas.office.*,\&lt;br /&gt;  
    !com.zaxxer.sparsebits,\&lt;br /&gt;     !org.apache.batik.*,\&lt;br /&gt;    
  !com.graphbuilder*,\&lt;br /&gt;     !org.etsi.uri.x01903.v14,\&lt;br /&gt;    
  !org.openxmlformats.schemas.officeDocument.x2006.*,\&lt;br /&gt;    
  !org.openxmlformats.schemas.schemaLibrary.x2006.main,\&lt;br /&gt;    
  !net.sf.saxon.*,\&lt;br /&gt;     !org.apache.commons.codec.binary,\&lt;br /&gt;  
    !org.apache.commons.codec.digest,\&lt;br /&gt;    
  !org.apache.commons.math3.*,\&lt;br /&gt;     !com.github.luben.*,\&lt;br /&gt;  
    !org.brotli.*,\&lt;br /&gt;     !org.tukaani.xz,\&lt;br /&gt;     *&lt;/p&gt;
&lt;p&gt;And in gradle.properties&lt;/p&gt;
&lt;p&gt;dependencies {&lt;br /&gt;     compileOnly group:
  &amp;quot;com.liferay.portal&amp;quot;, name: &amp;quot;release.dxp.api&amp;quot;&lt;/p&gt;
&lt;p&gt;    cssBuilder group: &amp;quot;com.liferay&amp;quot;, name:
  &amp;quot;com.liferay.css.builder&amp;quot;, version: &amp;quot;3.0.2&amp;quot;&lt;br /&gt;
      &lt;br /&gt;     compileOnly group:
  &amp;quot;com.liferay&amp;quot;,name:&amp;quot;com.liferay.application.list.api&amp;quot;&lt;br /&gt;
      compileOnly group: &amp;quot;org.apache.poi&amp;quot;, name:
  &amp;quot;poi&amp;quot;&lt;br /&gt;     compileOnly group:
  &amp;quot;org.apache.poi&amp;quot;, name: &amp;quot;poi-ooxml&amp;quot;&lt;br /&gt;   
   compileOnly group: &amp;quot;org.apache.poi&amp;quot;, name:
  &amp;quot;poi-ooxml-schemas&amp;quot;&lt;br /&gt;     compileOnly group:
  &amp;quot;org.apache.xmlbeans&amp;quot;, name: &amp;quot;xmlbeans&amp;quot;&lt;br /&gt;   
   compileOnly group: &amp;quot;org.apache.commons&amp;quot;, name:
  &amp;quot;commons-collections4&amp;quot;    &lt;br /&gt;     compileOnly group:
  &amp;quot;org.apache.commons&amp;quot;, name: &amp;quot;commons-lang3&amp;quot;&lt;br /&gt;
      compileOnly group: &amp;quot;org.apache.commons&amp;quot;, name:
  &amp;quot;commons-compress&amp;quot;&lt;br /&gt;     compile
  project(&amp;quot;:modules:common:vendor:vendor-api&amp;quot;)&lt;br /&gt;   
   compile
  project(&amp;quot;:modules:common:product:product-api&amp;quot;)&lt;br /&gt;   
   &lt;br /&gt;     compileOnly group: 'jakarta.mail', name:
  'jakarta.mail-api', version: '1.6.6'&lt;br /&gt;     &lt;br /&gt; }&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;This works fine for me :)&lt;/p&gt;
&lt;p&gt;    &lt;/p&gt;</summary>
    <dc:creator>Aditya Bhardwaj</dc:creator>
    <dc:date>2022-06-08T11:41:15Z</dc:date>
  </entry>
  <entry>
    <title>RE: POI dependency solution  - read data from excel</title>
    <link rel="alternate" href="https://liferay.dev/c/message_boards/find_message?p_l_id=119785294&amp;messageId=118628607" />
    <author>
      <name>David H Nebinger</name>
    </author>
    <id>https://liferay.dev/c/message_boards/find_message?p_l_id=119785294&amp;messageId=118628607</id>
    <updated>2020-03-02T13:54:46Z</updated>
    <published>2020-03-02T13:54:46Z</published>
    <summary type="html">For the record, it is not always so easy to just copy someone else&amp;#39;s solution...&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;These exclusions, well they just exclude the packages from being imported, but they do not address whether your code or more importantly whether POI is going to need them or not based upon the file that is being opened or created.&lt;br /&gt;&lt;br /&gt;For example, I&amp;#39;m not sure what role BouncyCastle would play, but since BouncyCastle is related to encryption, it could be required if you are reading an encrypted sheet or writing an encrypted cell or something. I certainly don&amp;#39;t know, but the point is that you&amp;#39;ll need to know in order to decide if BouncyCastle needs to be included or whether the exclusion shown here will work.&lt;br /&gt;&lt;br /&gt;And that&amp;#39;s really the key for all of the transitive dependencies. Maybe they&amp;#39;re needed, maybe they&amp;#39;re not, but as the developer it will really be up to you to decide when they should be included or excluded. It&amp;#39;s really the core of the issue why OSGi forces resolution even on optional packages, it just can&amp;#39;t know whether the transitive dependencies will be required or not, and it expects that you, the developer, will have enough information to make the correct judgements.</summary>
    <dc:creator>David H Nebinger</dc:creator>
    <dc:date>2020-03-02T13:54:46Z</dc:date>
  </entry>
  <entry>
    <title>POI dependency solution  - read data from excel</title>
    <link rel="alternate" href="https://liferay.dev/c/message_boards/find_message?p_l_id=119785294&amp;messageId=118631144" />
    <author>
      <name>parth kadia</name>
    </author>
    <id>https://liferay.dev/c/message_boards/find_message?p_l_id=119785294&amp;messageId=118631144</id>
    <updated>2020-03-02T10:01:52Z</updated>
    <published>2020-03-02T10:01:52Z</published>
    <summary type="html">build.gradle  :&lt;br /&gt;    compileOnly group: &amp;#39;org.apache.poi&amp;#39;, name: &amp;#39;poi&amp;#39;, version: &amp;#39;4.1.0&amp;#39;&lt;br /&gt;    compileOnly group: &amp;#39;org.apache.poi&amp;#39;, name: &amp;#39;poi-ooxml&amp;#39;, version: &amp;#39;4.1.0&amp;#39;&lt;br /&gt;&lt;br /&gt;bnd.bnd:&lt;br /&gt;Include-Resource: @poi-4.1.0.jar,@poi-ooxml-4.1.0.jar,@poi-ooxml-schemas-4.0.1.jar,@commons-compress-1.18.jar,@commons-collections4-4.2.jar,@xmlbeans-3.0.2.jarImport-Package: \&lt;br /&gt;!org.apache.commons.math3.*,\&lt;br /&gt;!org.apache.poi.xssf.usermodel,\&lt;br /&gt;!com.microsoft.schemas.office.*,\&lt;br /&gt;!org.apache.xmlbeans.*,\&lt;br /&gt;!com.graphbuilder.*,\&lt;br /&gt;!org.apache.batik.*,\&lt;br /&gt;!org.apache.jcp.xml.*,\&lt;br /&gt;!org.apache.poi.extractor.*,\&lt;br /&gt;!org.bouncycastle.*,\&lt;br /&gt;!org.etsi.uri.*,\&lt;br /&gt;!org.openxmlformats.schemas.*,\&lt;br /&gt;!org.apache.commons.compress.archivers,\&lt;br /&gt;!org.apache.commons.compress.utils,\&lt;br /&gt;!com.github.*,\&lt;br /&gt;!org.brotli.*,\&lt;br /&gt;!org.tukaani.*,\&lt;br /&gt;!com.sun.*,\&lt;br /&gt;!org.apache.xml.*,\&lt;br /&gt;*</summary>
    <dc:creator>parth kadia</dc:creator>
    <dc:date>2020-03-02T10:01:52Z</dc:date>
  </entry>
</feed>
