I am receiving the following error java.lang.NoClassDefFoundError: org/apache/commons/collections/Transformer
trying to use BeanMap
from the Apache Commons BeanUtils library.
It is generated from the following code: BeanMap studentBeanMap = new BeanMap(cohortStudentData.get(row));
where cohortStudentData
is a list of beans.
I am using BeanListHandler
from Apache DBUtils to form the list of beans from a database.
I understand from this and this bug report that BeanMap
is dependant on the Apache Collections framework. However, I have imported all relevant libraries into my project and into my class, as you can see below:
Does anyone know why this might be happening?
I am not really sure, but i think your error is because of jar versions. Lately apache has changed the package of the new versions of their jars because they implement new functionality or something that is not fully backward compatible. For example the jar commons-beanutils-1.9.2.jar depends on commons-collections-3.2.1.jar (according to this site) and you are using commons-collections-4.4.0.jar. If you are planning using the universe of apache jars, you need to be sure that they are all compatible.
Just add this dependency to your project.
<dependency>
<groupId>commons-collections</groupId>
<artifactId>commons-collections</artifactId>
<version>3.2.2</version>
</dependency>
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With