google-code implements guice as the main Injector but previously I've used Plexus Injector specifically for injecting annotated artifacts via Plexus Framework in Maven Spring Injector specifically for injecting annotated artifacts via Spring Framework If you are working in 'Google Summer Of Code' there is an *assumption* that you will use guice for your injector
SAX is an event driven way of constructing DOM Objects 'on the fly' vs DOM where you the whole Document prior to usage.. SAX was created for situations where on the fly construction of your DOM can be achieved based on known 'events' DOM always works..but you are beholden to construct the entire DOM Document prior to usage http://en.wikipedia.org/wiki/Simple_API_for_XML Statics are artifacts of what used to be called global variables..They are not ThreadLocal statics are generally considered by the Heap Manager as the last objects to be collected Concerning JAX-WS not alot you can do take a look at http://www.mkyong.com/webservices/jax-ws/jax-ws-hello-world-example-document-style/ Refactoring statics in main is not available the only path I can suggest is to implement JavaProfiler and HTTP Profiler and determine 1)who or what is consuming the most amount of memory 2)can the transmitted information be 2a)compressed OR 2b)reduced in some matter Run the code thru a Profiler to determine who is consuming the most memory http://www.ej-technologies.com/products/jprofiler/overview.html http://www.quest.com/jprobe/ http://www.purescm.com/services-solutionmenu-49/enterprise-a-infrastructure-solutionmenu-114/ca-wily-introscope-solutionmenu-171 Wily has rules for thresholds for timeout which is a good tool for determining which service is taking excessive time Keep us apprised, Martin Gainty ______________________________________________ Verzicht und Vertraulichkeitanmerkung/Note de déni et de confidentialité Diese Nachricht ist vertraulich. Sollten Sie nicht der vorgesehene Empfaenger sein, so bitten wir hoeflich um eine Mitteilung. Jede unbefugte Weiterleitung oder Fertigung einer Kopie ist unzulaessig. Diese Nachricht dient lediglich dem Austausch von Informationen und entfaltet keine rechtliche Bindungswirkung. Aufgrund der leichten Manipulierbarkeit von E-Mails koennen wir keine Haftung fuer den Inhalt uebernehmen. Ce message est confidentiel et peut être privilégié. Si vous n'êtes pas le destinataire prévu, nous te demandons avec bonté que pour satisfaire informez l'expéditeur. N'importe quelle diffusion non autorisée ou la copie de ceci est interdite. Ce message sert à l'information seulement et n'aura pas n'importe quel effet légalement obligatoire. Étant donné que les email peuvent facilement être sujets à la manipulation, nous ne pouvons accepter aucune responsabilité pour le contenu fourni. Date: Sun, 14 Apr 2013 23:25:58 +0530 Subject: Re: Improve Axis2 JAX-WS performance From: danushkagso...@gmail.com To: java-dev@axis.apache.org Dear Martin, Thanks a lot for your mail, is it possible you to provide some references about your project ideas ? I'm still new to this area and still couldn't understand your suggestions. Thanks in advance Danushka Seneviratne On Sun, Apr 14, 2013 at 4:40 AM, Martin Gainty <mgai...@hotmail.com> wrote: 2 ideas refactor the statics..statics are notorious candidates for PermGen refactor n{repeated set of statements} into common functions are there any caveats to using GSoC ? 'must use guice'? can you implement DOM over SAX? keep us apprised, Martin ______________________________________________ Verzicht und Vertraulichkeitanmerkung/Note de déni et de confidentialité Diese Nachricht ist vertraulich. Sollten Sie nicht der vorgesehene Empfaenger sein, so bitten wir hoeflich um eine Mitteilung. Jede unbefugte Weiterleitung oder Fertigung einer Kopie ist unzulaessig. Diese Nachricht dient lediglich dem Austausch von Informationen und entfaltet keine rechtliche Bindungswirkung. Aufgrund der leichten Manipulierbarkeit von E-Mails koennen wir keine Haftung fuer den Inhalt uebernehmen. Ce message est confidentiel et peut être privilégié. Si vous n'êtes pas le destinataire prévu, nous te demandons avec bonté que pour satisfaire informez l'expéditeur. N'importe quelle diffusion non autorisée ou la copie de ceci est interdite. Ce message sert à l'information seulement et n'aura pas n'importe quel effet légalement obligatoire. Étant donné que les email peuvent facilement être sujets à la manipulation, nous ne pouvons accepter aucune responsabilité pour le contenu fourni. From: sagara.gunathu...@gmail.com Date: Sat, 13 Apr 2013 19:09:52 +0530 Subject: Re: Improve Axis2 JAX-WS performance To: java-dev@axis.apache.org On Sat, Apr 13, 2013 at 5:54 PM, Danushka Seneviratne <danushkagso...@gmail.com> wrote: Dear Sir/Madam, While searching a GSoC project idea, I got to know about Axis2 project having potential opportunity to work on its JAX-WS implementation. According to the facts I gathered, I have created a JIRA issue here https://issues.apache.org/jira/browse/AXIS2-5509. As foremost objective I'm planning to find bottlenecks of Axis2 JAX-WS framework and suggest possible solutions during the project period. I have some experience about JAX-WS programming model but it is based on Metro framework on JBoss server. During recent past I tried to develop few Axis2 based JAX-WS services and managed to run set of basic samples. I'm much obliged if someone can guide me to find out a direction. Sometimes back I did a profiling to identify performance issues of JAX-WS implementation you can read what I found from here [1]. Based on my findings I started to write improved version of JAX-WS but couldn't manage to make much progress with my time restrictions, basically I wrote a custom MethodMarshaller[2] and plugged into the existing architecture. I'm not sure where I put those codes but I will try to find them so that you can take a look. If you really want to make this idea into GSoC project then it's required to understand issues on current architecture first but this depends on of how well you understand the architecture of existing implementation. My recommendation is spend some time initially and come up with detail proposal and detailed plan mentioning these are the identified issues and these are the possible ways of solution etc. Any way you have to be quick on preparation of this project. Hope this helps you to start your first step if you need further helps don't hesitate to contact this list. [1] - http://markmail.org/thread/7pww6veepr77kzuq [2] - http://axis.apache.org/axis2/java/core/api/org/apache/axis2/jaxws/marshaller/MethodMarshaller.html Thanks ! Thanks in advance Danushka Seneviratne -- Sagara Gunathunga Blog - http://ssagara.blogspot.com Web - http://people.apache.org/~sagara/ LinkedIn - http://www.linkedin.com/in/ssagara