Bug 1061149

Summary: Deployment of Dashbuilder to WebSphere app server 8.5 fails with "Singleton is not set" exception
Product: [Retired] JBoss BPMS Platform 6 Reporter: Radovan Synek <rsynek>
Component: BAMAssignee: Ryan Zhang <rzhang>
Status: CLOSED CURRENTRELEASE QA Contact: Radovan Synek <rsynek>
Severity: high Docs Contact:
Priority: high    
Version: 6.0.0CC: etirelli, kverlaen, rrajasek
Target Milestone: ER3Keywords: TestBlocker
Target Release: 6.0.2   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2014-08-06 19:50:23 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On: 1060747    
Bug Blocks:    

Description Radovan Synek 2014-02-04 12:56:13 UTC
The same issue as bug 1060747 occurred during deployment of Dashbuilder to WebSphere AS. I am aware this can be closed as a duplicate in the future, but just for evidence.

Comment 1 David Gutierrez 2014-02-20 18:28:34 UTC
We have downloaded and installed the Websphere App Server version 8.5.5.0 on a Fedora 19 host. 

We've created a new assembly for WAS8 and fixed some cross-compatibility CDI issues on both the dashboard-builder and the jbpm-dashboard repos. These changes are basically the following:

1.- Weld jars must be removed from the distribution WAR since WAS provides its own CDI implementation based on Apache OpenWebBeans.

2.- Methods annotated with @PostConstruct, @PreDestroy must not declare to throw an exception. Otherwise WAS will reject to deploy the app.

3.- Our apps are SLF4J based and WAS used JUL. So the slf4j-log4j.jar dep. has been added to our assemblies in order to integrate with the WAS logging service.

I've successfully deployed & tested the application and I've also created a brief guide to explain the steps to deploy the jbpm-dashboard distribution on WAS:

- For the standalone Dashbuilder installation: https://github.com/droolsjbpm/dashboard-builder/tree/master/builder/src/main/was8

- For the jBPM integrated Dashboard installation: 
https://github.com/droolsjbpm/jbpm-dashboard/tree/master/jbpm-dashboard-distributions/src/main/was8



Github commits (master):
------------------------------------------

https://github.com/droolsjbpm/dashboard-builder/commit/fe1ef322ca4b53db2e1de22dc602c0b0c65d6cc4
https://github.com/droolsjbpm/dashboard-builder/commit/f5f62c5124fffb90e2184ed1fdc8581ca7bf6c72
https://github.com/droolsjbpm/dashboard-builder/commit/5822486984351b9bfe56a6f55003d1babcdb51aa
https://github.com/droolsjbpm/dashboard-builder/commit/cd358fc9358ee69cbb55fc09c99d198644722703
https://github.com/droolsjbpm/dashboard-builder/commit/ef6d6d2ed7aee207d5d5138e54f90fa5c5568b66
https://github.com/droolsjbpm/jbpm-dashboard/commit/ade22ebd1cd1f92dc801690936259c0901b8af8a
https://github.com/droolsjbpm/jbpm-dashboard/commit/8ce46379aa2246d396693e31ea78eb0ede99411d
https://github.com/droolsjbpm/jbpm-dashboard/commit/065474e0e17639b04fb707e81e7abb81e4d3ce9d

Github commits (6.0.x):
------------------------------------------

https://github.com/droolsjbpm/dashboard-builder/commit/50f780349fd5949a365a8a1794d739515d1299b2
https://github.com/droolsjbpm/dashboard-builder/commit/83c5cb16e6dc00a6ef0b1cb60d34f91031d29a3c
https://github.com/droolsjbpm/dashboard-builder/commit/667c829b15fb9f3d3e96aa39cfe7c510e212290a
https://github.com/droolsjbpm/dashboard-builder/commit/ed5b38c673b0f5ea5a7d36989c3c80c53fb8fc14
https://github.com/droolsjbpm/jbpm-dashboard/commit/072fb0dab1578aef4b527d82479cc2bbb4cab427
https://github.com/droolsjbpm/jbpm-dashboard/commit/88e2f0ec664bec0bf6476cde8b205f66f9c26c0a


Github commits - (product branding):
-------------------------------------------

Required to ensure branding is applied to the WAS8 distribution.

https://github.com/jboss-integration/jbpm-dashboard/commit/7d75fe8f27e8f39e46292eb907fbad048d17403b
https://github.com/jboss-integration/jbpm-dashboard/commit/71c4f848dd39f64ee0316cd898e0142e41e85754
https://github.com/jboss-integration/dashboard-builder/commit/71213e54951f6c2911967c7ddb521928dd5facd9
https://github.com/jboss-integration/dashboard-builder/commit/7a5dcce1035848262f69373732c49f5f734b4e4f

Comment 2 Radovan Synek 2014-03-06 14:10:21 UTC
Ryan,

WEB-INF/lib still contains weld-* jars.

I doubt this can work without building the was-8 assembly introduced by commits stated in comment 1, and thus additional (brms/bpms)-deployable-was.zip will be needed.

Comment 3 Radovan Synek 2014-03-18 16:44:21 UTC
qe_test_coverage: failure of deployment - no need for additional test

Comment 4 Radovan Synek 2014-04-28 16:29:05 UTC
The weld libraries are still present in dashbuilder WAS8 build (6.0.2.ER2) and no surprise, it cannot be deployed.
Could you please check if those commits stated in comment 1 made it into product?

Comment 5 Edson Tirelli 2014-04-28 20:23:37 UTC
The commits are in the tag:

https://github.com/jboss-integration/dashboard-builder/commits/sync.2014.04.22

Looks like a problem with the product build.

Comment 6 Ryan Zhang 2014-04-29 06:52:26 UTC
Sorry, I am afraid this mistake is on me.
I didn't realize that we do jbpm-dashboard special distribution for was8.

I have already fixed this on product assembly code.
Moving to MODIFIED.

Comment 7 Ryan Zhang 2014-05-06 12:11:57 UTC
Before ER3 is available, here is a fixed binary based on ER2: http://dev138.mw.lab.eng.bos.redhat.com/candidate/bpms-6.0.2-ER2/BZ-1061149/

If applicable, test on the above package for further test on dashbard.war for WAS8

Comment 8 Radovan Synek 2014-05-07 15:31:45 UTC
(In reply to Ryan Zhang from comment #7)
Thanks for the additional build of dashbuilder Ryan, I was able to identify two more BZs (bug 1095363 and bug 1095391). This issue is fixed, but I will wait for a regular build to verify.

Comment 9 Radovan Synek 2014-06-02 06:42:12 UTC
Verified with BPMS-6.0.2.ER3