Created the 4.4.1 tag, and released the artifacts to nexus. Next
development branch is 4.4.x [1], while we will have parallel development
branch on master for 4.5.x.

@Maheshika, can you create a Jenkins job for the carbon4-kernel 4.4.x
branch?

[1] https://github.com/wso2/carbon4-kernel/tree/4.4.x

Thanks


On Mon, Aug 3, 2015 at 5:24 PM, Thusitha Thilina Dayaratne <
[email protected]> wrote:

> Hi Devs,
>
> Thanks for testing and verifying the Carbon kernel 4.4.1 RC2. We are
> closing this vote.
> This vote has passed with 4 +1s and 0 -1s. Therefore we will proceed with
> the Carbon kernel 4.4.1 release.
>
> 4 +1s (Charitha Goonathilleke, Ruwan Abekoon, Chanaka Fernando, Madhawa
> Gunesekara)
> 0  -1s
>
> Thanks
> Best Regards
> Carbon Team.
>
>
> On Mon, Aug 3, 2015 at 4:59 PM, Madhawa Gunasekara <[email protected]>
> wrote:
>
>> +1
>>
>> We are okay if carbon-kernel team releasing 4.4.2 before DSS GA release.
>>
>> Thanks,
>> Madhawa
>>
>> On Mon, Aug 3, 2015 at 4:50 PM, KasunG Gajasinghe <[email protected]>
>> wrote:
>>
>>> Hi,
>>>
>>> @Chanaka*, *We are going to fix this, and the fix will be in
>>> carbon-deployment. So, this won't be a blocker for the kernel release.
>>>
>>> For the DSS issue, we have had a discussion with @Rajith and *@*Madhawa.
>>> Currently, there is a workaround for this issue by having different
>>> namespaces for its services. Users could use default json message
>>> builders/formatters as well instead of gson one if needed. So, this issue
>>> should not stop us from passing this RC. We will incorporate this for the
>>> next Kernel release which we will do before the DSS GA release.
>>>
>>> From user's perspective, the tenant-mgt.xml has been placed in
>>> repository/conf/ folder starting from Carbon 4.2.0 days. If we are to
>>> change the location, we can only do this in a major version, not in a patch
>>> release.
>>>
>>> Thanks.
>>>
>>> On Aug 3, 2015, at 9:59 AM, Chanaka Fernando <[email protected]> wrote:
>>>
>>> Hi All,
>>>
>>> Module management feature is not working properly. When I try to engage
>>> a module (rahas or rampart), It throws the following exception[1]  in the
>>> back end and UI is showing an error. With these errors, modules are listed
>>> under globally engaged modules list and when I try to disengage the module,
>>> it is not possible.
>>>
>>> [1]
>>>
>>> [2015-08-03 09:54:50,197] ERROR - AbstractPersistenceManager Trying to
>>> engage or disengage unavailable module rahas
>>> [2015-08-03 09:54:50,198] ERROR - AbstractPersistenceManager Unable to
>>> engage rahas globally
>>> org.wso2.carbon.core.persistence.PersistenceException: Trying to engage
>>> or disengage unavailable module rahas
>>>     at
>>> org.wso2.carbon.core.persistence.AbstractPersistenceManager.handleException(AbstractPersistenceManager.java:614)
>>>     at
>>> org.wso2.carbon.core.persistence.ModulePersistenceManager.handleGlobalModule(ModulePersistenceManager.java:440)
>>>     at
>>> org.wso2.carbon.core.persistence.ModulePersistenceManager.globallyEngageModule(ModulePersistenceManager.java:139)
>>>     at
>>> org.wso2.carbon.module.mgt.service.ModuleAdminService.globallyEngageModule(ModuleAdminService.java:282)
>>>     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>>>     at
>>> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
>>>     at
>>> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>>>     at java.lang.reflect.Method.invoke(Method.java:606)
>>>     at
>>> org.apache.axis2.rpc.receivers.RPCUtil.invokeServiceClass(RPCUtil.java:212)
>>>     at
>>> org.apache.axis2.rpc.receivers.RPCMessageReceiver.invokeBusinessLogic(RPCMessageReceiver.java:117)
>>>     at
>>> org.apache.axis2.receivers.AbstractInOutMessageReceiver.invokeBusinessLogic(AbstractInOutMessageReceiver.java:40)
>>>     at
>>> org.apache.axis2.receivers.AbstractMessageReceiver.receive(AbstractMessageReceiver.java:110)
>>>     at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:180)
>>>     at
>>> org.apache.axis2.transport.local.LocalTransportReceiver.processMessage(LocalTransportReceiver.java:169)
>>>     at
>>> org.apache.axis2.transport.local.LocalTransportReceiver.processMessage(LocalTransportReceiver.java:82)
>>>     at
>>> org.wso2.carbon.core.transports.local.CarbonLocalTransportSender.finalizeSendWithToAddress(CarbonLocalTransportSender.java:45)
>>>     at
>>> org.apache.axis2.transport.local.LocalTransportSender.invoke(LocalTransportSender.java:77)
>>>     at org.apache.axis2.engine.AxisEngine.send(AxisEngine.java:442)
>>>     at
>>> org.apache.axis2.description.OutInAxisOperationClient.send(OutInAxisOperation.java:430)
>>>     at
>>> org.apache.axis2.description.OutInAxisOperationClient.executeImpl(OutInAxisOperation.java:225)
>>>     at
>>> org.apache.axis2.client.OperationClient.execute(OperationClient.java:149)
>>>     at
>>> org.wso2.carbon.module.mgt.stub.ModuleAdminServiceStub.globallyEngageModule(ModuleAdminServiceStub.java:2801)
>>>     at
>>> org.wso2.carbon.module.mgt.ui.client.ModuleManagementClient.globallyEngageModule(ModuleManagementClient.java:140)
>>>     at
>>> org.apache.jsp.modulemgt.global_005feng_005fajaxprocessor_jsp._jspService(global_005feng_005fajaxprocessor_jsp.java:123)
>>>     at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
>>>     at javax.servlet.http.HttpServlet.service(HttpServlet.java:727)
>>>     at
>>> org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:432)
>>>     at
>>> org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:395)
>>>     at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:339)
>>>     at javax.servlet.http.HttpServlet.service(HttpServlet.java:727)
>>>     at org.wso2.carbon.ui.JspServlet.service(JspServlet.java:155)
>>>     at
>>> org.wso2.carbon.ui.TilesJspServlet.service(TilesJspServlet.java:80)
>>>     at javax.servlet.http.HttpServlet.service(HttpServlet.java:727)
>>>     at
>>> org.eclipse.equinox.http.helper.ContextPathServletAdaptor.service(ContextPathServletAdaptor.java:37)
>>>     at
>>> org.eclipse.equinox.http.servlet.internal.ServletRegistration.service(ServletRegistration.java:61)
>>>     at
>>> org.eclipse.equinox.http.servlet.internal.ProxyServlet.processAlias(ProxyServlet.java:128)
>>>     at
>>> org.eclipse.equinox.http.servlet.internal.ProxyServlet.service(ProxyServlet.java:68)
>>>     at javax.servlet.http.HttpServlet.service(HttpServlet.java:727)
>>>     at
>>> org.wso2.carbon.tomcat.ext.servlet.DelegationServlet.service(DelegationServlet.java:68)
>>>     at
>>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:303)
>>>     at
>>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
>>>     at
>>> org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
>>>     at
>>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
>>>     at
>>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
>>>     at
>>> org.wso2.carbon.tomcat.ext.filter.CharacterSetFilter.doFilter(CharacterSetFilter.java:61)
>>>     at
>>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
>>>     at
>>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
>>>     at
>>> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:220)
>>>     at
>>> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:122)
>>>     at
>>> org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:504)
>>>     at
>>> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:170)
>>>     at
>>> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103)
>>>     at
>>> org.wso2.carbon.tomcat.ext.valves.CompositeValve.continueInvocation(CompositeValve.java:99)
>>>     at
>>> org.wso2.carbon.tomcat.ext.valves.TomcatValveContainer.invokeValves(TomcatValveContainer.java:49)
>>>     at
>>> org.wso2.carbon.tomcat.ext.valves.CompositeValve.invoke(CompositeValve.java:62)
>>>     at
>>> org.wso2.carbon.tomcat.ext.valves.CarbonStuckThreadDetectionValve.invoke(CarbonStuckThreadDetectionValve.java:159)
>>>     at
>>> org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:950)
>>>     at
>>> org.wso2.carbon.tomcat.ext.valves.CarbonContextCreatorValve.invoke(CarbonContextCreatorValve.java:57)
>>>     at
>>> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:116)
>>>     at
>>> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:421)
>>>     at
>>> org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1074)
>>>     at
>>> org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:611)
>>>     at
>>> org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1739)
>>>     at
>>> org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.run(NioEndpoint.java:1698)
>>>     at
>>> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
>>>     at
>>> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
>>>     at
>>> org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
>>>     at java.lang.Thread.run(Thread.java:745)
>>> [2015-08-03 09:54:50,200] ERROR - ModuleAdminService Error occured while
>>> globally engaging the module rahas-1.61-wso2v14
>>> org.wso2.carbon.core.persistence.PersistenceException: Unable to engage
>>> rahas globally
>>>     at
>>> org.wso2.carbon.core.persistence.AbstractPersistenceManager.handleExceptionWithRollback(AbstractPersistenceManager.java:604)
>>>     at
>>> org.wso2.carbon.core.persistence.ModulePersistenceManager.globallyEngageModule(ModulePersistenceManager.java:144)
>>>     at
>>> org.wso2.carbon.module.mgt.service.ModuleAdminService.globallyEngageModule(ModuleAdminService.java:282)
>>>     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>>>     at
>>> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
>>>     at
>>> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>>>     at java.lang.reflect.Method.invoke(Method.java:606)
>>>     at
>>> org.apache.axis2.rpc.receivers.RPCUtil.invokeServiceClass(RPCUtil.java:212)
>>>     at
>>> org.apache.axis2.rpc.receivers.RPCMessageReceiver.invokeBusinessLogic(RPCMessageReceiver.java:117)
>>>     at
>>> org.apache.axis2.receivers.AbstractInOutMessageReceiver.invokeBusinessLogic(AbstractInOutMessageReceiver.java:40)
>>>     at
>>> org.apache.axis2.receivers.AbstractMessageReceiver.receive(AbstractMessageReceiver.java:110)
>>>     at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:180)
>>>     at
>>> org.apache.axis2.transport.local.LocalTransportReceiver.processMessage(LocalTransportReceiver.java:169)
>>>     at
>>> org.apache.axis2.transport.local.LocalTransportReceiver.processMessage(LocalTransportReceiver.java:82)
>>>     at
>>> org.wso2.carbon.core.transports.local.CarbonLocalTransportSender.finalizeSendWithToAddress(CarbonLocalTransportSender.java:45)
>>>     at
>>> org.apache.axis2.transport.local.LocalTransportSender.invoke(LocalTransportSender.java:77)
>>>     at org.apache.axis2.engine.AxisEngine.send(AxisEngine.java:442)
>>>     at
>>> org.apache.axis2.description.OutInAxisOperationClient.send(OutInAxisOperation.java:430)
>>>     at
>>> org.apache.axis2.description.OutInAxisOperationClient.executeImpl(OutInAxisOperation.java:225)
>>>     at
>>> org.apache.axis2.client.OperationClient.execute(OperationClient.java:149)
>>>     at
>>> org.wso2.carbon.module.mgt.stub.ModuleAdminServiceStub.globallyEngageModule(ModuleAdminServiceStub.java:2801)
>>>     at
>>> org.wso2.carbon.module.mgt.ui.client.ModuleManagementClient.globallyEngageModule(ModuleManagementClient.java:140)
>>>     at
>>> org.apache.jsp.modulemgt.global_005feng_005fajaxprocessor_jsp._jspService(global_005feng_005fajaxprocessor_jsp.java:123)
>>>     at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
>>>     at javax.servlet.http.HttpServlet.service(HttpServlet.java:727)
>>>     at
>>> org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:432)
>>>     at
>>> org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:395)
>>>     at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:339)
>>>     at javax.servlet.http.HttpServlet.service(HttpServlet.java:727)
>>>     at org.wso2.carbon.ui.JspServlet.service(JspServlet.java:155)
>>>     at
>>> org.wso2.carbon.ui.TilesJspServlet.service(TilesJspServlet.java:80)
>>>     at javax.servlet.http.HttpServlet.service(HttpServlet.java:727)
>>>     at
>>> org.eclipse.equinox.http.helper.ContextPathServletAdaptor.service(ContextPathServletAdaptor.java:37)
>>>     at
>>> org.eclipse.equinox.http.servlet.internal.ServletRegistration.service(ServletRegistration.java:61)
>>>     at
>>> org.eclipse.equinox.http.servlet.internal.ProxyServlet.processAlias(ProxyServlet.java:128)
>>>     at
>>> org.eclipse.equinox.http.servlet.internal.ProxyServlet.service(ProxyServlet.java:68)
>>>     at javax.servlet.http.HttpServlet.service(HttpServlet.java:727)
>>>     at
>>> org.wso2.carbon.tomcat.ext.servlet.DelegationServlet.service(DelegationServlet.java:68)
>>>     at
>>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:303)
>>>     at
>>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
>>>     at
>>> org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
>>>     at
>>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
>>>     at
>>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
>>>     at
>>> org.wso2.carbon.tomcat.ext.filter.CharacterSetFilter.doFilter(CharacterSetFilter.java:61)
>>>     at
>>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
>>>     at
>>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
>>>     at
>>> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:220)
>>>     at
>>> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:122)
>>>     at
>>> org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:504)
>>>     at
>>> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:170)
>>>     at
>>> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103)
>>>     at
>>> org.wso2.carbon.tomcat.ext.valves.CompositeValve.continueInvocation(CompositeValve.java:99)
>>>     at
>>> org.wso2.carbon.tomcat.ext.valves.TomcatValveContainer.invokeValves(TomcatValveContainer.java:49)
>>>     at
>>> org.wso2.carbon.tomcat.ext.valves.CompositeValve.invoke(CompositeValve.java:62)
>>>     at
>>> org.wso2.carbon.tomcat.ext.valves.CarbonStuckThreadDetectionValve.invoke(CarbonStuckThreadDetectionValve.java:159)
>>>     at
>>> org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:950)
>>>     at
>>> org.wso2.carbon.tomcat.ext.valves.CarbonContextCreatorValve.invoke(CarbonContextCreatorValve.java:57)
>>>     at
>>> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:116)
>>>     at
>>> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:421)
>>>     at
>>> org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1074)
>>>     at
>>> org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:611)
>>>     at
>>> org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1739)
>>>     at
>>> org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.run(NioEndpoint.java:1698)
>>>     at
>>> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
>>>     at
>>> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
>>>     at
>>> org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
>>>     at java.lang.Thread.run(Thread.java:745)
>>> Caused by: org.wso2.carbon.core.persistence.PersistenceException: Trying
>>> to engage or disengage unavailable module rahas
>>>     at
>>> org.wso2.carbon.core.persistence.AbstractPersistenceManager.handleException(AbstractPersistenceManager.java:614)
>>>     at
>>> org.wso2.carbon.core.persistence.ModulePersistenceManager.handleGlobalModule(ModulePersistenceManager.java:440)
>>>     at
>>> org.wso2.carbon.core.persistence.ModulePersistenceManager.globallyEngageModule(ModulePersistenceManager.java:139)
>>>
>>>
>>> On Fri, Jul 31, 2015 at 10:57 PM, Prasad Tissera <[email protected]>
>>> wrote:
>>>
>>>> Hi All,
>>>>
>>>> Carbon 4.4.1 RC2, expects that the tenant-mgt.xml should be directly
>>>> inside conf directory. [1]. But default file location as per the p2.inf is
>>>> under multitenancy folder  [2]. To fix this issue, in the product
>>>> builds, will need copy the file to the correct location in the bin.xml
>>>> .
>>>>
>>>> [1]. 
>>>> *https://github.com/wso2/carbon4-kernel/blob/v4.4.1-RC2/core/org.wso2.carbon.user.core/src/main/java/org/wso2/carbon/user/core/config/TenantMgtXMLProcessor.java#L137
>>>> <https://github.com/wso2/carbon4-kernel/blob/v4.4.1-RC2/core/org.wso2.carbon.user.core/src/main/java/org/wso2/carbon/user/core/config/TenantMgtXMLProcessor.java#L137>*
>>>> [2]. https://github.com/wso2/carbon-multitenancy/blob/master/features/
>>>> tenant-mgt/org.wso2.carbon.tenant
>>>> .common.server.feature/src/main/resources/p2.inf#L4
>>>>
>>>> Regards,
>>>> Prasad.
>>>>
>>>> On Fri, Jul 31, 2015 at 9:58 AM, Madhawa Gunasekara <[email protected]>
>>>> wrote:
>>>>
>>>>> Hi Kasun,
>>>>>
>>>>> This issue is happen in gson formatter only. workaround is to use old
>>>>> json formatter which don't support streaming. also there will be a DSS
>>>>> release soon
>>>>>
>>>>> Thanks,
>>>>> Madhawa
>>>>> --
>>>>> *Madhawa Gunasekara*
>>>>> Software Engineer
>>>>> WSO2 Inc.; http://wso2.com
>>>>> lean.enterprise.middleware
>>>>>
>>>>> mobile: +94 719411002 <+94+719411002>
>>>>> blog: *http://madhawa-gunasekara.blogspot.com
>>>>> <http://madhawa-gunasekara.blogspot.com>*
>>>>> linkedin: *http://lk.linkedin.com/in/mgunasekara
>>>>> <http://lk.linkedin.com/in/mgunasekara>*
>>>>> _______________________________________________
>>>>> Dev mailing list
>>>>> [email protected]
>>>>> http://wso2.org/cgi-bin/mailman/listinfo/dev
>>>>>
>>>>
>>>>
>>>>
>>>> --
>>>> Prasad Tissera
>>>> Software Engineer.
>>>> Mobile : +94777223444
>>>>
>>>> _______________________________________________
>>>> Dev mailing list
>>>> [email protected]
>>>> http://wso2.org/cgi-bin/mailman/listinfo/dev
>>>>
>>>>
>>>
>>>
>>> --
>>> --
>>> Chanaka Fernando
>>> Senior Technical Lead
>>> WSO2, Inc.; http://wso2.com
>>> lean.enterprise.middleware
>>>
>>> mobile: +94 773337238
>>> Blog : http://soatutorials.blogspot.com
>>> LinkedIn:http://www.linkedin.com/pub/chanaka-fernando/19/a20/5b0
>>> Twitter:https://twitter.com/chanakaudaya
>>> Wordpress:http://chanakaudaya.wordpress.com
>>>
>>>
>>>
>>>
>>> _______________________________________________
>>> Dev mailing list
>>> [email protected]
>>> http://wso2.org/cgi-bin/mailman/listinfo/dev
>>>
>>>
>>
>>
>> --
>> *Madhawa Gunasekara*
>> Software Engineer
>> WSO2 Inc.; http://wso2.com
>> lean.enterprise.middleware
>>
>> mobile: +94 719411002 <+94+719411002>
>> blog: *http://madhawa-gunasekara.blogspot.com
>> <http://madhawa-gunasekara.blogspot.com>*
>> linkedin: *http://lk.linkedin.com/in/mgunasekara
>> <http://lk.linkedin.com/in/mgunasekara>*
>>
>> _______________________________________________
>> Dev mailing list
>> [email protected]
>> http://wso2.org/cgi-bin/mailman/listinfo/dev
>>
>>
>
>
> --
> Thusitha Dayaratne
> Software Engineer
> WSO2 Inc. - lean . enterprise . middleware |  wso2.com
>
> Mobile  +94712756809
> Blog      alokayasoya.blogspot.com
> About    http://about.me/thusithathilina
>
>
> _______________________________________________
> Dev mailing list
> [email protected]
> http://wso2.org/cgi-bin/mailman/listinfo/dev
>
>


-- 

*Kasun Gajasinghe*Senior Software Engineer, WSO2 Inc.
email: kasung AT spamfree wso2.com
linked-in: http://lk.linkedin.com/in/gajasinghe
blog: http://kasunbg.org
_______________________________________________
Dev mailing list
[email protected]
http://wso2.org/cgi-bin/mailman/listinfo/dev

Reply via email to