[RESOLVIDO]Por favor me ajudem! GRAVE: log4j:ERROR A "org.apache.log4j.ConsoleAppender"

Por favor alguem que tenha experiência com log4j, estou tendo esse problema GRAVE: log4j:ERROR A “org.apache.log4j.ConsoleAppender” object is not assignable to a “org.apache.log4j.Appender” variable. e não acho nada sobre isso, só em fóruns em inglês, mais que tbm não explica nada com nada, tipo tudo que achei já tentei fazer, e não consigo sanar esse problema, não sou habituado em Netbeans, pois uso mais Eclipse, que é destinado a coorporativo, mais como entrei numa empresa agora e que o projeto foi feito no NetBeans, com as tecnologias, JavaEE + Hibernate + EJB + JPA + JSF, não sei se é pau de lib, ou referência, ou até mesmo uma simples configuração no Netbeans, nos fórum que vi, disseram coisas do tipo, “parece que você está expondo seus pacotes para duas cópias de org.apache.log4j. Tente remover org.apache.log4j do seu caminho de classe. Também parece que você não configurou corretamente o org.osgi.framework.system.packages exportar javax.naming, que deve ser definido por padrão normalmente.”
, dei uma olhada no meu project.xml e project.properties não vi nada duplicado, até porque o projeto já é legado, e isso estava funcionando perfeitamente, então creio que não seja, agora tenho uma dúvida tbm, o projeto tem como lib outro projeto, chamado slf4j, criado pela equipe que serve de lib abstract do projeto smsf então, não sei quais libs os projetos em si devem referenciar. Quando faço checkout no netbeans dos projetos, sempre surge erros de referência nas libs, e inclusive o próprio netbeans alega isso e sugeri quais libs são que estão reclamando, mais o fato é que não sei como fazer, tipo assim no Eclipse, bastava eu copiar e colar as libs na pasta WEB-INF/lib e pronto tava lindo, agora no netbeans não sei como ele trata isso, se eu tenho que copiar e colar na pasta WEB-INF tbm ou não posso deixar em um repositório qualquer e só dizer onde se encontra, não sei, tipo tbm tenho dúvida no seguinte, quando faço o checkout do projeto que serve como lib para o outro, no caso o slf4j, ele alega as referência das libs, por exemplo commons-collections-3.2.1.jar, vou lá faço a referência, dai ok, fica tudo certo, depois quando faço checkout do smsf, ele alega a mesma referência commons-collections-3.2.1.jar, dai vou lá e faço a referência, dai como o smsf referencia o slf4j, eu acho que as libs ficam duplicadas neste momento estou certo?

Por favor, me ajudem nesse problema, pois estou precisando muito dessa mão de vcs, valewwwwwwwwwwwwwwwwwwwwwwww

oi,

Em um projeto WEB o WEB-INF/lib é onde eu vou buscar as minhas libs, independente de ser Netbeans ou Eclipse.

Verifique na pasta lib do seu servidor (Tomcat, JBoss, etc) se já existe um arquivo log4j-XXX.jar.

Você deve ter apenas uma versão deste arquivo, ou no servidor ou na pasta WEB-INF/lib da sua aplicação

Abs

[quote=André Fonseca]oi,

Em um projeto WEB o WEB-INF/lib é onde eu vou buscar as minhas libs, independente de ser Netbeans ou Eclipse.

Verifique na pasta lib do seu servidor (Tomcat, JBoss, etc) se já existe um arquivo log4j-XXX.jar.

Você deve ter apenas uma versão deste arquivo, ou no servidor ou na pasta WEB-INF/lib da sua aplicação

Abs[/quote]

Cara valeu pela dica mais ainda continuo com o seguinte cenário, tipo assim, fiz isso:

Copiei todas libs envolvidas no projeto para WEB-INF/lib, que são:

/home/dev-thiagoh/Desenvolvimento/workspace-netbeans/smsfOficial/web/WEB-INF/lib/activation.jar
/home/dev-thiagoh/Desenvolvimento/workspace-netbeans/smsfOficial/web/WEB-INF/lib/antlr-2.7.6.jar
/home/dev-thiagoh/Desenvolvimento/workspace-netbeans/smsfOficial/web/WEB-INF/lib/barbecue-1.5-beta1.jar
/home/dev-thiagoh/Desenvolvimento/workspace-netbeans/smsfOficial/web/WEB-INF/lib/c3p0-0.9.1.jar
/home/dev-thiagoh/Desenvolvimento/workspace-netbeans/smsfOficial/web/WEB-INF/lib/commons-beanutils-1.7.jar
/home/dev-thiagoh/Desenvolvimento/workspace-netbeans/smsfOficial/web/WEB-INF/lib/commons-collections-2.1.1.jar
/home/dev-thiagoh/Desenvolvimento/workspace-netbeans/smsfOficial/web/WEB-INF/lib/commons-collections-3.1.jar
/home/dev-thiagoh/Desenvolvimento/workspace-netbeans/smsfOficial/web/WEB-INF/lib/commons-collections-3.2.1.jar
/home/dev-thiagoh/Desenvolvimento/workspace-netbeans/smsfOficial/web/WEB-INF/lib/commons-digester-1.7.jar
/home/dev-thiagoh/Desenvolvimento/workspace-netbeans/smsfOficial/web/WEB-INF/lib/commons-email-1.2.jar
/home/dev-thiagoh/Desenvolvimento/workspace-netbeans/smsfOficial/web/WEB-INF/lib/commons-email-1.2-javadoc.jar
/home/dev-thiagoh/Desenvolvimento/workspace-netbeans/smsfOficial/web/WEB-INF/lib/commons-email-1.2-sources.jar
/home/dev-thiagoh/Desenvolvimento/workspace-netbeans/smsfOficial/web/WEB-INF/lib/commons-fileupload-1.2.1.jar
/home/dev-thiagoh/Desenvolvimento/workspace-netbeans/smsfOficial/web/WEB-INF/lib/commons-io-1.4.jar
/home/dev-thiagoh/Desenvolvimento/workspace-netbeans/smsfOficial/web/WEB-INF/lib/commons-javaflow-20060411.jar
/home/dev-thiagoh/Desenvolvimento/workspace-netbeans/smsfOficial/web/WEB-INF/lib/commons-logging-1.1.1.jar
/home/dev-thiagoh/Desenvolvimento/workspace-netbeans/smsfOficial/web/WEB-INF/lib/commons-logging-1.1.jar
/home/dev-thiagoh/Desenvolvimento/workspace-netbeans/smsfOficial/web/WEB-INF/lib/dom4j-1.6.1.jar
/home/dev-thiagoh/Desenvolvimento/workspace-netbeans/smsfOficial/web/WEB-INF/lib/ehcache-1.5.0.jar
/home/dev-thiagoh/Desenvolvimento/workspace-netbeans/smsfOficial/web/WEB-INF/lib/hibernate3.jar
/home/dev-thiagoh/Desenvolvimento/workspace-netbeans/smsfOficial/web/WEB-INF/lib/hibernate-jpa-2.0-api-1.0.0.Final.jar
/home/dev-thiagoh/Desenvolvimento/workspace-netbeans/smsfOficial/web/WEB-INF/lib/hibernate-jpamodelgen-1.0.0.Final.jar
/home/dev-thiagoh/Desenvolvimento/workspace-netbeans/smsfOficial/web/WEB-INF/lib/iReport.jar
/home/dev-thiagoh/Desenvolvimento/workspace-netbeans/smsfOficial/web/WEB-INF/lib/itext-1.4.4.jar
/home/dev-thiagoh/Desenvolvimento/workspace-netbeans/smsfOficial/web/WEB-INF/lib/jasperreports-3.0.0.jar
/home/dev-thiagoh/Desenvolvimento/workspace-netbeans/smsfOficial/web/WEB-INF/lib/jasperreports-extensions-1.3.1.jar
/home/dev-thiagoh/Desenvolvimento/workspace-netbeans/smsfOficial/web/WEB-INF/lib/jasperreports-flash-2.0.5.jar
/home/dev-thiagoh/Desenvolvimento/workspace-netbeans/smsfOficial/web/WEB-INF/lib/javassist-3.9.0.GA.jar
/home/dev-thiagoh/Desenvolvimento/workspace-netbeans/smsfOficial/web/WEB-INF/lib/jcaptcha-1.0-all.jar
/home/dev-thiagoh/Desenvolvimento/workspace-netbeans/smsfOficial/web/WEB-INF/lib/jcommon-1.0.5.jar
/home/dev-thiagoh/Desenvolvimento/workspace-netbeans/smsfOficial/web/WEB-INF/lib/jfreechart-1.0.0.jar
/home/dev-thiagoh/Desenvolvimento/workspace-netbeans/smsfOficial/web/WEB-INF/lib/jta-1.1.jar
/home/dev-thiagoh/Desenvolvimento/workspace-netbeans/smsfOficial/web/WEB-INF/lib/jxl-2.6.jar
/home/dev-thiagoh/Desenvolvimento/workspace-netbeans/smsfOficial/web/WEB-INF/lib/log4j-1.2.15.jar
/home/dev-thiagoh/Desenvolvimento/workspace-netbeans/smsfOficial/web/WEB-INF/lib/mail.jar
/home/dev-thiagoh/Desenvolvimento/workspace-netbeans/smsfOficial/web/WEB-INF/lib/mysql-connector-java-5.0.7-bin.jar
/home/dev-thiagoh/Desenvolvimento/workspace-netbeans/smsfOficial/web/WEB-INF/lib/poi-3.0.1-FINAL-20070705.jar
/home/dev-thiagoh/Desenvolvimento/workspace-netbeans/smsfOficial/web/WEB-INF/lib/postgresql-8.4-701.jdbc4.jar
/home/dev-thiagoh/Desenvolvimento/workspace-netbeans/smsfOficial/web/WEB-INF/lib/primefaces-2.0.1-SNAPSHOT.jar
/home/dev-thiagoh/Desenvolvimento/workspace-netbeans/smsfOficial/web/WEB-INF/lib/recaptcha4j-0.0.7.jar
/home/dev-thiagoh/Desenvolvimento/workspace-netbeans/smsfOficial/web/WEB-INF/lib/servlet.jar
/home/dev-thiagoh/Desenvolvimento/workspace-netbeans/smsfOficial/web/WEB-INF/lib/slf4j.jar
/home/dev-thiagoh/Desenvolvimento/workspace-netbeans/smsfOficial/web/WEB-INF/lib/slf4j-api-1.5.8.jar
/home/dev-thiagoh/Desenvolvimento/workspace-netbeans/smsfOficial/web/WEB-INF/lib/slf4j-log4j12-1.5.8.jar
/home/dev-thiagoh/Desenvolvimento/workspace-netbeans/smsfOficial/web/WEB-INF/lib/swingx-2007_05_13.jar

e com isso tenho esse erro:

GRAVE: log4j:ERROR A “org.apache.log4j.ConsoleAppender” object is not assignable to a “org.apache.log4j.Appender” variable.
GRAVE: log4j:ERROR The class “org.apache.log4j.Appender” was loaded by
GRAVE: log4j:ERROR [WebappClassLoader (delegate=true; repositories=WEB-INF/classes/)] whereas object of type
GRAVE: log4j:ERROR “org.apache.log4j.ConsoleAppender” was loaded by [WebappClassLoader (delegate=true; repositories=WEB-INF/classes/)].
GRAVE: log4j:ERROR Could not instantiate appender named “stdout”.

se eu tirar a lib log4j-1.2.15.jar:

/home/dev-thiagoh/Desenvolvimento/workspace-netbeans/smsfOficial/web/WEB-INF/lib/log4j-1.2.15.jar

tenho esse erro:

GRAVE: org/apache/log4j/Level

e se eu tirar a lib slf4j-log4j12-1.5.8.jar:

/home/dev-thiagoh/Desenvolvimento/workspace-netbeans/smsfOficial/web/WEB-INF/lib/slf4j-log4j12-1.5.8.jar

tenho esse erro:

GRAVE: SLF4J: Failed to load class “org.slf4j.impl.StaticLoggerBinder”.
GRAVE: SLF4J: See http://www.slf4j.org/codes.html#StaticLoggerBinder for further details.
GRAVE: org/slf4j/impl/StaticLoggerBinder

dai eu tentei o seguinte tbm, deixei uma pasta com as libs do projeto fora do WEB-INF/lib do próprio projeto e só apontei as Bibliotecas para essa pasta.

Tipo assim o projeto smsfOficial usa as seguintes Bibliotecas custons:

AdtecJPA que contém as libs:

jar:file:/home/dev-thiagoh/Desenvolvimento/workspace-netbeans/lib/activation.jar!/
jar:file:/home/dev-thiagoh/Desenvolvimento/workspace-netbeans/lib/antlr-2.7.6.jar!/
jar:file:/home/dev-thiagoh/Desenvolvimento/workspace-netbeans/lib/barbecue-1.5-beta1.jar!/
jar:file:/home/dev-thiagoh/Desenvolvimento/workspace-netbeans/lib/c3p0-0.9.1.jar!/
jar:file:/home/dev-thiagoh/Desenvolvimento/workspace-netbeans/lib/commons-beanutils-1.7.jar!/
jar:file:/home/dev-thiagoh/Desenvolvimento/workspace-netbeans/lib/commons-collections-2.1.1.jar!/
jar:file:/home/dev-thiagoh/Desenvolvimento/workspace-netbeans/lib/commons-collections-3.1.jar!/
jar:file:/home/dev-thiagoh/Desenvolvimento/workspace-netbeans/lib/commons-collections-3.2.1.jar!/
jar:file:/home/dev-thiagoh/Desenvolvimento/workspace-netbeans/lib/commons-digester-1.7.jar!/
jar:file:/home/dev-thiagoh/Desenvolvimento/workspace-netbeans/lib/commons-io-1.4.jar!/
jar:file:/home/dev-thiagoh/Desenvolvimento/workspace-netbeans/lib/commons-javaflow-20060411.jar!/
jar:file:/home/dev-thiagoh/Desenvolvimento/workspace-netbeans/lib/commons-logging-1.1.1.jar!/
jar:file:/home/dev-thiagoh/Desenvolvimento/workspace-netbeans/lib/commons-logging-1.1.jar!/
jar:file:/home/dev-thiagoh/Desenvolvimento/workspace-netbeans/lib/dom4j-1.6.1.jar!/
jar:file:/home/dev-thiagoh/Desenvolvimento/workspace-netbeans/lib/ehcache-1.5.0.jar!/
jar:file:/home/dev-thiagoh/Desenvolvimento/workspace-netbeans/lib/hibernate-jpa-2.0-api-1.0.0.Final.jar!/
jar:file:/home/dev-thiagoh/Desenvolvimento/workspace-netbeans/lib/hibernate-jpamodelgen-1.0.0.Final.jar!/
jar:file:/home/dev-thiagoh/Desenvolvimento/workspace-netbeans/lib/hibernate3.jar!/
jar:file:/home/dev-thiagoh/Desenvolvimento/workspace-netbeans/lib/javassist-3.9.0.GA.jar!/
jar:file:/home/dev-thiagoh/Desenvolvimento/workspace-netbeans/lib/jcaptcha-1.0-all.jar!/
jar:file:/home/dev-thiagoh/Desenvolvimento/workspace-netbeans/lib/jcommon-1.0.5.jar!/
jar:file:/home/dev-thiagoh/Desenvolvimento/workspace-netbeans/lib/jfreechart-1.0.0.jar!/
jar:file:/home/dev-thiagoh/Desenvolvimento/workspace-netbeans/lib/jta-1.1.jar!/
jar:file:/home/dev-thiagoh/Desenvolvimento/workspace-netbeans/lib/jxl-2.6.jar!/
jar:file:/home/dev-thiagoh/Desenvolvimento/workspace-netbeans/lib/log4j-1.2.15.jar!/
jar:file:/home/dev-thiagoh/Desenvolvimento/workspace-netbeans/lib/mysql-connector-java-5.0.7-bin.jar!/
jar:file:/home/dev-thiagoh/Desenvolvimento/workspace-netbeans/lib/poi-3.0.1-FINAL-20070705.jar!/
jar:file:/home/dev-thiagoh/Desenvolvimento/workspace-netbeans/lib/postgresql-8.4-701.jdbc4.jar!/
jar:file:/home/dev-thiagoh/Desenvolvimento/workspace-netbeans/lib/primefaces-2.0.1-SNAPSHOT.jar!/
jar:file:/home/dev-thiagoh/Desenvolvimento/workspace-netbeans/lib/recaptcha4j-0.0.7.jar!/
jar:file:/home/dev-thiagoh/Desenvolvimento/workspace-netbeans/lib/servlet.jar!/
jar:file:/home/dev-thiagoh/Desenvolvimento/workspace-netbeans/lib/slf4j-api-1.5.8.jar!/
jar:file:/home/dev-thiagoh/Desenvolvimento/workspace-netbeans/lib/slf4j-log4j12-1.5.8.jar!/
jar:file:/home/dev-thiagoh/Desenvolvimento/workspace-netbeans/lib/slf4j.jar!/
jar:file:/home/dev-thiagoh/Desenvolvimento/workspace-netbeans/lib/swingx-2007_05_13.jar!/

email - que contem as libs:

jar:file:/home/dev-thiagoh/Desenvolvimento/workspace-netbeans/lib/commons-email-1.2-javadoc.jar!/
jar:file:/home/dev-thiagoh/Desenvolvimento/workspace-netbeans/lib/commons-email-1.2-sources.jar!/
jar:file:/home/dev-thiagoh/Desenvolvimento/workspace-netbeans/lib/commons-email-1.2.jar!/
jar:file:/home/dev-thiagoh/Desenvolvimento/workspace-netbeans/lib/mail.jar!/

iReport - que contém as libs:

jar:file:/home/dev-thiagoh/Desenvolvimento/workspace-netbeans/lib/iReport.jar!/
jar:file:/home/dev-thiagoh/Desenvolvimento/workspace-netbeans/lib/itext-1.4.4.jar!/
jar:file:/home/dev-thiagoh/Desenvolvimento/workspace-netbeans/lib/jasperreports-3.0.0.jar!/
jar:file:/home/dev-thiagoh/Desenvolvimento/workspace-netbeans/lib/jasperreports-extensions-1.3.1.jar!/
jar:file:/home/dev-thiagoh/Desenvolvimento/workspace-netbeans/lib/jasperreports-flash-2.0.5.jar!/

upload - que contém as libs:

jar:file:/home/dev-thiagoh/Desenvolvimento/workspace-netbeans/lib/commons-fileupload-1.2.1.jar!/

e o projeto slf4j como biblioteca tbm, que contém controles e classes abstratas.

Essas Bibliotecas customizadas, são usadas de qualquer forma tanto se eu copiar e colar todas as libs dentro de WEB-INF do smsfOficial ou se eu coloca-lás fora e aponta-lás.

E mesmo assim eu continuo com esses erros ai!

O meu servidor de aplicação é o Glassfish, e não encontrei nenhuma lib log4j-XXX.jar em nenhum dos repositórios, tanto no /usr/local/sges-v3/glassfish/domains/domain1/lib, quanto no /usr/local/sges-v3/glassfish/lib, enfim olhei todos e nada.

cara não sei mais o que fazer, nem onde procurar, como já disse olhei em todos os fóruns e só acho esse erro em inglês, e mesmo assim não fala nada com nada.

obrigado, fico no aguardo URGENTE!

oi,

parece que você está tendo um problema de conflito de classloaders

o classloader é a classe utilizada para carregar as outras classes

[quote]GRAVE: log4j:ERROR A “org.apache.log4j.ConsoleAppender” object is not assignable to a “org.apache.log4j.Appender” variable.
GRAVE: log4j:ERROR The class “org.apache.log4j.Appender” was loaded by
GRAVE: log4j:ERROR [WebappClassLoader (delegate=true; repositories=WEB-INF/classes/)] whereas object of type
GRAVE: log4j:ERROR “org.apache.log4j.ConsoleAppender” was loaded by [WebappClassLoader (delegate=true; repositories=WEB-INF/classes/)].
GRAVE: log4j:ERROR Could not instantiate appender named “stdout”.[/quote]

algumas coisas que você poderia fazer para tentar resolver:

  1. descobrir no seu projeto quem tem a classe org.apache.log4j.ConsoleAppenderm, no eclipse seria fazer um Ctrl-Shift-T para achar a classe, no Netbeans não sei…

  2. achar quem está fazendo apend para stdout e remover este

  3. criar o seu próprio classloader e sobrescrever o do glassfish

você já tentou fazer o deploy deste projeto no Tomcat, Jboss por exemplo? Acontece o mesmo erro?

abs

[quote=André Fonseca]

algumas coisas que você poderia fazer para tentar resolver:

  1. descobrir no seu projeto quem tem a classe org.apache.log4j.ConsoleAppenderm, no eclipse seria fazer um Ctrl-Shift-T para achar a classe, no Netbeans não sei…

  2. achar quem está fazendo apend para stdout e remover este

  3. criar o seu próprio classloader e sobrescrever o do glassfish

você já tentou fazer o deploy deste projeto no Tomcat, Jboss por exemplo? Acontece o mesmo erro?

abs[/quote]

  1. Procurei e não tem nenhuma classe que tem(use) essa classe org.apache.log4j.ConsoleAppenderm, no Netbeans é Ctrl+Shift+F para achar no projeto.

  2. onde fica isso? por padrão, vc sabe? tipo arquivo .xml, .java, .properties?

  3. não sei fazer isso tbm? pode me dizer como?

[quote=dev_thiagoh][quote=André Fonseca]

algumas coisas que você poderia fazer para tentar resolver:

  1. descobrir no seu projeto quem tem a classe org.apache.log4j.ConsoleAppenderm, no eclipse seria fazer um Ctrl-Shift-T para achar a classe, no Netbeans não sei…

  2. achar quem está fazendo apend para stdout e remover este

  3. criar o seu próprio classloader e sobrescrever o do glassfish

você já tentou fazer o deploy deste projeto no Tomcat, Jboss por exemplo? Acontece o mesmo erro?

abs[/quote]

  1. Procurei e não tem nenhuma classe que tem(use) essa classe org.apache.log4j.ConsoleAppenderm, no Netbeans é Ctrl+Shift+F para achar no projeto.

  2. onde fica isso? por padrão, vc sabe? tipo arquivo .xml, .java, .properties?

  3. não sei fazer isso tbm? pode me dizer como?

[/quote]

oi,

No caso de 1) você deve procurar dentro dos jars também, pois esta classe org.apache.log4j.ConsoleAppender deve estar dentro deles, isso pode estar acontecendo também por causa de versões diferentes do log4j, já tive problemas com isso

No caso de 2) os arquivos também devem ficar dentro dos jars, log4j.properties ou log4j.xml

Com relação ao item 3) tente primeiro resolver usando 1) e 2) e dê uma lida no tutorial abaixo

http://javafree.uol.com.br/artigo/876400/ClassLoader-Desmitificado.html

abs

[quote=André Fonseca]
oi,

No caso de 1) você deve procurar dentro dos jars também, pois esta classe org.apache.log4j.ConsoleAppender deve estar dentro deles, isso pode estar acontecendo também por causa de versões diferentes do log4j, já tive problemas com isso

No caso de 2) os arquivos também devem ficar dentro dos jars, log4j.properties ou log4j.xml

Com relação ao item 3) tente primeiro resolver usando 1) e 2) e dê uma lida no tutorial abaixo

http://javafree.uol.com.br/artigo/876400/ClassLoader-Desmitificado.html

abs[/quote]

só um pergunta tosca os .jars que vc fala são as libs do meu projeto neh? ou as do servidor da aplicação tbm?

[color=green]VERIFICADO[/color] a classe org.apache.log4j.ConsoleAppender está no log4j-1.2.15.jar

cara em relação ao item 2:

tipo já dei uma lida que esse log4j.xml ou log4j.properties, poderia ser customizado em um project.properties, não se estou enganado mais parece que sim…

mais de qualquer forma o meu project.properties está aqui:

[color=blue]auxiliary.org-netbeans-modules-projectapi.jsf_2e_language=Facelets
build.classes.dir=${build.web.dir}/WEB-INF/classes
build.classes.excludes=/*.java,/*.form
build.dir=build
build.generated.dir=${build.dir}/generated
build.generated.sources.dir=${build.dir}/generated-sources
build.test.classes.dir=${build.dir}/test/classes
build.test.results.dir=${build.dir}/test/results
build.web.dir=${build.dir}/web
build.web.excludes=${build.classes.excludes}
client.urlPart=
compile.jsps=false
conf.dir=${source.root}/conf
debug.classpath=${build.classes.dir}:${javac.classpath}
debug.test.classpath=
${run.test.classpath}
display.browser=true
dist.dir=dist
dist.ear.war=${dist.dir}/${war.ear.name}
dist.javadoc.dir=${dist.dir}/javadoc
dist.war=${dist.dir}/${war.name}
endorsed.classpath=
${libs.javaee-endorsed-api-6.0.classpath}
excludes=
file.reference.commons-collections-3.2.1.jar=/downloads/JCaptcha/commons-collections-3.2.1.jar
file.reference.commons-logging-1.1.1.jar=/downloads/JCaptcha/commons-logging-1.1.1.jar
file.reference.jcaptcha-1.0-all.jar=/downloads/JCaptcha/jcaptcha-1.0-all.jar
file.reference.primefaces-2.0.1-SNAPSHOT.jar=/downloads/primefaces-2.0.1-SNAPSHOT.jar
file.reference.recaptcha4j-0.0.7.jar=/downloads/recaptcha4j-0.0.7.jar
includes=**
j2ee.deploy.on.save=false
j2ee.platform=1.6-web
j2ee.server.type=gfv3ee6
jar.compress=false
javac.classpath=
${libs.AdtecJPA.classpath}:
${libs.email.classpath}:
${libs.iReport.classpath}:
${libs.upload.classpath}:
${file.reference.primefaces-2.0.1-SNAPSHOT.jar}:
${file.reference.recaptcha4j-0.0.7.jar}:
${file.reference.commons-collections-3.2.1.jar}:
${file.reference.commons-logging-1.1.1.jar}:
${file.reference.jcaptcha-1.0-all.jar}:
${reference.slf4j.jar}

Space-separated list of extra javac options

javac.compilerargs=
javac.debug=true
javac.deprecation=false
javac.source=1.5
javac.target=1.5
javac.test.classpath=
${javac.classpath}:
${build.classes.dir}:
${libs.junit.classpath}:
${libs.junit_4.classpath}
javadoc.additionalparam=
javadoc.author=false
javadoc.encoding=${source.encoding}
javadoc.noindex=false
javadoc.nonavbar=false
javadoc.notree=false
javadoc.preview=true
javadoc.private=false
javadoc.splitindex=true
javadoc.use=true
javadoc.version=false
javadoc.windowtitle=
jaxbwiz.endorsed.dirs="${netbeans.home}/…/ide12/modules/ext/jaxb/api"
jspcompilation.classpath=${jspc.classpath}:${javac.classpath}
lib.dir=${web.docbase.dir}/WEB-INF/lib
persistence.xml.dir=${conf.dir}
platform.active=default_platform
project.slf4j=…/slf4j
reference.slf4j.jar=${project.slf4j}/dist/slf4j.jar
resource.dir=setup
run.test.classpath=
${javac.test.classpath}:
${build.test.classes.dir}

Space-separated list of JVM arguments used when running a class with a main method or a unit test

(you may also define separate properties like run-sys-prop.name=value instead of -Dname=value):

runmain.jvmargs=
source.encoding=UTF-8
source.root=src
src.dir=${source.root}/java
war.content.additional=
war.ear.name=smsfOficial.war
war.name=smsfOficial.war
web.docbase.dir=web
webinf.dir=web/WEB-INF[/color]

se ajudar…

[quote=dev_thiagoh][quote=André Fonseca]
oi,

No caso de 1) você deve procurar dentro dos jars também, pois esta classe org.apache.log4j.ConsoleAppender deve estar dentro deles, isso pode estar acontecendo também por causa de versões diferentes do log4j, já tive problemas com isso

No caso de 2) os arquivos também devem ficar dentro dos jars, log4j.properties ou log4j.xml

Com relação ao item 3) tente primeiro resolver usando 1) e 2) e dê uma lida no tutorial abaixo

http://javafree.uol.com.br/artigo/876400/ClassLoader-Desmitificado.html

abs[/quote]

só um pergunta tosca os .jars que vc fala são as libs do meu projeto neh? ou as do servidor da aplicação tbm?[/quote]

Nos dois lugares.

Um teste rápido que você pode tentar fazer também é remover o jar do log4j do seu projeto e fazer o deploy

abs

[quote=André Fonseca]

só um pergunta tosca os .jars que vc fala são as libs do meu projeto neh? ou as do servidor da aplicação tbm?

Nos dois lugares.

Um teste rápido que você pode tentar fazer também é remover o jar do log4j do seu projeto e fazer o deploy

abs[/quote]

Isso eu fiz como te falei no segundo post, lá em cima, removi o log4j-1.2.15.jar da pasta WEB-INF/lib do projeto e fiz deploy, dai tenho esse erro:

GRAVE: org/apache/log4j/Level

Depois voltei o log4j-1.2.15.jar para pasta WEB-INF/lib do projeto e removi o slf4j-log4j12-1.5.8.jar, e tenho esse erro:

GRAVE: SLF4J: Failed to load class “org.slf4j.impl.StaticLoggerBinder”.
GRAVE: SLF4J: See http://www.slf4j.org/codes.html#StaticLoggerBinder for further details.
GRAVE: org/slf4j/impl/StaticLoggerBinder

oi,

A mensagem principal é esta

GRAVE: log4j:ERROR A "org.apache.log4j.ConsoleAppender" object is not assignable to a "org.apache.log4j.Appender" variable

Dentro do WEB-INF/classes deve ter um log4j.properties ou log4j.xml

Olhe dentro deste arquivo e altere a linha que está jogando para o console appender

Você deve ter alguma coisa parecida com isso

log4j.appender.stdout=org.apache.log4j.ConsoleAppender

Substitua a String

org.apache.log4j.ConsoleAppender

para

org.apache.log4j.FileAppender

Gere o .war novamente e tente fazer o deploy (depois você terá que configurar o log4j corretamente)

Como eu falei, você está tendo um conflito nas versões do log4j que estão sendo carregadas pelo classloader da aplicação web.

O problema está acontecendo no Console Appender que é o que joga para o sysout

Tente fazer isso que falei antes, depois você pode tentar criar o seu próprio classloader, isso diz para o glassfish usar o seu próprio log4j

Tenta ai e depois posta aqui o que aconteceu.

abs

[quote=André Fonseca]oi,

A mensagem principal é esta

GRAVE: log4j:ERROR A "org.apache.log4j.ConsoleAppender" object is not assignable to a "org.apache.log4j.Appender" variable

Dentro do WEB-INF/classes deve ter um log4j.properties ou log4j.xml

Olhe dentro deste arquivo e altere a linha que está jogando para o console appender

Você deve ter alguma coisa parecida com isso

log4j.appender.stdout=org.apache.log4j.ConsoleAppender

Substitua a String

org.apache.log4j.ConsoleAppender

para

org.apache.log4j.FileAppender

Gere o .war novamente e tente fazer o deploy (depois você terá que configurar o log4j corretamente)

Como eu falei, você está tendo um conflito nas versões do log4j que estão sendo carregadas pelo classloader da aplicação web.

O problema está acontecendo no Console Appender que é o que joga para o sysout

Tente fazer isso que falei antes, depois você pode tentar criar o seu próprio classloader, isso diz para o glassfish usar o seu próprio log4j

Tenta ai e depois posta aqui o que aconteceu.

abs[/quote]

Caro André Fonseca,

Cara eu dei uma lida em tudo que eu achei sobre log4j e ClassLoader, e cheguei a seguinte conclusão:

A respeito do log4j, vi que para mim trabalhar com essa funcionalidade, normalmente tenho que possuir duas libs no WEB-INF/lib do meu projeto, que são: log4j-X.X.X.jar e commons-logging-X.X.X.jar e também ter um arquivo log4j.properties ou log4j.xml que possui os parâmetros de configuração da funcionalidade log4j.

A respeito do ClassLoader, vi que se trata do processo de boot(BootStrap) da minha JVM, onde está etapa possui três CLASSLOADERS pré-definidos e que podemos adicionar e alterar classloaders nessa árvore. Isso irá garantir a flexibilidade e isolamento do código, algo muito comum e utilizado em Servidores de Aplicação como o JBoss e Glassfish e etc. Que se dá da seguinte maneira: O servidor vai isolar cada requisição criando classloader de modo que uma requisição não seja visível na “árvore” a outra, isso garante uma robustez e segurança muito grande a plataforma. Vi também que posso criar um CLASSLOADER com uma variável estática que servirá de escopo estático do CLASSLOADER carregado á baixo e que para que no processo de BootStrap seja carregado posso customizar o CLASSPATH padrão da JVM estendendo os jars visíveis a este CLASSPATH, tornando-os visíveis na JVM inteira.

Então pude concluir que:

Em relação ao projeto que tenho aqui, primeiramente torno a dizer, se trata de um projeto(legado) que já existia e que não participei da implementação do mesmo então por isso estou com essas dúvidas.

O que foi me passado é um repositório do projeto, provavelmete exportado pela IDE Netbeans onde faço o checkout desse projeto no próprio Netbeans, e uma vez que fiz o ckeckout
a IDE monta a estrutura do projeto tudo tranquilo, dai é que vem o problema.

Porque na estrutura do projeto NÃO EXISTE nenhum arquivo log4j.properties ou log4j.xml ou até mesmo algo que faça referência ao log4j nos arquivos de propriedades que existe no projeto, que no caso é project.properties e project.xml, build.xml, build-impl.xml.

Enfim todos arquivos .properties ou .xml que existe no projeto eu chequei e não consta nada que se refere a log4j.

Porém na WEB-INF/lib do projeto existe as libs log4j-X.X.X.jar e commons-logging-X.X.X.jar .

Também sei que para mim poder usar a tecnologia do log4j tenho que possuir alguma classe que instâncie o log4j, aquele procedimento padrão quando se instância qualque objeto de uma classe, no caso faz os imports necessários e depois instâncio os objetos de log.

Exemplo:
[i][color=green]
import org.apache.log4j.Logger;
import org.apache.log4j.Level;
import org.apache.log4j.BasicConfigurator;

public class LoggingTest {  
    static Logger logger = Logger.getLogger(LoggingTest.class);  
  
    public static void main(String[] args) {  
        BasicConfigurator.configure();  
  
        logger.setLevel(Level.INFO);  
        logger.debug(?Isso nao vai aparecer...?);  
        logger.info(?Inicializando...?);  
          
        try {  
            throw new Exception(?Loga esse, Log4J!?);  
        } catch (Exception e) {  
            logger.error(?Oops, deu erro: ? + e.getMessage());  
        }  
  
        logger.info(?Finalizando...?);  
    }     
}  

[/i][/color]

Dentro do projeto NÃO EXISTE nenhuma classe que instancie qualquer objeto que seja da classe org.apache.log4j.

Por isso não estou entendendo como esse projeto está usando log4j, sendo que não existe nada dentro dele que instancie essa classe.

e em relação a CLASSLOADER customizado creio que não seja pois para o uso de CLASSLOADER customizado teria que settar isso no CLASSPATH do JDK do java pelo que entendi, e nesta semana foi executado uma troca de servidor que mantem a aplicação no ar, e não foi realizado esse procedimento de alteração do CLASSPATH, e a aplicação está rodando normalmente.

Cara então é isso, não sei mais o que faço, se quizer me passar um contato seu para que eu possa te mandar o projeto pra vc dar uma olhada, estou a disposição.

esqueci de mencionar o que eu já tentei também:

  • criei o log4j.properties na WEB-INF/classes - resultado nada - o mesmo erro de sempre
  • criei o log4j.properties na raiz do projeto - resultado nada - o mesmo erro de sempre
  • criei o log4j.xml na WEB-INF/classes - resultado nada - o mesmo erro de sempre
  • criei o log4j.xml na raiz do projeto - resultado nada - o mesmo erro de sempre

[quote=André Fonseca]oi,

Gere o .war novamente e tente fazer o deploy (depois você terá que configurar o log4j corretamente)

Como eu falei, você está tendo um conflito nas versões do log4j que estão sendo carregadas pelo classloader da aplicação web.

O problema está acontecendo no Console Appender que é o que joga para o sysout

Tente fazer isso que falei antes, depois você pode tentar criar o seu próprio classloader, isso diz para o glassfish usar o seu próprio log4j

Tenta ai e depois posta aqui o que aconteceu.

abs[/quote]

No momento que vc cita:

“Como eu falei, você está tendo um conflito nas versões do log4j que estão sendo carregadas pelo classloader da aplicação web.”

dai eu fiz um print do status do CLASSLOADER e no CLASSPATH([color=red]AppClassPath[/color]) da aplicação tenho:

Boot class path:

/usr/local/netbeans-6.8/enterprise6/modules/ext/javaee6-endorsed/javax.annotation.jar: /usr/local/netbeans-6.8/enterprise6/modules/ext/javaee6-endorsed/jaxb-api-osgi.jar: /usr/local/netbeans-6.8/enterprise6/modules/ext/javaee6-endorsed/webservices-api-osgi.jar: /usr/lib/jvm/java-6-sun-1.6.0.24/jre/lib/resources.jar:/usr/lib/jvm/java-6-sun-1.6.0.24/jre/lib/rt.jar: /usr/lib/jvm/java-6-sun-1.6.0.24/jre/lib/sunrsasign.jar:/usr/lib/jvm/java-6-sun-1.6.0.24/jre/lib/jsse.jar: /usr/lib/jvm/java-6-sun-1.6.0.24/jre/lib/jce.jar:/usr/lib/jvm/java-6-sun-1.6.0.24/jre/lib/charsets.jar: /usr/lib/jvm/java-6-sun-1.6.0.24/jre/lib/modules/jdk.boot.jar:/usr/lib/jvm/java-6-sun-1.6.0.24/jre/classes

Extension class path:

/usr/lib/jvm/java-6-sun-1.6.0.24/jre/lib/ext:/usr/java/packages/lib/ext

[color=red]AppClassPath[/color]:

/home/dev-thiagoh/Desenvolvimento/workspace-netbeans/smsfOficial/build/web/WEB-INF/classes: /home/dev-thiagoh/Desenvolvimento/workspace-netbeans/smsfOficial/web/WEB-INF/lib/activation.jar: /home/dev-thiagoh/Desenvolvimento/workspace-netbeans/smsfOficial/web/WEB-INF/lib/antlr-2.7.6.jar: /home/dev-thiagoh/Desenvolvimento/workspace-netbeans/smsfOficial/web/WEB-INF/lib/barbecue-1.5-beta1.jar: /home/dev-thiagoh/Desenvolvimento/workspace-netbeans/smsfOficial/web/WEB-INF/lib/c3p0-0.9.1.jar: /home/dev-thiagoh/Desenvolvimento/workspace-netbeans/smsfOficial/web/WEB-INF/lib/commons-beanutils-1.7.jar: /home/dev-thiagoh/Desenvolvimento/workspace-netbeans/smsfOficial/web/WEB-INF/lib/commons-digester-1.7.jar: /home/dev-thiagoh/Desenvolvimento/workspace-netbeans/smsfOficial/web/WEB-INF/lib/commons-io-1.4.jar: /home/dev-thiagoh/Desenvolvimento/workspace-netbeans/smsfOficial/web/WEB-INF/lib/commons-javaflow-20060411.jar: /home/dev-thiagoh/Desenvolvimento/workspace-netbeans/smsfOficial/web/WEB-INF/lib/dom4j-1.6.1.jar: /home/dev-thiagoh/Desenvolvimento/workspace-netbeans/smsfOficial/web/WEB-INF/lib/ehcache-1.5.0.jar: /home/dev-thiagoh/Desenvolvimento/workspace-netbeans/smsfOficial/web/WEB-INF/lib/hibernate-jpa-2.0-api-1.0.0.Final.jar: /home/dev-thiagoh/Desenvolvimento/workspace-netbeans/smsfOficial/web/WEB-INF/lib/hibernate-jpamodelgen-1.0.0.Final.jar: /home/dev-thiagoh/Desenvolvimento/workspace-netbeans/smsfOficial/web/WEB-INF/lib/hibernate3.jar: /home/dev-thiagoh/Desenvolvimento/workspace-netbeans/smsfOficial/web/WEB-INF/lib/javassist-3.9.0.GA.jar: /home/dev-thiagoh/Desenvolvimento/workspace-netbeans/smsfOficial/web/WEB-INF/lib/jcommon-1.0.5.jar: /home/dev-thiagoh/Desenvolvimento/workspace-netbeans/smsfOficial/web/WEB-INF/lib/jfreechart-1.0.0.jar: /home/dev-thiagoh/Desenvolvimento/workspace-netbeans/smsfOficial/web/WEB-INF/lib/jta-1.1.jar: /home/dev-thiagoh/Desenvolvimento/workspace-netbeans/smsfOficial/web/WEB-INF/lib/jxl-2.6.jar: /home/dev-thiagoh/Desenvolvimento/workspace-netbeans/smsfOficial/web/WEB-INF/lib/log4j-1.2.15.jar: /home/dev-thiagoh/Desenvolvimento/workspace-netbeans/smsfOficial/web/WEB-INF/lib/mysql-connector-java-5.0.7-bin.jar: /home/dev-thiagoh/Desenvolvimento/workspace-netbeans/smsfOficial/web/WEB-INF/lib/poi-3.0.1-FINAL-20070705.jar: /home/dev-thiagoh/Desenvolvimento/workspace-netbeans/smsfOficial/web/WEB-INF/lib/postgresql-8.4-701.jdbc4.jar: /home/dev-thiagoh/Desenvolvimento/workspace-netbeans/smsfOficial/web/WEB-INF/lib/servlet.jar: /home/dev-thiagoh/Desenvolvimento/workspace-netbeans/smsfOficial/web/WEB-INF/lib/slf4j-api-1.5.8.jar: /home/dev-thiagoh/Desenvolvimento/workspace-netbeans/smsfOficial/web/WEB-INF/lib/slf4j-log4j12-1.5.8.jar: /home/dev-thiagoh/Desenvolvimento/workspace-netbeans/smsfOficial/web/WEB-INF/lib/slf4j.jar: /home/dev-thiagoh/Desenvolvimento/workspace-netbeans/smsfOficial/web/WEB-INF/lib/swingx-2007_05_13.jar: /home/dev-thiagoh/Desenvolvimento/workspace-netbeans/smsfOficial/web/WEB-INF/lib/commons-email-1.2-javadoc.jar: /home/dev-thiagoh/Desenvolvimento/workspace-netbeans/smsfOficial/web/WEB-INF/lib/commons-email-1.2-sources.jar: /home/dev-thiagoh/Desenvolvimento/workspace-netbeans/smsfOficial/web/WEB-INF/lib/commons-email-1.2.jar: /home/dev-thiagoh/Desenvolvimento/workspace-netbeans/smsfOficial/web/WEB-INF/lib/mail.jar: /home/dev-thiagoh/Desenvolvimento/workspace-netbeans/smsfOficial/web/WEB-INF/lib/iReport.jar: /home/dev-thiagoh/Desenvolvimento/workspace-netbeans/smsfOficial/web/WEB-INF/lib/itext-1.4.4.jar: /home/dev-thiagoh/Desenvolvimento/workspace-netbeans/smsfOficial/web/WEB-INF/lib/jasperreports-3.0.0.jar: /home/dev-thiagoh/Desenvolvimento/workspace-netbeans/smsfOficial/web/WEB-INF/lib/jasperreports-extensions-1.3.1.jar: /home/dev-thiagoh/Desenvolvimento/workspace-netbeans/smsfOficial/web/WEB-INF/lib/jasperreports-flash-2.0.5.jar: /home/dev-thiagoh/Desenvolvimento/workspace-netbeans/smsfOficial/web/WEB-INF/lib/commons-fileupload-1.2.1.jar: /home/dev-thiagoh/Desenvolvimento/workspace-netbeans/smsfOficial/web/WEB-INF/lib/primefaces-2.0.1-SNAPSHOT.jar: /home/dev-thiagoh/Desenvolvimento/workspace-netbeans/smsfOficial/web/WEB-INF/lib/recaptcha4j-0.0.7.jar: /home/dev-thiagoh/Desenvolvimento/workspace-netbeans/smsfOficial/web/WEB-INF/lib/commons-collections-3.2.1.jar: /home/dev-thiagoh/Desenvolvimento/workspace-netbeans/smsfOficial/web/WEB-INF/lib/commons-logging-1.1.1.jar: /home/dev-thiagoh/Desenvolvimento/workspace-netbeans/smsfOficial/web/WEB-INF/lib/jcaptcha-1.0-all.jar: /home/dev-thiagoh/Desenvolvimento/workspace-netbeans/slf4j/dist/slf4j.jar: /usr/local/sges-v3/glassfish/modules/endorsed/jaxb-api-osgi.jar: /usr/local/sges-v3/glassfish/modules/endorsed/webservices-api-osgi.jar: /usr/local/sges-v3/glassfish/modules/javax.security.jacc.jar: /usr/local/sges-v3/glassfish/modules/javax.resource.jar: /usr/local/sges-v3/glassfish/modules/javax.transaction.jar: /usr/local/sges-v3/glassfish/modules/mail.jar: /usr/local/sges-v3/glassfish/modules/javax.persistence.jar: /usr/local/sges-v3/glassfish/modules/javax.enterprise.deploy.jar: /usr/local/sges-v3/glassfish/modules/bean-validator.jar: /usr/local/sges-v3/glassfish/modules/jsr311-api.jar: /usr/local/sges-v3/glassfish/modules/jsf-api.jar: /usr/local/sges-v3/glassfish/modules/weld-osgi-bundle.jar: /usr/local/sges-v3/glassfish/modules/jstl-impl.jar: /usr/local/sges-v3/glassfish/modules/javax.servlet.jsp.jstl.jar: /usr/local/sges-v3/glassfish/modules/javax.management.j2ee.jar: /usr/local/sges-v3/glassfish/modules/javax.security.auth.message.jar: /usr/local/sges-v3/glassfish/modules/javax.ejb.jar: /usr/local/sges-v3/glassfish/modules/javax.servlet.jsp.jar: /usr/local/sges-v3/glassfish/modules/javax.jms.jar: /usr/local/sges-v3/glassfish/modules/endorsed/javax.annotation.jar: /usr/local/sges-v3/glassfish/modules/javax.servlet.jar: /usr/local/sges-v3/glassfish/modules/jsf-impl.jar

Boot CL: null

App ClassLoader:

sun.misc.Launcher$AppClassLoader@6d6f0472

pelo resultado não parece que ele possui duas versões para log4j-1.2.15.jar.

Para obter esse resultado criei uma classe Info.java e dentro dela coloquei:

[code]/*

  • To change this template, choose Tools | Templates
  • and open the template in the editor.
    */

package info;

/**
*

  • @author dev-thiagoh
    */
    public class Info {

    public static void main(String args[]){

    System.out.println("\nBoot class path: " + System.getProperty(“sun.boot.class.path”));
    System.out.println("\nExtension class path: " + System.getProperty(“java.ext.dirs”));
    System.out.println("\nAppClassPath: " + System.getProperty(“java.class.path”));
    Info i=new Info();
    System.out.println("\nBoot CL: " + java.lang.Object.class.getClassLoader());
    System.out.println("\nApp ClassLoader: " + i.getClass().getClassLoader());
    }
    }
    [/code]

[color=red][size=20]e ae pessoal nada, ninguém?[/size][/color]

Se é que mais alguem está vendo esse post, além do André Fonseca.

[size=20][color=green]AHHHHHHHHHHHHHHHHHHHHHHH Graças a Deus, até que enfim, descobri o [/color][color=red]ERRO[/color][color=green], que não queria se calar.[/size][/color]

Cara agora só não descobri ainda o porque, mais vou estudar sobre e posto aqui.

Tipo depois de pesquisar, pesquisar e pesquisar, então me deparei com este artigo e então meio sem acreditar que resolveria, mais tentei, e deu certo.

Não sei se vou conseguir descrever, o quanto é complexo, mais vou tentar explicar.

Fiz o seguinte:

Simplesmente, copiei e colei, a lib log4j-1.2.15.jar na pasta /glassfish-v3/glassfish/domains/domain1/lib e [color=green]PIMBA[/color] tudo funcionando perfeitamente, sem conflitos.

Então é isso.

Galera valew ai pela ajuda de todos, e principalmente do André Fonseca, valew cara, obrigado pela dedicação de querer me ajudar, valew mesmo.

Até a próxima, Valewwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwww.

Desculpe não ter podido responder antes, estava enrolado aqui no trabalho

O fato do seu projeto não ter o log4j.properties ou log4j.xml só irá causar um warning, não irá ocasionar o erro que mencionou.

Opa, bom que resolveu, parabens !

Provavelmente ninguem tinha feito o deploy deste projeto no glassfish desta versão antes heim…

Abs

[quote=André Fonseca]Desculpe não ter podido responder antes, estava enrolado aqui no trabalho

O fato do seu projeto não ter o log4j.properties ou log4j.xml só irá causar um warning, não irá ocasionar o erro que mencionou.

Opa, bom que resolveu, parabens !

Provavelmente ninguem tinha feito o deploy deste projeto no glassfish desta versão antes heim…

Abs

[/quote]

É verdade André, pode ser que ninguém tenha feito o deploy de um projeto com essa arquitetura no glassfish ainda, mais agora se alguém tiver esse problema, já tens aqui a solução.

Valew cara, obrigadão pela ajuda.