[RESOLVIDO]-SLF4J: The requested version 1.6 by

pessoAll
Seguinte,… tô começando um projeto no Eclipse usando o Glassfish e o MySQL.
importei pro Eclipse o proj. blank do Vraptor e executei, blz rodou trank…

ai add mais alguns jars e algumas[pouquissimas] modificações de Classes etc, tentei rodar eeeeee NADA dá erro 500
copiei do stack, só o que eu achei que fosse importante… Caso necessite de mais alguma coisa eu coloco aki.

GRAVE: SLF4J: The requested version 1.6 by your slf4j binding is not compatible with [1.5.5, 1.5.6, 1.5.7, 1.5.8]
GRAVE: SLF4J: See http://www.slf4j.org/codes.html#version_mismatch for further details.
GRAVE: log4j:ERROR LogMananger.repositorySelector was null likely due to error in class reloading, using NOPLoggerRepository.

INFO: Loading application G_Cond at /G_Cond
at /G_Cond|#]
INFO: Loading application G_Cond at /G_Cond


GRAVE: SLF4J: The requested version 1.6 by your slf4j binding is not compatible with [1.5.5, 1.5.6, 1.5.7, 1.5.8]
GRAVE: SLF4J: See http://www.slf4j.org/codes.html#version_mismatch for further details.
AVISO: StandardWrapperValve[default]: PWC1406: Servlet.service() for servlet default threw exception
java.lang.NoSuchMethodError: org.slf4j.helpers.MessageFormatter.format(Ljava/lang/String;Ljava/lang/Object;)Lorg/slf4j/helpers/FormattingTuple;
    at org.slf4j.impl.Log4jLoggerAdapter.info(Log4jLoggerAdapter.java:323)
    at br.com.caelum.vraptor.config.BasicConfiguration.getProvider(BasicConfiguration.java:71)

só pra deixar claro…
:arrow: log4j-1.2.15.jar
:arrow: slf4j-api-1.6.1.jar
:arrow: slf4j-log4j12-1.6.1.jar

Please sou quase leigo em java, tô começando agora[1 ou 2 anos]

Qual a versão do jar slf4j-log4j12 você tem?

uai garcia??? 1.6.1, quer dizer eu acho, ai no tópico eu escrevi!

:arrow: slf4j-log4j12-1.6.1.jar

Verifique se você por acaso tem outras versões do slf4j e afins.

Creio que não tenho outra versão, todos os jars estão na imagem

[URL=http://img707.imageshack.us/i/semttulouex.png/][/URL]

e nas outras partes (Referenced Libraries, Server Runtime, etc) tem algo do slf4j?

aperte Ctrl+Shift+T e coloque org.slf4j.helpers.MessageFormatter

veja onde estão os jars que contêm essa classe

Hiii abriu uma página dentro do eclipse dizendo:

Source not found
The jar file D:\Ramon\java\Eclipse\G_cond\WebContent\WEB-INF\lib\slf4j-api-1.6.1.jar has no source attachment.
you can attach the source by clicking Attach Source below;

ai tem um botão excrito attach source e um tanto de coisas escrito em baixo:

[code]// Compiled from MessageFormatter.java (version 1.3 : 47.0, super bit)
public final class org.slf4j.helpers.MessageFormatter {

// Field descriptor #67 C
static final char DELIM_START = ‘{’;

// Field descriptor #67 C
static final char DELIM_STOP = ‘}’;

// Field descriptor #73 Ljava/lang/String;
static final java.lang.String DELIM_STR = “{}”;

// Field descriptor #67 C
private static final char ESCAPE_CHAR = ‘’;

// Method descriptor #77 ()V
// Stack: 1, Locals: 1
public MessageFormatter();
0 aload_0 [this]
1 invokespecial java.lang.Object() [1]
4 return
Line numbers:
[pc: 0, line: 98]
Local variable table:
[pc: 0, pc: 5] local: this index: 0 type: org.slf4j.helpers.MessageFormatter

// Method descriptor #84 (Ljava/lang/String;Ljava/lang/Object;)Lorg/slf4j/helpers/FormattingTuple;
// Stack: 5, Locals: 2
public static final org.slf4j.helpers.FormattingTuple format(java.lang.String messagePattern, java.lang.Object arg);
0 aload_0 [messagePattern]
1 iconst_1
2 anewarray java.lang.Object [2]
5 dup
6 iconst_0
7 aload_1 [arg]
8 aastore
9 invokestatic org.slf4j.helpers.MessageFormatter.arrayFormat(java.lang.String, java.lang.Object[]) : org.slf4j.helpers.FormattingTuple [3]
12 areturn
Line numbers:
[pc: 0, line: 124]
Local variable table:
[pc: 0, pc: 13] local: messagePattern index: 0 type: java.lang.String
[pc: 0, pc: 13] local: arg index: 1 type: java.lang.Object
[/code]

tem muito mais coisa…

faz a mesma coisa, mas não digita enter, só vê qtas versões da classe org.slf4j.helpers.MessageFormatter aparecem na janelinha, e vê onde estão esses jars

Só aparece uma classe MessageFormatter
e está no endereço D:\Ramon\java\Eclipse\G_cond\WebContent\WEB-INF\lib\slf4j-api-1.6.1.jar

Esse erro está muito estranho. Pesquisei sobre esse erro no site do SLF4J e a nota é bem clara dizendo que ocorre quand você tem uma versão da API e outra para o adapter. Mas no teu caso não há versões diferentes.

Você está usando Glassfish v3? Vou ver se há alguma issue quando a class-loader-hell por causa do weld ou o bean-validator, que usam internamente uma versão do SLF4J. Atualmente eu tenho usado Glassfish v3 com o SLF4J sem problemas, embora que seja usando o JUL ao invés do LOG4J.

Poisé Garcia, o lucas merece um prêmio…

Troquei o slf4j-api-1.6.1 e o slf4j-log4j12XXX pelos 1.5.8

funcionou

puts que loco! Não entendi muito bem, mas… Fazer o que, “não sei porque mas assim funciona” kkkkk…

Ramon, qual o seu ambiente? Você está usando tomcat, glassfish?!

bom ai esta o problema…

a versão 1.6.1 do slf4j usa a versão 1.2.16 do log4j, e não a 1.2.15, ou seja…

mude para

:arrow: log4j-1.2.16.jar
:arrow: slf4j-api-1.6.1.jar
:arrow: slf4j-log4j12-1.6.1.jar

que tudo dará certo

usando o maven você vê a dependencia correta, a pasta lib do vraptor 3.2.0 esta com a versão errada do log4j

mais informações, sobre dependencia e a hierarquia das dependencias pode ser vista aqui => http://guj.com.br/posts/list/221166.java

Lavieri, vou ter que discordar. Criei um projeto de testes aqui usando o SLF4J 1.6.1 com log4j-1.2.15 disponibilizada pelo vraptor e tudo funcionou corretamente. O log foi impresso sem problemas.

A mensagem de erro mostra que há um slf4j-api com uma versão, e um bind com outra: slf4j-log4j12. A impressão que eu tenho é que há algum desses jar no nivel do container ou algo assim. Mas sem o Ramon dizer qual appserver ele roda vai ser difícil adivinhar.

tô usando o Glassfish v3+Eclipse.

Vou tentar o que o lavieri disse… Vou baixar o 1.2.16, pra ver se rola e vou ler o material.
Mas vou colocar o resolvido, pq o Erro foi resolvido, troquei a versão e rodou!

vlw galera do mal! =P

[quote=garcia-jj]Lavieri, vou ter que discordar. Criei um projeto de testes aqui usando o SLF4J 1.6.1 com log4j-1.2.15 disponibilizada pelo vraptor e tudo funcionou corretamente. O log foi impresso sem problemas.

A mensagem de erro mostra que há um slf4j-api com uma versão, e um bind com outra: slf4j-log4j12. A impressão que eu tenho é que há algum desses jar no nivel do container ou algo assim. Mas sem o Ramon dizer qual appserver ele roda vai ser difícil adivinhar.[/quote]

Ok, você rodou ai, e não recebeu o erro, mas você chegou a entrar no link que passei ?

O fato é assim, eu tive o mesmo problema que o Ramon, e no meu maven estava mostrando claramente conflitos entre as libs
:arrow: sl4j-log4j12 versão 1.6.1
:arrow: log4j versão 1.2.15

Após alterar a versão do log4j para a correta

:arrow: log4j versão 1.2.16

ai tudo funcinou.

O seu projeto pode estar rodando sem causar conflitos entre as duas versões, e no caso do meu projeto e do Ramon, podemos estar usando partes do vraptor, ou de nosso proprio projeto onde cause o problema, enfim, o fato é que a dependência correta da 1.6.1 é a 1.2.16 conforme figura abaixo, e dependências indicadas no mavem.

novamente nesta imagem é possível ver todas as deperencias corretas:

O Lavieri tem razão…

coloquei novamente as versõe dos slf4j 1.6.1 e o log4j coloquei como 1.2.16, rodou :lol:

:thumbup: