openjpa-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Kevin Sutter (JIRA)" <>
Subject [jira] [Reopened] (OPENJPA-2172) openjpa-all jar is missing slf4j runtime dependency
Date Thu, 03 Jan 2013 14:30:14 GMT


Kevin Sutter reopened OPENJPA-2172:

Based on a note from Sven Vollbehr <>...

You reported in that the openjpa-all.jar
should include the slf4j runtime binding also. This has the following side effect. Should
I want to configure SLF4J as my logging backend and then use another runtime binding, say
slf4j-jdk14. Having the runtime binding in openjpa-all.jar gives me totally random results
due to the following error:

SLF4J: Class path contains multiple SLF4J bindings.
SLF4J: Found binding in [jar:file:/C:/Users/Sven/.m2/repository/org/apache/openjpa/openjpa-all/2.2.1/openjpa-all-2.2.1.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: Found binding in [jar:file:/C:/Users/Sven/.m2/repository/org/slf4j/slf4j-jdk14/1.7.2/slf4j-jdk14-1.7.2.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: See for an explanation.

SLF4J does not support multiple bindings so having the runtime binding included in openjpa-all
jar file is so not working here. Since the runtime binding is included INSIDE the jar file
it cannot be excluded either. Clearly not a good thing to include it in the openjpa-all jar
file wouldn’t you agree?

Can you please re-open this issue?
> openjpa-all jar is missing slf4j runtime dependency
> ---------------------------------------------------
>                 Key: OPENJPA-2172
>                 URL:
>             Project: OpenJPA
>          Issue Type: Bug
>          Components: samples, validation
>    Affects Versions: 2.2.0, 2.3.0, 2.2.1
>            Reporter: Kevin Sutter
>            Assignee: Kevin Sutter
>             Fix For: 2.3.0, 2.2.1
> I just tried the JSE version of the OpenBooks example (../openjpa-examples/openbooks)
and it turns out that we're missing the SLF4J runtime dependency in our openjpa-all jar file.
 This SLF4J dependency comes about because of our dependency on Bean Validation (bval).  We're
pulling in the SLF4J API from slf4j-api, but we're missing the runtime from slf4j-simple.
> There are two resolutions to this.  We can modify the ../openjpa-all/pom.xml to include
the following dependency:
>             <dependency>
>                 <groupId>org.slf4j</groupId>
>                 <artifactId>slf4j-simple</artifactId>
>                 <version>${slf4jVersion}</version>
>             </dependency>
> Or, we can tell OpenJPA that OpenBooks does not depend on bean validation (which it doesn't).
 We can do this via this additional configuration property in the persistence.xml for the
OpenBooks sample:
>     <validation-mode>NONE</validation-mode>
> The most complete solution is to modify the pom.xml when building the openjpa-all jar.
 The unfortunate thing with this approach is that we have already released 2.2.0 which already
is missing this slf4j runtime.  Maybe we'll just have to add a "readme" to that download.
 We can fix it in 2.2.x and trunk though.  And, if somebody hits this with the 2.2.0 release,
hopefully they are not using bean validation and they can set the validation-mode to NONE.

This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see:

View raw message