Bug 732730

Summary: Jackrabbit repository configuration generated from Guvnor Administration requires missing Apache POI lib
Product: [JBoss] JBoss Enterprise BRMS Platform 5 Reporter: Jiri Locker <jlocker>
Component: BRM (Guvnor)Assignee: manstis
Status: VERIFIED --- QA Contact:
Severity: low Docs Contact:
Priority: unspecified    
Version: BRMS 5.2.0.GACC: jgraham
Target Milestone: ER6   
Target Release: BRMS 5.3.0.GA   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
A missing jar file prevented the BRMS user interface from successfully generating the repository.xml required to define databases. The jar file (poi-3.7.jar) has been added and repository.xml can be successfully generated.
Story Points: ---
Clone Of: Environment:
Last Closed: Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Jiri Locker 2011-08-23 12:07:43 UTC
Description of problem:
Guvnor offers a tool for generating Jackrabbit repository.xml tailored for a selected database. SearchIndex definition it this configuration file uses 'textFilterClasses' parameter that requires Apache POI library. That can be probably fixed by adding a single poi-3.7.jar to WEB-INF/lib directory or by changing or not using the 'textFilterClasses' parameter in the Jackrabbit configuration file served by Guvnor.


Version-Release number of selected component (if applicable):
BRMS 5.2.0 ER2

How reproducible:
always

Steps to Reproduce:
1. open Guvnor and use Administration > Repository Configuration tool to generate a Jackrabbit repository.xml for any database you have available
2. shut down Guvnor and replace current repository.xml with the new one
3. try deploying Guvnor
  
Actual results:
Guvnor doesn't deploy due to Jackrabbit repository initialization failure caused by
> java.lang.ClassNotFoundException: org.apache.poi.hpsf.MarkUnsupportedException


Expected results:
Guvnor should provide repository configuration that is ready to go. The configuration should either not depend on missing libraries or the libraries should be available out of the box. Any manual steps should be documented.

Additional info:
http://poi.apache.org/

Comment 2 Lukáš Petrovický 2012-03-13 07:31:22 UTC
*** Bug 802573 has been marked as a duplicate of this bug. ***

Comment 3 Geoffrey De Smet 2012-04-22 09:30:07 UTC
Without the full stacktrace (and a running Oracle database) it's hard to be sure, but it's probably due to

<SearchIndex class="org.apache.jackrabbit.core.query.lucene.SearchIndex">
        ...
        <param name="textFilterClasses" value="...,org.apache.jackrabbit.extractor.MsExcelTextExtractor,..."/>

Comment 4 Geoffrey De Smet 2012-04-22 09:42:33 UTC
That missing class is in poi-3.7.jar:
http://search.maven.org/#search|ga|1|fc%3A%22org.apache.poi.hpsf.MarkUnsupportedException%22

That poi-3.7.jar is in the guvnor war:
  .../target/guvnor-webapp-5.3.2-SNAPSHOT.war/WEB-INF/lib/poi-3.7.jar
And it is also there in ER6 in jboss-brms.war/WEB-INF/lib

Comment 5 Geoffrey De Smet 2012-04-22 12:39:19 UTC
Can you verify:
- if the issue is still there in ER6
- if jboss-brms.war/WEB-INF/lib/poi-3.7.jar is there (it is in my ER6 copy)
And if it's still there, copy-paste the entire stacktrace.

Comment 6 Ryan Zhang 2012-04-23 07:39:27 UTC
Update status to ON_QA. Please verify them against ER6.

Comment 8 Petr Široký 2012-05-21 17:25:54 UTC
Verified fixed in 5.3.0 ER7. Deployment is successful. Apache POI is in guvnor's lib dir.

Comment 9 lcarlon 2012-06-05 05:47:18 UTC
    Technical note added. If any revisions are required, please edit the "Technical Notes" field
    accordingly. All revisions will be proofread by the Engineering Content Services team.
    
    New Contents:
A missing jar file prevented the BRMS user interface from successfully generating the repository.xml required to define databases. The jar file (poi-3.7.jar) has been added and repository.xml can be successfully generated.