Link to home
Start Free TrialLog in
Avatar of npglobal
npglobalFlag for India

asked on

ClassLoading In weblogic 10 Vs 10.3.3 ???

Dear All ,
I have couple of questions related to weblogic 10.3 version ...Pls help

1) Facing Some problems while configuring logger for my application............... I have an ear which is compiled with Java 5 and is well working with weblogic 10 . My ear using log4j and for this iam not addign any log4j jar while deploying... I hope this is not necessary , weblogic contains log4j jars inbuilt and loads them on server start up.......

But the same scenario , is not working in weblogic 10.3.3 .... When i deploy ear , Iam getting following exception in 10.3.3 :
java.lang.ClassNotFoundException: org.apache.log4j.Logger
at weblogic.utils.classloaders.GenericClassLoader.findLocalClass(Generic
ClassLoader.java:280)
at weblogic.utils.classloaders.GenericClassLoader.findClass(GenericClass
Loader.java:253)
at weblogic.utils.classloaders.ChangeAwareClassLoader.findClass(ChangeAw
areClassLoader.java:56)
at java.lang.ClassLoader.loadClass(ClassLoader.java:307)

And the issue is getting solved , when i explicly keep the log4j jar in domain-home\lib folder ...... Iam unable to get difference between both weblogic versions classloaders ??/

2) I know that weblogic 10.3 onwards supports java 6... So , can't we deploy applications compiled with 5 into it.?? will it bring any problems ??

3) Can't we start weblogic 10.3 server domain by pointing to JDK 5 ??? When i changed java-home of domain to java 5 it's not at all starting......?? If it supports 6 , i feel there should be backward compatibility as well so that it should support 5 in all cases ??? I might be wrong ...but pls answer my questions
Avatar of vsudip
vsudip
Flag of India image

Can u share the code snippet... how are you using log4j in your application ?
ASKER CERTIFIED SOLUTION
Avatar of vsudip
vsudip
Flag of India image

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
Avatar of npglobal

ASKER

Thanks for reply dear vsudip..... That sound's different for me..... Why In weblogic 10.3 , they removed log4j.jar from classpath ??  But I found the jar's(Related to log4j , Commons-logging)  present inside weblogic server folder .

Where I get these information , I searched in weblogic 10.3.3 , but couldn't find any thing .... Now , we want to migrate from 10 to 10.3.3 , so can i find any migration steps in weblogic docs ??

And can u pls suggest a way to my last question as well ? i.e why can't i start weblogic server with jdk 1.5 ?? I guess all server jars might get compiled with jdk 6 .... So jdk 5 classloader unable to load classes compiled with 6 ... Iam I right ?



Iam using log4j related code in one of my servlet which loads on server start up... So , even my application is not deployed because of this reason ...
SOLUTION
Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
Hi vsudip ,

Yes....Found answers to all questions.... Log4j is not there in classpath of weblogic 10.3 server .... The reason is that , if user wants specific log4j version jar to be loaded he wont get those class if weblogic also loads it's default jar ( as it will be first in classpath tree) ....... That's why they removed  loading of log4j jar in weblogic 10.3

We can deploy applications compiled with 1.5 , but can not use 1.6 to start weblogic as weblogic server inbuilt jars are compiled with java 6........ Lower level classloader can not load classes compiled with higher level........

Thanks for replies........... :):)
I've requested that this question be closed as follows:

Accepted answer: 0 points for npglobal's comment http:/Q_27309516.html#36542973

for the following reason:

Found answer with the help of suggestions
Hi... if comment is ' Found answer with the help of suggestions' so why the points were not assigned ?
Recommendation:
option 3) below posts should be treated as answer , answer Id's are 36541965 ( vsudip ) , 36542282 (vsudip).