[ 
https://issues.apache.org/jira/browse/OPENJPA-2172?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Kevin Sutter reopened OPENJPA-2172:
-----------------------------------


Based on a note from Sven Vollbehr <[email protected]>...

You reported in https://issues.apache.org/jira/browse/OPENJPA-2172 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 http://www.slf4j.org/codes.html#multiple_bindings 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: https://issues.apache.org/jira/browse/OPENJPA-2172
>             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: http://www.atlassian.com/software/jira

Reply via email to