+1 for option 1. Here we are talking about adding GetRequestProcessors for two different transports(http, nhttp). IMV GetRequestProcessors for nhttp transport should not be specified in carbon.xml, since it is an ESB specific configuration.
IMV, this sort of transport specific configurations should be specified in the transport configuration itself. Right now GetRequestProcessors for the servlet transport are specified in the carbon.xml and servlet transport configuration is in the mgt-console-trasport.xml. Ideally, both these configuration should be in a single place. Thanks Sameera On Mon, Oct 18, 2010 at 3:39 PM, Heshan Suriyaarachchi <[email protected]>wrote: > Hi Devs, > > This is a progress update of $subject. > > Currently There are 2 possible options of adding custom Get processors. > > 1) Add it axis2.xml of the WSO2 ESB under the NHttpTransportListener. > Pros: > i) I have done most of the work on this area and I only have to develop the > featue and add it to the build. > Cons: > i) As Azeez mentioned in his previous mail, the nhttp Get processor > property will reside in axis2.xml. In case of Carbon, all the http get > processors are residing inside carbon.xml > > 2) Add it to Carbon.xml > Pros: > i) All get processors are listed under carbon.xml. > Cons: > i) Need to refactor HttpGetRequestProcessor interface of > org.wso2.carbon.core bundle. This will be a significant change and a lot of > components will get affected by this. > > Sameera and I had an offline discussion on the $subject and he is having > the idea of going ahead with option 1. > > Your ideas and feedback are welcome. > > > On Fri, Oct 15, 2010 at 12:33 PM, Afkham Azeez <[email protected]> wrote: > >> In Carbon, they handle special HTTP requests such as ?wsdl, ?stub, ?tryit >> etc. These are pluggable using the carbon.xml file. These, however, are >> specific the to servlet transport. Heshan has implemented the same plugin >> mechanism for the nHttp transport, I think. But, in the Carbon based ESB, >> the configuration can still reside in carbon.xml file. >> >> Azeez >> >> >> >> >> On Fri, Oct 15, 2010 at 12:26 PM, Sanjiva Weerawarana >> <[email protected]>wrote: >> >>> What does this custom GET processor do? >>> >>> Sanjiva. >>> >>> >>> On Fri, Oct 15, 2010 at 12:23 PM, Afkham Azeez <[email protected]> wrote: >>> >>>> What I meant was HTTP Get request processors have been used in Carbon >>>> since the beginning (actually it has been there since the pre-Carbon WSAS >>>> days), and it has been in the carbon.xml file all these days. You don't >>>> have >>>> to change it. Now you have introduced a new way of configuring these. >>>> >>>> Azeez >>>> >>>> >>>> >>>> >>>> On Fri, Oct 15, 2010 at 10:29 AM, Heshan Suriyaarachchi < >>>> [email protected]> wrote: >>>> >>>>> Hi Azeez, >>>>> >>>>> I don't think that we can incorporate this change to carbon.xml. We are >>>>> plugging in the HttpGetProcessor to the nhttp transport. >>>>> >>>>> On Fri, Oct 15, 2010 at 9:58 AM, Afkham Azeez <[email protected]> wrote: >>>>> >>>>>> Hmm, >>>>>> So now we have two different ways of configuring HttpGetRequest >>>>>> processors!!! #$^&*#!! >>>>>> >>>>>> Why can't you use the ones defined in the carbon.xml file to configure >>>>>> your processors so that there is a unified way of doing things? >>>>>> >>>>>> Azeez >>>>>> >>>>>> >>>>>> >>>>>> On Fri, Oct 15, 2010 at 9:53 AM, Heshan Suriyaarachchi < >>>>>> [email protected]> wrote: >>>>>> >>>>>>> Hi, >>>>>>> >>>>>>> I have developed a new Stratos component named >>>>>>> org.wso2.stratos.transport.nhttp. It's containing the custom http get >>>>>>> processor developed for Stratos ESB. I have added it to the axis2.xml >>>>>>> like >>>>>>> following. >>>>>>> >>>>>>> <transportReceiver name="http" >>>>>>> class="org.apache.synapse.transport.nhttp.HttpCoreNIOListener"> >>>>>>> <parameter name="port" locked="false">8280</parameter> >>>>>>> <parameter name="non-blocking" >>>>>>> locked="false">true</parameter> >>>>>>> <parameter name="disableRestServiceDispatching" >>>>>>> locked="false">true</parameter> >>>>>>> <!--parameter name="bind-address" locked="false">hostname or >>>>>>> IP address</parameter--> >>>>>>> <!--parameter name="WSDLEPRPrefix" >>>>>>> locked="false">https://apachehost:port/somepath</parameter--> >>>>>>> <!--parameter name="httpGetProcessor" >>>>>>> locked="false">org.apache.synapse.transport.nhttp.HttpGetProcessor</parameter--> >>>>>>> * <parameter name="httpGetProcessor" >>>>>>> locked="false">org.wso2.stratos.transport.nhttp.api.StratosHttpGetProcessor</parameter> >>>>>>> * >>>>>>> </transportReceiver> >>>>>>> >>>>>>> When I start the ESB, I am getting ClassNotFoundException. I think >>>>>>> this bundle should be loaded before axis2. Any pointers in getting this >>>>>>> done >>>>>>> (developing the declarative service component) would be useful. >>>>>>> >>>>>>> [2010-10-15 09:45:43,685] INFO - HttpCoreNIOSSLListener Loading >>>>>>> Identity Keystore from : resources/security/wso2carbon.jks >>>>>>> [2010-10-15 09:45:43,687] INFO - HttpCoreNIOSSLListener Loading >>>>>>> Trust Keystore from : resources/security/client-truststore.jks >>>>>>> [2010-10-15 09:45:43,696] ERROR - HttpCoreNIOListener Error creating >>>>>>> WSDL processor >>>>>>> java.lang.ClassNotFoundException: >>>>>>> org.wso2.stratos.transport.nhttp.api.StratosHttpGetProcessor >>>>>>> at >>>>>>> org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(BundleLoader.java:489) >>>>>>> at >>>>>>> org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:405) >>>>>>> at >>>>>>> org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:393) >>>>>>> at >>>>>>> org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.loadClass(DefaultClassLoader.java:105) >>>>>>> at java.lang.ClassLoader.loadClass(ClassLoader.java:248) >>>>>>> at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:316) >>>>>>> at java.lang.Class.forName0(Native Method) >>>>>>> at java.lang.Class.forName(Class.java:169) >>>>>>> at >>>>>>> org.apache.synapse.transport.nhttp.HttpCoreNIOListener.setHttpGetProcessor(HttpCoreNIOListener.java:234) >>>>>>> at >>>>>>> org.apache.synapse.transport.nhttp.HttpCoreNIOListener.init(HttpCoreNIOListener.java:225) >>>>>>> at >>>>>>> org.apache.axis2.engine.ListenerManager.init(ListenerManager.java:83) >>>>>>> at >>>>>>> org.wso2.carbon.core.init.CarbonServerManager.initializeCarbon(CarbonServerManager.java:395) >>>>>>> at >>>>>>> org.wso2.carbon.core.init.CarbonServerManager.removePendingItem(CarbonServerManager.java:282) >>>>>>> at >>>>>>> org.wso2.carbon.core.init.PreAxis2ConfigItemListener.bundleChanged(PreAxis2ConfigItemListener.java:117) >>>>>>> at >>>>>>> org.eclipse.osgi.framework.internal.core.BundleContextImpl.dispatchEvent(BundleContextImpl.java:916) >>>>>>> at >>>>>>> org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:220) >>>>>>> at >>>>>>> org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.run(EventManager.java:330) >>>>>>> [2010-10-15 09:45:43,698] ERROR - ListenerManager Couldn't initialize >>>>>>> the httptransport listener >>>>>>> org.apache.axis2.AxisFault: Error creating WSDL processor >>>>>>> at >>>>>>> org.apache.synapse.transport.nhttp.HttpCoreNIOListener.setHttpGetProcessor(HttpCoreNIOListener.java:237) >>>>>>> at >>>>>>> org.apache.synapse.transport.nhttp.HttpCoreNIOListener.init(HttpCoreNIOListener.java:225) >>>>>>> at >>>>>>> org.apache.axis2.engine.ListenerManager.init(ListenerManager.java:83) >>>>>>> at >>>>>>> org.wso2.carbon.core.init.CarbonServerManager.initializeCarbon(CarbonServerManager.java:395) >>>>>>> at >>>>>>> org.wso2.carbon.core.init.CarbonServerManager.removePendingItem(CarbonServerManager.java:282) >>>>>>> at >>>>>>> org.wso2.carbon.core.init.PreAxis2ConfigItemListener.bundleChanged(PreAxis2ConfigItemListener.java:117) >>>>>>> at >>>>>>> org.eclipse.osgi.framework.internal.core.BundleContextImpl.dispatchEvent(BundleContextImpl.java:916) >>>>>>> at >>>>>>> org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:220) >>>>>>> at >>>>>>> org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.run(EventManager.java:330) >>>>>>> Caused by: java.lang.ClassNotFoundException: >>>>>>> org.wso2.stratos.transport.nhttp.api.StratosHttpGetProcessor >>>>>>> at >>>>>>> org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(BundleLoader.java:489) >>>>>>> at >>>>>>> org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:405) >>>>>>> at >>>>>>> org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:393) >>>>>>> at >>>>>>> org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.loadClass(DefaultClassLoader.java:105) >>>>>>> at java.lang.ClassLoader.loadClass(ClassLoader.java:248) >>>>>>> at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:316) >>>>>>> at java.lang.Class.forName0(Native Method) >>>>>>> at java.lang.Class.forName(Class.java:169) >>>>>>> at >>>>>>> org.apache.synapse.transport.nhttp.HttpCoreNIOListener.setHttpGetProcessor(HttpCoreNIOListener.java:234) >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> On Tue, Oct 12, 2010 at 12:32 PM, Afkham Azeez <[email protected]>wrote: >>>>>>> >>>>>>>> Add a new Stratos component if that is where this code belongs to. >>>>>>>> >>>>>>>> Azeez >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> On Tue, Oct 12, 2010 at 11:04 AM, Heshan Suriyaarachchi < >>>>>>>> [email protected]> wrote: >>>>>>>> >>>>>>>>> Hi, >>>>>>>>> >>>>>>>>> Currently Synapse doesn't support a mechanism of adding custom Http >>>>>>>>> Get processors. I have submitted a patch to Synapse as an improvment >>>>>>>>> to the >>>>>>>>> mentioned issue. >>>>>>>>> >>>>>>>>> We need to write a custom Http Get processor for Carbon, inorder to >>>>>>>>> use in Stratos ESB. Where should the code of this custom Http Get >>>>>>>>> processor >>>>>>>>> go to? Should it be a new component or should it be added to an >>>>>>>>> existing >>>>>>>>> component. We initially had the idea of adding it to the transport-mgt >>>>>>>>> component but it's not having any dependency to Synapse. Therefore >>>>>>>>> where >>>>>>>>> should we add it? WDYT? >>>>>>>>> >>>>>>>>> [1] - https://issues.apache.org/jira/browse/SYNAPSE-699 >>>>>>>>> >>>>>>>>> -- >>>>>>>>> Regards, >>>>>>>>> Heshan Suriyaarachchi >>>>>>>>> Software Engineer >>>>>>>>> WSO2 Inc.; http://wso2.com/ >>>>>>>>> >>>>>>>>> Blog: http://heshans.blogspot.com/ >>>>>>>>> >>>>>>>>> _______________________________________________ >>>>>>>>> Carbon-dev mailing list >>>>>>>>> [email protected] >>>>>>>>> https://mail.wso2.org/cgi-bin/mailman/listinfo/carbon-dev >>>>>>>>> >>>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> -- >>>>>>>> *Afkham Azeez* >>>>>>>> Senior Software Architect & Senior Manager; WSO2, Inc.; >>>>>>>> http://wso2.com, >>>>>>>> * >>>>>>>> * >>>>>>>> *Member; Apache Software Foundation; >>>>>>>> **http://www.apache.org/*<http://www.apache.org/> >>>>>>>> * >>>>>>>> email: **[email protected]* <[email protected]>* cell: +94 77 3320919 >>>>>>>> blog: **http://blog.afkham.org* <http://blog.afkham.org>* >>>>>>>> twitter: >>>>>>>> **http://twitter.com/afkham_azeez*<http://twitter.com/afkham_azeez> >>>>>>>> * >>>>>>>> linked-in: **http://lk.linkedin.com/in/afkhamazeez* >>>>>>>> * >>>>>>>> * >>>>>>>> *Lean . Enterprise . Middleware* >>>>>>>> >>>>>>>> >>>>>>>> _______________________________________________ >>>>>>>> Carbon-dev mailing list >>>>>>>> [email protected] >>>>>>>> https://mail.wso2.org/cgi-bin/mailman/listinfo/carbon-dev >>>>>>>> >>>>>>>> >>>>>>> >>>>>>> >>>>>>> -- >>>>>>> Regards, >>>>>>> Heshan Suriyaarachchi >>>>>>> Software Engineer >>>>>>> WSO2 Inc.; http://wso2.com/ >>>>>>> >>>>>>> Blog: http://heshans.blogspot.com/ >>>>>>> >>>>>>> _______________________________________________ >>>>>>> Carbon-dev mailing list >>>>>>> [email protected] >>>>>>> https://wso2.org/cgi-bin/mailman/listinfo/carbon-dev >>>>>>> >>>>>>> >>>>>> >>>>>> >>>>>> -- >>>>>> *Afkham Azeez* >>>>>> Senior Software Architect & Senior Manager; WSO2, Inc.; >>>>>> http://wso2.com, >>>>>> * >>>>>> * >>>>>> *Member; Apache Software Foundation; >>>>>> **http://www.apache.org/*<http://www.apache.org/> >>>>>> * >>>>>> email: **[email protected]* <[email protected]>* cell: +94 77 3320919 >>>>>> blog: **http://blog.afkham.org* <http://blog.afkham.org>* >>>>>> twitter: >>>>>> **http://twitter.com/afkham_azeez*<http://twitter.com/afkham_azeez> >>>>>> * >>>>>> linked-in: **http://lk.linkedin.com/in/afkhamazeez* >>>>>> * >>>>>> * >>>>>> *Lean . Enterprise . Middleware* >>>>>> >>>>>> >>>>>> _______________________________________________ >>>>>> Carbon-dev mailing list >>>>>> [email protected] >>>>>> https://wso2.org/cgi-bin/mailman/listinfo/carbon-dev >>>>>> >>>>>> >>>>> >>>>> >>>>> -- >>>>> Regards, >>>>> Heshan Suriyaarachchi >>>>> Software Engineer >>>>> WSO2 Inc.; http://wso2.com/ >>>>> >>>>> Blog: http://heshans.blogspot.com/ >>>>> >>>>> _______________________________________________ >>>>> Carbon-dev mailing list >>>>> [email protected] >>>>> https://wso2.org/cgi-bin/mailman/listinfo/carbon-dev >>>>> >>>>> >>>> >>>> >>>> -- >>>> *Afkham Azeez* >>>> Senior Software Architect & Senior Manager; WSO2, Inc.; http://wso2.com >>>> , >>>> * >>>> * >>>> *Member; Apache Software Foundation; >>>> **http://www.apache.org/*<http://www.apache.org/> >>>> * >>>> email: **[email protected]* <[email protected]>* cell: +94 77 3320919 >>>> blog: **http://blog.afkham.org* <http://blog.afkham.org>* >>>> twitter: >>>> **http://twitter.com/afkham_azeez*<http://twitter.com/afkham_azeez> >>>> * >>>> linked-in: **http://lk.linkedin.com/in/afkhamazeez* >>>> * >>>> * >>>> *Lean . Enterprise . Middleware* >>>> >>>> >>>> _______________________________________________ >>>> Carbon-dev mailing list >>>> [email protected] >>>> https://wso2.org/cgi-bin/mailman/listinfo/carbon-dev >>>> >>>> >>> >>> >>> -- >>> Sanjiva Weerawarana, Ph.D. >>> Founder, Chairman & CEO; WSO2, Inc.; http://wso2.com/ >>> email: [email protected]; phone: +1 408 754 7388 x51726; cell: +94 77 787 >>> 6880 | +1 650 265 8311 >>> blog: http://sanjiva.weerawarana.org/ >>> >>> Lean . Enterprise . Middleware >>> >>> _______________________________________________ >>> Carbon-dev mailing list >>> [email protected] >>> https://wso2.org/cgi-bin/mailman/listinfo/carbon-dev >>> >>> >> >> >> -- >> *Afkham Azeez* >> Senior Software Architect & Senior Manager; WSO2, Inc.; http://wso2.com, >> * >> * >> *Member; Apache Software Foundation; >> **http://www.apache.org/*<http://www.apache.org/> >> * >> email: **[email protected]* <[email protected]>* cell: +94 77 3320919 >> blog: **http://blog.afkham.org* <http://blog.afkham.org>* >> twitter: **http://twitter.com/afkham_azeez*<http://twitter.com/afkham_azeez> >> * >> linked-in: **http://lk.linkedin.com/in/afkhamazeez* >> * >> * >> *Lean . Enterprise . Middleware* >> >> >> _______________________________________________ >> Carbon-dev mailing list >> [email protected] >> https://wso2.org/cgi-bin/mailman/listinfo/carbon-dev >> >> > > > -- > Regards, > Heshan Suriyaarachchi > Software Engineer > WSO2 Inc.; http://wso2.com/ > > Blog: http://heshans.blogspot.com/ > > _______________________________________________ > Carbon-dev mailing list > [email protected] > https://wso2.org/cgi-bin/mailman/listinfo/carbon-dev > > -- Sameera Jayasoma Technical Lead and Product Manager, WSO2 Carbon WSO2, Inc. (http://wso2.com) email: [email protected] blog: http://tech.jayasoma.org Lean . Enterprise . Middleware
_______________________________________________ Carbon-dev mailing list [email protected] https://wso2.org/cgi-bin/mailman/listinfo/carbon-dev
