Bug 1004414 - NoClassDefFoundError: org/drools/marshalling/impl/ProtobufMessages$RuleData
NoClassDefFoundError: org/drools/marshalling/impl/ProtobufMessages$RuleData
Status: VERIFIED
Product: JBoss Enterprise BRMS Platform 5
Classification: JBoss
Component: jBPM Console (Show other bugs)
BRMS 5.3.1
Unspecified Unspecified
unspecified Severity high
: GA
: ---
Assigned To: Kris Verlaenen
Lukáš Petrovický
:
Depends On:
Blocks: 986451
  Show dependency treegraph
 
Reported: 2013-09-04 11:06 EDT by Zuzana Krejčová
Modified: 2016-07-31 21:15 EDT (History)
4 users (show)

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Environment:
Last Closed:
Type: Bug
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---


Attachments (Terms of Use)
server log excerpt from EAP 6.1 (64.02 KB, text/x-log)
2013-09-04 11:06 EDT, Zuzana Krejčová
no flags Details
server log excerpt from standalone package (40.40 KB, text/x-log)
2013-09-04 11:07 EDT, Zuzana Krejčová
no flags Details
popup after signing in (199.67 KB, image/png)
2013-09-04 11:08 EDT, Zuzana Krejčová
no flags Details
popup after switching to Process overview (228.68 KB, image/png)
2013-09-04 11:09 EDT, Zuzana Krejčová
no flags Details
Exception when serializing a jBPM process instance (5.53 KB, text/plain)
2013-09-12 07:06 EDT, Marek Winkler
no flags Details

  None (edit)
Description Zuzana Krejčová 2013-09-04 11:06:47 EDT
Created attachment 793722 [details]
server log excerpt from EAP 6.1

Description of problem:
When opening the business-central app, error popup is shown, exception stack trace appears in the server log.

The main message is:
java.lang.RuntimeException: java.lang.NoClassDefFoundError: org/drools/marshalling/impl/ProtobufMessages$RuleData

Reproduced with standalone package, EAP 5.1.2 and EAP 6.1.


Version-Release number of selected component (if applicable):
Roll up patch BRMS_5.3.1_3_2013
Comment 1 Zuzana Krejčová 2013-09-04 11:07:26 EDT
Created attachment 793724 [details]
server log excerpt from standalone package
Comment 2 Zuzana Krejčová 2013-09-04 11:08:31 EDT
Created attachment 793726 [details]
popup after signing in
Comment 3 Zuzana Krejčová 2013-09-04 11:09:53 EDT
Created attachment 793727 [details]
popup after switching to Process overview

On EAP 6.1, I am able to close the first error popup and switch to Process overview. This happens then.
Comment 4 Marek Winkler 2013-09-04 11:45:57 EDT
The problem is probably caused by using wrong version of protobuf library, see the following exception cause in the log:

Caused by: java.lang.VerifyError: class org.drools.marshalling.impl.ProtobufMessages$RuleData overrides final method getUnknownFields.()Lcom/google/protobuf/UnknownFieldSet
Comment 5 Alessandro Lazarotti 2013-09-04 11:48:23 EDT
Exactly. As mentioned in Bug 1000385 (included for that roll up list) all protobuf jars must be updated to version 2.5.0.
Comment 6 Marek Winkler 2013-09-12 07:04:27 EDT
The protobuf libraries version is now correct, but it seems that protobuf classes have not been regenerated for jBPM engine:

Caused by: java.lang.UnsupportedOperationException: This is supposed to be overridden by subclasses.
     [java] 	at com.google.protobuf.GeneratedMessage.getUnknownFields(GeneratedMessage.java:180) ~[protobuf-java-2.5.0.jar:na]

(see attachement for full stack trace)

It seems the following commit did not make it into the patch: 

https://github.com/droolsjbpm/jbpm/commit/9b08e628d0fb9a45aaebbdc84e5961163aa70203

however, it is in the 5.3.x branch - it should probably be cherry-picked into 5.2.x first.
Comment 7 Marek Winkler 2013-09-12 07:06:35 EDT
Created attachment 796781 [details]
Exception when serializing a jBPM process instance
Comment 8 Kris Verlaenen 2013-09-12 11:00:23 EDT
It seems the files were regenerated incorrectly on the 5.3.x instead of the 5.2.x branch.  The files have been regenerated for 5.2.x now.

http://github.com/droolsjbpm/jbpm/commit/2ae56b254

Note You need to log in before you can comment on or make changes to this bug.