-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Ok I can see at least some one is really using commons-logging. I understand and withdraw my proposal to remove the commons-logging. And Oleg, well it might be the case that other jars also might have dependencies on commons-logging, so we will have to live with it.
Thanks, Chinthaka robert lazarski wrote: > I agree there are too many jars - I just did a project and it was a > drag going through all those deps. > > But why are we limping with commons-logging 1.1 - because its a jar > dep? IIRC correctly almost all of the apache projects use it. > commons-logging is so well, common, you'll probably need it anyways. > > Debugging via logs is a very important thing and is more complicated > than it may appear. There are not only several IDE's but several JEE > servers. I actually use axis2 in alot of these JEE servers. When you > start trying to debug axis2 via eclipse live on things like JBoss and > JPDA, some loggers like commons-logging 1.0.4 will crash hard. JBoss > is a good example of a complicated and hard to override logging > scheme. > > In short, you're probably going to need commons-logging anyways since > everyone uses it, and if history is any guide its going to be left up > to the users to test any other logging on everything but tomcat. Since > JDK logging is not at all common, help may be hard to come by. So I > see pain with little benefit. I'm fighting for this because its not at > all fun to waste time on logging problems, and commons-logging 1.1 > simply works everywhere axis2 has run. > > Robert > > > > On 10/27/07, Eran Chinthaka <[EMAIL PROTECTED]> wrote: > Hi Robert, > > Yes it is not broken. But why do we wanna limp with it? If we had used a > separate, say String class without using java.lang.String, do you wanna > keep it, if java.lang.String serves the purpose. > Look at how pain it is to deal with numerous jars within Axis2. I'd like > to cut down whatever possible whenever possible. > > Also I totally agree with Tom's comments. We can come up with usecases > which commons-logging becomes handy. But how many users will use it or > come across that use case vs how many users find it difficult to set up > Axis2 to run within their box? I agree removing just two or three jars > won't solve the problem, but at least that will be a start. > > Thanks, > Chinthaka > > robert lazarski wrote: >>>> Um, Axis2 has been on commons-logging 1.1 since right after Axis2 1.0 >>>> . The most common JEE server is JBoss, and Axis2 and commons-logging >>>> plays nice there. IMHO, If it aint broke, don't fix it. >>>> >>>> Robert >>>> >>>> On 10/23/07, Tom Jordahl <[EMAIL PROTECTED]> wrote: >>>>> Of course if Axis2 switched to commons-logging 1.1 and the container it >>>>> is running in uses 1.0.4 (for instance) then you are worse off than when >>>>> you started. >>>>> >>>>> My feeling is that commons-logging is a great idea - as long as you are >>>>> the only one in the "pool" using it. Once you try to integrate with >>>>> another J2EE server/project/whatever that *also* uses it, you tend to >>>>> get in to trouble. >>>>> >>>>> Using the JDK api just gets Axis2 out of the line of fire in the >>>>> "logging wars". >>>>> -- >>>>> Tom Jordahl >>>>> >>>>> -----Original Message----- >>>>> From: robert lazarski [mailto:[EMAIL PROTECTED] >>>>> Sent: Monday, October 22, 2007 8:01 PM >>>>> To: axis-dev@ws.apache.org >>>>> Subject: Re: [Axis2] Understanding Axis2 dependencies >>>>> >>>>> I've been stuck in classloader hell many times and moving to >>>>> commons-logging 1.1 solved a lot of problems for me - there's been a >>>>> lot of work put into that area. Also, everything else in apache land >>>>> uses commons-logging. +1 for keeping it. >>>>> >>>>> Robert >>>>> >>>>> On 10/22/07, Tom Jordahl <[EMAIL PROTECTED]> wrote: >>>>>> [Concerning commons-logging] >>>>>>> also what would you replace it with ? >>>>>> I actually think that the JDK 1.4 logging APIs would probably do the >>>>>> trick, not have "jar hell" problems, and be functional enough for most >>>>>> everyone. >>>>>> >>>>>> -- >>>>>> Tom Jordahl >>>>>> >>>>>> -----Original Message----- >>>>>> From: Ajith Ranabahu [mailto:[EMAIL PROTECTED] >>>>>> Sent: Wednesday, October 17, 2007 10:39 PM >>>>>> To: axis-dev@ws.apache.org >>>>>> Subject: Re: [Axis2] Understanding Axis2 dependencies >>>>>> >>>>>> Hi, >>>>>> >>>>>> On 10/17/07, Eran Chinthaka <[EMAIL PROTECTED]> wrote: >>>> Since the topic is about jar dependencies, I'd like to comment on >>>>>> two >>>> aspects. >>>> >>>> 1. As one can see there is a huge number of dependencies we have in >>>> Axis2 and I think we ship almost all of them with our releases. Why >>>> should we release both xbeans and jibx with adb? My suggestion, >>>>>> let's >>>> ship the minimum number of jars required for a user. If he needs to >>>>>>> use >>>> XmlBeans, then let him download it. Same thing for JiBX. >>>> And also it is better to see the minimum set of jars required to run >>>>>> a >>>> client somewhere. I raised this point couple of days before also. If >>>>>>> you >>>> need to do a SOAP call, you need to include more than 20-25 jars. >>>>>>> Yes we can do that. We already pick up the databinding implementation >>>>>>> by reflection and it is easy enough to print a message to print a >>>>>>> readable error message for the absence of the jars. >>>>>>> What I prefer to have is jar bundles for each databinding. Say for >>>>>>> XMLBeans we have a xmlbeans bundle (Xbeans jar, the Xbeans-codegen >>>>>>> module etc) and so on. >>>>>>> >>>> 2. Why do we need to have commons-logging? One would say well it >>>>>> let's >>>> you plug "any" logging module. How many of the users have really >>>>>> used >>>>>>> a >>>> logging framework other than log4j? This is YAGNI for me. (you can >>>>>>> also >>>> see very good comments about commons-logging from our valuable >>>>>> admirer >>>> here http://www.bileblog.org/?p=259) >>>>>>> Well not really. All our logging code is based on commons-logging. If >>>>>>> we are to remove this code it would be somewhat significant effort and >>>>>>> also what would you replace it with ? The way it is right now is the >>>>>>> best way. What we can do is to send the default config to use >>>>>>> java.util logging so that we do not need to send the log4j jar along. >>>>>>> >>>>>>> >>>> Just my 2 cents. >>>> >>>> Thanks, >>>> Chinthaka >>>> >>>> Sanka Samaranayke wrote: >>>>>>>>> Hi, >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> Sanjiva Weerawarana wrote: >>>>>>>>>> Thanks Ajith. >>>>>>>>>> >>>>>>>>>> I think we should document this somewhere- we often get this >>>>>>> question >>>>>>>>>> and there's obviously reasons for why we have all these >>>>>>> dependencies. >>>>>>>>>> We need to clearly indicate which things are optional and >>>>>> indicate >>>>>>>>>> under what conditions they come into use. >>>>>>>>>> >>>>>>>>>> I am not a fan of going back to the seven different distributions >>>>>>>>>> model as that was confusing to users. Knowing the dependency >>>>>>> reasons >>>>>>>>>> will help embedders decide what they really need to pull in and >>>>>>> what's >>>>>>>>>> optional. >>>>>>>>>> >>>>>>>>>> One jar I didn't understand is the mex jar. Why is that around; >>>>>>> that >>>>>>>>>> should only be in the mex mar I believe. >>>>>>>>> You need that jar if you use MexClient in your client code. >>>>>>>>> >>>>>>>>> Thanks, >>>>>>>>> Sanka >>>>>>>>> >>>>>>>>>> Sanjiva. >>>>>>>>>> >>>>>>>>>> Ajith Ranabahu wrote: >>>>>>>>>>> Hi Lawrence, >>>>>>>>>>> Let me see whether I can make sense of some of the stuff. Others >>>>>>> will >>>>>>>>>>> chip in as needed and will surely holler if I make a mistake. >>>>>>>>>>> >>>>>>>>>>>> Axis2 Third Party Dependencies >>>>>>>>>>>> ------------------------------ >>>>>>>>>>>> activation-1.1.jar MIME support >>>>>>>>>>>> annogen-0.1.0.jar Annotation support >>>>>>>>>>>> axiom-api-1.2.5.jar XML pull parsing >>>>>>>>>>>> axiom-dom-1.2.5.jar XML pull parsing >>>>>>>>>>>> axiom-impl-1.2.5.jar XML pull parsing >>>>>>>>>>>> backport-util-concurrent-2.2.jar ? >>>>>>>>>>> Thread pooling support. This feature is built in for Java 1.5 >>>>>> and >>>>>>> this >>>>>>>>>>> particular jar has a backport of that code to Java 1.4 >>>>>>>>>>> >>>>>>>>>>>> commons-codec-1.3.jar URL encoding? >>>>>>>>>>>> commons-fileupload-1.1.1.jar Used for uploading new >>>>>>> service >>>>>>>>>>>> files in the admin >>>>>> client? >>>>>>>>>>> Yes - needed only when using the webapp >>>>>>>>>>> >>>>>>>>>>>> commons-httpclient-3.0.1.jar Used by the Axis2 kernel? >>>>>>>>>>> Yes - but primarily on the client side. I believe it is needed >>>>>> in >>>>>>> the >>>>>>>>>>> server side if asynchronous calls are to be supported. >>>>>>>>>>> >>>>>>>>>>>> commons-io-1.2.jar ? >>>>>>>>>>>> commons-logging-1.1.jar Is this related to Log4J? >>>>>>>>>>> Well kind of. Commons logging is a common API on multiple >>>>>> logging >>>>>>>>>>> frameworks (log4j/java.util.logging) but allows the switching of >>>>>>> the >>>>>>>>>>> logging engine easily. All the logging code inside the Axis2 >>>>>>> source >>>>>>>>>>> are made using commons logging classes. >>>>>>>>>>> >>>>>>>>>>>> geronimo-annotation_1.0_spec-1.1.jar More annotation support? >>>>>>>>>>>> geronimo-jms_1.1_spec-1.1.jar JMS bindings? >>>>>>>>>>> JMS transport really. >>>>>>>>>>> >>>>>>>>>>>> httpcore-4.0-alpha5.jar Used by the Axis2 kernel? >>>>>>>>>>>> httpcore-nio-4.0-alpha5.jar Used by the Axis2 kernel? >>>>>>>>>>>> httpcore-niossl-4.0-alpha5.jar Used by the Axis2 kernel? >>>>>>>>>>> The nio (non-blocking io) transport dependancies. Its an >>>>>> improved >>>>>>>>>>> version of the HTTP transport. My understanding is that this is >>>>>>> used >>>>>>>>>>> optionally (the default Axis2.xml does not point to this >>>>>> transport >>>>>>>>>>> AFAIK) but needs confirmation >>>>>>>>>>> >>>>>>>>>>>> jaxb-api-2.0.jar Used by the Axis2 kernel? >>>>>>>>>>>> jaxb-impl-2.0.5.jar Used by the Axis2 kernel? >>>>>>>>>>>> jaxb-xjc-2.0.5.jar Used by the Axis2 kernel? >>>>>>>>>>> These were primarily for the Jaxb based code generation but now >>>>>>> the >>>>>>>>>>> JAX-WS module uses these as dependencies. In any case these are >>>>>>> needed >>>>>>>>>>> 1. if the user needs to generate code with Jaxb data binding >>>>>>>>>>> 2. If he needs the JAX-WS module running (which is only on a >>>>>> jdk >>>>>>> 1.5 >>>>>>>>>>> environment) >>>>>>>>>>> >>>>>>>>>>>> jaxen-1.1.1.jar XPath engine - where is >>>>>>> this >>>>>>>>>>>> used? >>>>>>>>>>> AXIOM has a Jaxen based Xpath implementation and this jar has >>>>>> the >>>>>>> core >>>>>>>>>>> Jaxen classes for it >>>>>>>>>>> >>>>>>>>>>>> jettison-1.0-RC1.jar JSON StAX parser >>>>>>>>>>>> jibx-bind-1.1.5.jar Related to JAXB? >>>>>>>>>>>> jibx-run-1.1.5.jar Related to JAXB? >>>>>>>>>>> Nope. Jibx is an alternate databinding. My guess is one would >>>>>> need >>>>>>>>>>> these only to use Jibx generated code (databinding - either on >>>>>>> server >>>>>>>>>>> side or client side) >>>>>>>>>>> >>>>>>>>>>>> juli-6.0.10.jar ? >>>>>>>>>>> Juli is an alternate implementation to Java.util logging from >>>>>>> tomcat. >>>>>>>>>>> Here is what the tomcat site says >>>>>>>>>>> "A limitation of JDK Logging appears to be the inability to >>>>>> have >>>>>>>>>>> per-web application logging, as the configuration is per-VM. As >>>>>> a >>>>>>>>>>> result, Tomcat will, in the default configuration, replace the >>>>>>> default >>>>>>>>>>> LogManager implementation with a container friendly >>>>>> implementation >>>>>>>>>>> called JULI, which addresses these shortcomings." >>>>>>>>>>> >>>>>>>>>>> It seems that this one is needed only when the webapp comes to >>>>>>> play >>>>>>>>>>>> log4j-1.2.14.jar Logging - Is this >>>>>> optional? >>>>>>> I >>>>>>>>>>>> don't >>>>>>>>>>>> always want to use Log4J >>>>>> - >>>>>>> for >>>>>>>>>>>> example, when working >>>>>> with >>>>>>>>>>>> Eclipse. >>>>>>>>>>> I suppose the default logging configuration with common-logging >>>>>> is >>>>>>>>>>> log4j. I assume we can turn it to java.util logging but most >>>>>> folks >>>>>>> are >>>>>>>>>>> not in favor of it (it will reduce this jar though) >>>>>>>>>>> >>>>>>>>>>>> mail-1.4.jar MIME support? >>>>>>>>>>> Yes >>>>>>>>>>> >>>>>>>>>>>> mex-impl-1.3.jar ? >>>>>>>>>>> Metadata exchange implementation (WS-Mex). >>>>>>>>>>> >>>>>>>>>>>> neethi-2.0.2.jar WS Policy - Is this >>>>>>> optional? >>>>>>>>>>> I don't think so. This would be required both at runtime and >>>>>>> codegen >>>>>>>>>>> time to process policies >>>>>>>>>>> >>>>>>>>>>>> soapmonitor-1.3.jar Is this part of Axis2 or >>>>>>> another >>>>>>>>>>>> project? Is this just >>>>>> used >>>>>>> by the >>>>>>>>>>>> Axis2 runtime or is it >>>>>> just >>>>>>> the >>>>>>>>>>>> standalone SOAP monitor >>>>>>> tool? >>>>>>>>>>> soapmonitor has two parts - the applet and this server side >>>>>>> component. >>>>>>>>>>> We may be able to make it optional (i.e. pack it with the war >>>>>>> only) >>>>>>>>>>>> stax-api-1.0.1.jar XML pull parsing - I >>>>>> think >>>>>>> this >>>>>>>>>>>> should be replaced in the >>>>>>> next >>>>>>>>>>>> version with Geronimo's >>>>>>>>>>>> API as Axiom has made the >>>>>>> change >>>>>>>>>>> I'm not sure whether the API has changed. But this jar is only >>>>>> the >>>>>>> API. >>>>>>>>>>>> tribes-6.0.10.jar ? >>>>>>>>>>> Clustering implementation >>>>>>>>>>> >>>>>>>>>>>> woden-1.0-incubating-M7b.jar WSDL 2.0 support >>>>>>>>>>>> wsdl4j-1.6.2.jar WSDL 1.1 support >>>>>>>>>>>> wstx-asl-3.2.1.jar XML pull parsing >>>>>>>>>>>> xbean-2.2.0.jar Looks like a competitor >>>>>> to >>>>>>> OSGi - >>>>>>>>>>>> where is this used? >>>>>>>>>>> Don't let the name fool you :) This is actually the XMLBeans >>>>>> core >>>>>>>>>>> classes. There is a sepearate project called XBeans that has no >>>>>>>>>>> relation to this. This one is only needed if one uses XMLBeans >>>>>>>>>>> classes. >>>>>>>>>>> >>>>>>>>>>>> xalan-2.7.0.jar XSLT - Where is this >>>>>> used? >>>>>>>>>>>> xercesImpl-2.8.1.jar DOM parser - Does Axis2 >>>>>>> actually >>>>>>>>>>>> need a DOM parser? I >>>>>>> thought >>>>>>>>>>>> everything was done with >>>>>>>>>>>> pull parsing. >>>>>>>>>>>> xml-apis-1.3.03.jar DOM parser >>>>>>>>>>> Axis2 has some DOM based code in the code generator but the >>>>>>> standard >>>>>>>>>>> VM DOM impl is sufficient for that. The above jars are used >>>>>>> primarily >>>>>>>>>>> by the SAAJ impl which has a DOM level 3 dependency. JDK 1.4 >>>>>>> included >>>>>>>>>>> parser (Crimson) is DOM level 2 I believe. >>>>>>>>>>> >>>>>>>>>>>> XmlSchema-1.3.2.jar XML schema support >>>>>>>>>>>> >>>>>>>>>>>> Thanks, >>>>>>>>>>>> >>>>>>>>>>>> Lawrence >>>>>>>>>>>> >>>>>>>>>>> To me it seems that we can ship certain jars only for the >>>>>> webapp. >>>>>>> Also >>>>>>>>>>> we have been discussing three types of distros, minimal, >>>>>> standard >>>>>>> and >>>>>>>>>>> full which will include jars in various degrees but it seemed a >>>>>>> bit >>>>>>>>>>> confusing at that time for the users (this was actually done in >>>>>>> 1.0 >>>>>>>>>>> release). May be it is time to restart these discussions >>>>>>>>>>> >>>>>>> >>>>> --------------------------------------------------------------------- > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] >>>>>>> >>>>>> -- >>>>>> Ajith Ranabahu >>>>>> >>>>>> Reading, after a certain age, diverts the mind too much from its >>>>>> creative pursuits. Any man who reads too much and uses his own brain >>>>>> too little falls into lazy habits of thinking - Albert Einstein >>>>>> >>>>>> --------------------------------------------------------------------- >>>>>> To unsubscribe, e-mail: [EMAIL PROTECTED] >>>>>> For additional commands, e-mail: [EMAIL PROTECTED] >>>>>> >>>>>> >>>>>> --------------------------------------------------------------------- >>>>>> To unsubscribe, e-mail: [EMAIL PROTECTED] >>>>>> For additional commands, e-mail: [EMAIL PROTECTED] >>>>>> >>>>>> >>>>> --------------------------------------------------------------------- >>>>> To unsubscribe, e-mail: [EMAIL PROTECTED] >>>>> For additional commands, e-mail: [EMAIL PROTECTED] >>>>> >>>>> >>>>> --------------------------------------------------------------------- >>>>> To unsubscribe, e-mail: [EMAIL PROTECTED] >>>>> For additional commands, e-mail: [EMAIL PROTECTED] >>>>> >>>>> >>>> --------------------------------------------------------------------- >>>> To unsubscribe, e-mail: [EMAIL PROTECTED] >>>> For additional commands, e-mail: [EMAIL PROTECTED] > > >> - --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] >> >> > --------------------------------------------------------------------- > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.6 (GNU/Linux) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org iD8DBQFHJJpSjON2uBzUhh8RAmyxAKCOidCQhOKVvmOHFsf3Po58dmnqwQCeK7ZQ I3bk1wnUzquG7uW8XWCKwXs= =GZ4p -----END PGP SIGNATURE----- --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]