Hi Rajkumar,

You have mentioned that,

because the very first request to API Store will land on jaggery_acs.jag
> and since SSO properties are not there in SSO relaying party object, you
> will get NPE like below.



What do you mean by very first request? Is it before login to IDP? I guess,
Before login to IDP, users shouldn't be allowed to access a protected
resource if IDP initiated SSO is configured. Can you clarify?


On Thu, Jan 12, 2017 at 4:38 PM, Rajkumar Rajaratnam <rajkum...@wso2.com>
wrote:

> Hi Abimaran,
>
> I'm sorry I couldn't understand the context of what you are saying. I was
> reporting that IDP initiated SSO is not working (login to IDP first and let
> IDP to redirect user to SP).
>
> Thanks.
>
> On Thu, Jan 12, 2017 at 1:59 AM Abimaran Kugathasan <abima...@wso2.com>
> wrote:
>
>> Hi Rajkumar,
>>
>> On Wed, Jan 11, 2017 at 11:08 PM, Rajkumar Rajaratnam <rajkum...@wso2.com
>> > wrote:
>>
>> IDP initiated SSO for Store is also not working. Should be the same case
>> with Publisher. Reason for this issue is as below.
>>
>> For SP initiated SSO, we read SSO properties from site.json and set them
>> to SSO relaying party object in sso/filter [1].
>>
>> For IDP initiated SSO, the same thing should be done in jaggery_acs.jag.
>> Why?, because the very first request to API Store will land on
>> jaggery_acs.jag and since SSO properties are not there in SSO relaying
>> party object, you will get NPE like below.
>>  ​
>>
>>
>>
>> Why should someone allowed  to hit SP, if IDP initiated SSO configured? I
>> do understand the annonymous access API Manager should allowed for API
>> Srore, but, when someone requested to login, don't we redirect to IDP login?
>>
>>
>>
>>
>> [2017-01-11 12:34:07,151] ERROR - Util Error when getting key store of
>> tenant carbon.super
>> java.lang.NullPointerException
>> at java.io.File.<init>(File.java:277)
>> at org.wso2.carbon.hostobjects.sso.internal.util.Util.
>> validateSignature(Util.java:281)
>> at org.wso2.carbon.hostobjects.sso.SAMLSSORelyingPartyObject.
>> jsFunction_validateSignature(SAMLSSORelyingPartyObject.java:168)
>> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>> at sun.reflect.NativeMethodAccessorImpl.invoke(
>> NativeMethodAccessorImpl.java:62)
>> at sun.reflect.DelegatingMethodAccessorImpl.invoke(
>> DelegatingMethodAccessorImpl.java:43)
>> at java.lang.reflect.Method.invoke(Method.java:498)
>> at org.mozilla.javascript.MemberBox.invoke(MemberBox.java:126)
>> at org.mozilla.javascript.FunctionObject.call(FunctionObject.java:386)
>> at org.mozilla.javascript.optimizer.OptRuntime.call1(OptRuntime.java:32)
>> at org.jaggeryjs.rhino.store.jagg.c0._c_anonymous_1(/store/
>> jagg/jaggery_acs.jag:70)
>> at org.jaggeryjs.rhino.store.jagg.c0.call(/store/jagg/jaggery_acs.jag)
>> at org.mozilla.javascript.optimizer.OptRuntime.call0(OptRuntime.java:23)
>> at org.jaggeryjs.rhino.store.jagg.c0._c_script_0(/store/
>> jagg/jaggery_acs.jag:5)
>> at org.jaggeryjs.rhino.store.jagg.c0.call(/store/jagg/jaggery_acs.jag)
>> at org.mozilla.javascript.ContextFactory.doTopCall(
>> ContextFactory.java:394)
>> at org.mozilla.javascript.ScriptRuntime.doTopCall(
>> ScriptRuntime.java:3091)
>> at org.jaggeryjs.rhino.store.jagg.c0.call(/store/jagg/jaggery_acs.jag)
>> at org.jaggeryjs.rhino.store.jagg.c0.exec(/store/jagg/jaggery_acs.jag)
>> at org.jaggeryjs.scriptengine.engine.RhinoEngine.execScript(
>> RhinoEngine.java:567)
>> at org.jaggeryjs.scriptengine.engine.RhinoEngine.exec(
>> RhinoEngine.java:273)
>> at org.jaggeryjs.jaggery.core.manager.WebAppManager.exec(
>> WebAppManager.java:588)
>> at org.jaggeryjs.jaggery.core.manager.WebAppManager.execute(
>> WebAppManager.java:508)
>> at org.jaggeryjs.jaggery.core.JaggeryServlet.doPost(
>> JaggeryServlet.java:29)
>> at javax.servlet.http.HttpServlet.service(HttpServlet.java:650)
>> at javax.servlet.http.HttpServlet.service(HttpServlet.java:731)
>> at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(
>> ApplicationFilterChain.java:303)
>> at org.apache.catalina.core.ApplicationFilterChain.doFilter(
>> ApplicationFilterChain.java:208)
>> at org.apache.catalina.core.ApplicationDispatcher.invoke(
>> ApplicationDispatcher.java:747)
>> at org.apache.catalina.core.ApplicationDispatcher.processRequest(
>> ApplicationDispatcher.java:485)
>> at org.apache.catalina.core.ApplicationDispatcher.doForward(
>> ApplicationDispatcher.java:377)
>> at org.apache.catalina.core.ApplicationDispatcher.forward(
>> ApplicationDispatcher.java:337)
>> at org.jaggeryjs.jaggery.core.JaggeryFilter.doFilter(
>> JaggeryFilter.java:21)
>> at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(
>> ApplicationFilterChain.java:241)
>> at org.apache.catalina.core.ApplicationFilterChain.doFilter(
>> ApplicationFilterChain.java:208)
>> at org.wso2.carbon.ui.filters.cache.ContentTypeBasedCachePreventio
>> nFilter.doFilter(ContentTypeBasedCachePreventionFilter.java:53)
>> at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(
>> ApplicationFilterChain.java:241)
>> at org.apache.catalina.core.ApplicationFilterChain.doFilter(
>> ApplicationFilterChain.java:208)
>> at org.apache.catalina.filters.HttpHeaderSecurityFilter.doFilter(
>> HttpHeaderSecurityFilter.java:120)
>> 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:218)
>> at org.apache.catalina.core.StandardContextValve.invoke(
>> StandardContextValve.java:122)
>> at org.apache.catalina.authenticator.AuthenticatorBase.invoke(
>> AuthenticatorBase.java:505)
>> at org.apache.catalina.core.StandardHostValve.invoke(
>> StandardHostValve.java:169)
>> 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.CarbonTomcatValve$1.
>> invoke(CarbonTomcatValve.java:47)
>> at org.wso2.carbon.webapp.mgt.TenantLazyLoaderValve.invoke(
>> TenantLazyLoaderValve.java:57)
>> at org.wso2.carbon.event.receiver.core.internal.tenantmgt.
>> TenantLazyLoaderValve.invoke(TenantLazyLoaderValve.java:48)
>> at org.wso2.carbon.tomcat.ext.valves.TomcatValveContainer.invokeValves(
>> TomcatValveContainer.java:47)
>> at org.wso2.carbon.tomcat.ext.valves.CompositeValve.invoke(
>> CompositeValve.java:62)
>> at org.wso2.carbon.tomcat.ext.valves.CarbonStuckThreadDetectionValv
>> e.invoke(CarbonStuckThreadDetectionValve.java:159)
>> at org.apache.catalina.valves.AccessLogValve.invoke(
>> AccessLogValve.java:958)
>> 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:452)
>> at org.apache.coyote.http11.AbstractHttp11Processor.process(
>> AbstractHttp11Processor.java:1087)
>> at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.
>> process(AbstractProtocol.java:637)
>> at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.
>> doRun(NioEndpoint.java:1756)
>> at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.
>> run(NioEndpoint.java:1715)
>> at java.util.concurrent.ThreadPoolExecutor.runWorker(
>> ThreadPoolExecutor.java:1142)
>> at java.util.concurrent.ThreadPoolExecutor$Worker.run(
>> ThreadPoolExecutor.java:617)
>> at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(
>> TaskThread.java:61)
>> at java.lang.Thread.run(Thread.java:745)
>> [2017-01-11 12:34:07,159] ERROR - WebAppManager 
>> org.mozilla.javascript.WrappedException:
>> Wrapped org.wso2.carbon.hostobjects.sso.SignatureVerificationException
>> (/store/jagg/jaggery_acs.jag#70)
>> org.jaggeryjs.scriptengine.exceptions.ScriptException:
>> org.mozilla.javascript.WrappedException: Wrapped
>> org.wso2.carbon.hostobjects.sso.SignatureVerificationException
>> (/store/jagg/jaggery_acs.jag#70)
>> at org.jaggeryjs.scriptengine.engine.RhinoEngine.execScript(
>> RhinoEngine.java:571)
>> at org.jaggeryjs.scriptengine.engine.RhinoEngine.exec(
>> RhinoEngine.java:273)
>> at org.jaggeryjs.jaggery.core.manager.WebAppManager.exec(
>> WebAppManager.java:588)
>> at org.jaggeryjs.jaggery.core.manager.WebAppManager.execute(
>> WebAppManager.java:508)
>> at org.jaggeryjs.jaggery.core.JaggeryServlet.doPost(
>> JaggeryServlet.java:29)
>> at javax.servlet.http.HttpServlet.service(HttpServlet.java:650)
>> at javax.servlet.http.HttpServlet.service(HttpServlet.java:731)
>> at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(
>> ApplicationFilterChain.java:303)
>> at org.apache.catalina.core.ApplicationFilterChain.doFilter(
>> ApplicationFilterChain.java:208)
>> at org.apache.catalina.core.ApplicationDispatcher.invoke(
>> ApplicationDispatcher.java:747)
>> at org.apache.catalina.core.ApplicationDispatcher.processRequest(
>> ApplicationDispatcher.java:485)
>> at org.apache.catalina.core.ApplicationDispatcher.doForward(
>> ApplicationDispatcher.java:377)
>> at org.apache.catalina.core.ApplicationDispatcher.forward(
>> ApplicationDispatcher.java:337)
>> at org.jaggeryjs.jaggery.core.JaggeryFilter.doFilter(
>> JaggeryFilter.java:21)
>> at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(
>> ApplicationFilterChain.java:241)
>> at org.apache.catalina.core.ApplicationFilterChain.doFilter(
>> ApplicationFilterChain.java:208)
>> at org.wso2.carbon.ui.filters.cache.ContentTypeBasedCachePreventio
>> nFilter.doFilter(ContentTypeBasedCachePreventionFilter.java:53)
>> at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(
>> ApplicationFilterChain.java:241)
>> at org.apache.catalina.core.ApplicationFilterChain.doFilter(
>> ApplicationFilterChain.java:208)
>> at org.apache.catalina.filters.HttpHeaderSecurityFilter.doFilter(
>> HttpHeaderSecurityFilter.java:120)
>> 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:218)
>> at org.apache.catalina.core.StandardContextValve.invoke(
>> StandardContextValve.java:122)
>> at org.apache.catalina.authenticator.AuthenticatorBase.invoke(
>> AuthenticatorBase.java:505)
>> at org.apache.catalina.core.StandardHostValve.invoke(
>> StandardHostValve.java:169)
>> 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.CarbonTomcatValve$1.
>> invoke(CarbonTomcatValve.java:47)
>> at org.wso2.carbon.webapp.mgt.TenantLazyLoaderValve.invoke(
>> TenantLazyLoaderValve.java:57)
>> at org.wso2.carbon.event.receiver.core.internal.tenantmgt.
>> TenantLazyLoaderValve.invoke(TenantLazyLoaderValve.java:48)
>> at org.wso2.carbon.tomcat.ext.valves.TomcatValveContainer.invokeValves(
>> TomcatValveContainer.java:47)
>> at org.wso2.carbon.tomcat.ext.valves.CompositeValve.invoke(
>> CompositeValve.java:62)
>> at org.wso2.carbon.tomcat.ext.valves.CarbonStuckThreadDetectionValv
>> e.invoke(CarbonStuckThreadDetectionValve.java:159)
>> at org.apache.catalina.valves.AccessLogValve.invoke(
>> AccessLogValve.java:958)
>> 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:452)
>> at org.apache.coyote.http11.AbstractHttp11Processor.process(
>> AbstractHttp11Processor.java:1087)
>> at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.
>> process(AbstractProtocol.java:637)
>> at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.
>> doRun(NioEndpoint.java:1756)
>> at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.
>> run(NioEndpoint.java:1715)
>> at java.util.concurrent.ThreadPoolExecutor.runWorker(
>> ThreadPoolExecutor.java:1142)
>> at java.util.concurrent.ThreadPoolExecutor$Worker.run(
>> ThreadPoolExecutor.java:617)
>> at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(
>> TaskThread.java:61)
>> at java.lang.Thread.run(Thread.java:745)
>> Caused by: org.mozilla.javascript.WrappedException: Wrapped
>> org.wso2.carbon.hostobjects.sso.SignatureVerificationException
>> (/store/jagg/jaggery_acs.jag#70)
>> at org.mozilla.javascript.Context.throwAsScriptRuntimeEx(
>> Context.java:1754)
>> at org.mozilla.javascript.MemberBox.invoke(MemberBox.java:148)
>> at org.mozilla.javascript.FunctionObject.call(FunctionObject.java:386)
>> at org.mozilla.javascript.optimizer.OptRuntime.call1(OptRuntime.java:32)
>> at org.jaggeryjs.rhino.store.jagg.c0._c_anonymous_1(/store/
>> jagg/jaggery_acs.jag:70)
>> at org.jaggeryjs.rhino.store.jagg.c0.call(/store/jagg/jaggery_acs.jag)
>> at org.mozilla.javascript.optimizer.OptRuntime.call0(OptRuntime.java:23)
>> at org.jaggeryjs.rhino.store.jagg.c0._c_script_0(/store/
>> jagg/jaggery_acs.jag:5)
>> at org.jaggeryjs.rhino.store.jagg.c0.call(/store/jagg/jaggery_acs.jag)
>> at org.mozilla.javascript.ContextFactory.doTopCall(
>> ContextFactory.java:394)
>> at org.mozilla.javascript.ScriptRuntime.doTopCall(
>> ScriptRuntime.java:3091)
>> at org.jaggeryjs.rhino.store.jagg.c0.call(/store/jagg/jaggery_acs.jag)
>> at org.jaggeryjs.rhino.store.jagg.c0.exec(/store/jagg/jaggery_acs.jag)
>> at org.jaggeryjs.scriptengine.engine.RhinoEngine.execScript(
>> RhinoEngine.java:567)
>> ... 45 more
>> Caused by: org.wso2.carbon.hostobjects.sso.SignatureVerificationException
>> at org.wso2.carbon.hostobjects.sso.internal.util.Util.
>> validateSignature(Util.java:332)
>> at org.wso2.carbon.hostobjects.sso.SAMLSSORelyingPartyObject.
>> jsFunction_validateSignature(SAMLSSORelyingPartyObject.java:168)
>> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>> at sun.reflect.NativeMethodAccessorImpl.invoke(
>> NativeMethodAccessorImpl.java:62)
>> at sun.reflect.DelegatingMethodAccessorImpl.invoke(
>> DelegatingMethodAccessorImpl.java:43)
>> at java.lang.reflect.Method.invoke(Method.java:498)
>> at org.mozilla.javascript.MemberBox.invoke(MemberBox.java:126)
>> ... 57 more
>> Caused by: java.lang.NullPointerException
>> at java.io.File.<init>(File.java:277)
>> at org.wso2.carbon.hostobjects.sso.internal.util.Util.
>> validateSignature(Util.java:281)
>>
>>
>> [1] https://github.com/wso2/carbon-apimgt/blob/master/
>> features/apimgt/org.wso2.carbon.apimgt.store.feature/
>> src/main/resources/store/site/themes/wso2/templates/sso/
>> filter/template.jag
>>
>>
>> Fix with RC3 please.
>>
>> Thanks,
>> Raj.
>>
>> On Wed, Jan 11, 2017 at 8:10 AM, Malintha Amarasinghe <malint...@wso2.com
>> > wrote:
>>
>> Hi all,
>>
>> We are calling off the vote due to the problems found in stat graphs. We
>> will do a RC3 soon.
>>
>> Thanks!
>> Malintha
>>
>> On Wed, Jan 11, 2017 at 12:01 PM, Abimaran Kugathasan <abima...@wso2.com>
>> wrote:
>>
>> Tested Endpoints, Throttling and general API invocations scenarios
>>
>> [+] Stable - go ahead and release
>>
>> On Wed, Jan 11, 2017 at 11:20 AM, Praminda Jayawardana <prami...@wso2.com
>> > wrote:
>>
>> Tested client SDK generation for super tenant, non admin, tenant and self
>> signup users.
>>
>> [+] Stable - go ahead and release
>>
>> On Wed, Jan 11, 2017 at 10:56 AM, Arshardh Ifthikar <arsha...@wso2.com>
>> wrote:
>>
>> Tested the Websocket API feature
>>
>> [+] Stable - go ahead and release
>>
>> On Wed, Jan 11, 2017 at 10:52 AM, Tharindu Dharmarathna <
>> tharin...@wso2.com> wrote:
>>
>> Tested the Blocking condition and Advance throtting feature
>>
>> [+] Stable - go ahead and release
>>
>>
>> On Wed, Jan 11, 2017 at 10:50 AM, Chamila Adhikarinayake <
>> chami...@wso2.com> wrote:
>>
>> Tested workflows for API lifecycle state change feature.
>>
>> [+] Stable - go ahead and release
>>
>> On Tue, Jan 10, 2017 at 4:35 PM, Malintha Amarasinghe <malint...@wso2.com
>> > wrote:
>>
>> Hi All,
>>
>> This is the 2nd Release Candidate of WSO2 API Manager 2.1.0
>>
>> Please download, test the product and vote. The vote will be open for 72
>> hours or as needed.
>>
>> Source and distribution
>>
>>     Run-time : https://github.com/wso2/product-apim/releases/
>> download/v2.1.0-rc2/wso2am-2.1.0-RC2.zip
>>     Analytics : https://github.com/wso2/analytics-apim/releases/
>> download/v2.1.0-rc2/wso2am-analytics-2.1.0-RC2.zip
>>     Tooling : https://github.com/wso2/devstudio-tooling-apim/
>> releases/tag/v2.1.0-rc2
>>
>>
>> This release fixes the following issues:
>>     Runtime : https://wso2.org/jira/issues/?filter=13623
>>     Analytics : https://wso2.org/jira/issues/?filter=13624
>>     Tooling : https://wso2.org/jira/browse/DEVTOOLAPI-1
>>
>>
>> Please vote as follows.
>>     [+] Stable - go ahead and release
>>     [-] Broken - do not release (explain why)
>>
>>
>> Thanks,
>> - WSO2 API Manager Team -
>>
>> --
>> Malintha Amarasinghe
>> Software Engineer
>> *WSO2, Inc. - lean | enterprise | middleware*
>> http://wso2.com/
>>
>> Mobile : +94 712383306 <+94%2071%20238%203306>
>>
>>
>>
>>
>>
>> _______________________________________________
>>
>>
>> Architecture mailing list
>>
>>
>> architect...@wso2.org
>>
>>
>> https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture
>>
>>
>>
>>
>>
>>
>> --
>> Regards,
>> Chamila Adhikarinayake
>> Software Engineer
>> WSO2, Inc.
>> Mobile - +94712346437 <+94%2071%20234%206437>
>> Email  - chami...@wso2.com
>> Blog  -  http://helpfromadhi.blogspot.com/
>>
>>
>>
>>
>>
>> _______________________________________________
>>
>>
>> Architecture mailing list
>>
>>
>> architect...@wso2.org
>>
>>
>> https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture
>>
>>
>>
>>
>>
>>
>> --
>>
>> *Tharindu Dharmarathna*Software Engineer
>>
>>
>> WSO2 Inc.; http://wso2.com
>> lean.enterprise.middleware
>>
>>
>>
>> mobile: *+94779109091 <+94%2077%20910%209091>*
>>
>>
>>
>>
>>
>> _______________________________________________
>>
>>
>> Architecture mailing list
>>
>>
>> architect...@wso2.org
>>
>>
>> https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture
>>
>>
>>
>>
>>
>>
>> --
>> *Arshardh Ifthikar*
>> Trainee Software Engineer
>> WSO2, Inc.
>> Mobile: +94719806525 <+94%2071%20980%206525>
>>
>>
>>
>>
>>
>> _______________________________________________
>>
>>
>> Dev mailing list
>>
>>
>> Dev@wso2.org
>>
>>
>> http://wso2.org/cgi-bin/mailman/listinfo/dev
>>
>>
>>
>>
>>
>>
>> --
>>
>> *Praminda Jayawardana*
>> Software Engineer
>> WSO2 Inc.; http://wso2.com
>> Mobile : +94 (0) 716 590918 <+94%2071%20659%200918>
>>
>>
>>
>>
>>
>> _______________________________________________
>>
>>
>> Architecture mailing list
>>
>>
>> architect...@wso2.org
>>
>>
>> https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture
>>
>>
>>
>>
>>
>>
>> --
>> Thanks
>> Abimaran Kugathasan
>> Senior Software Engineer - API Technologies
>>
>> Email : abima...@wso2.com
>> Mobile : +94 773922820 <+94%2077%20392%202820>
>>
>> <http://stackoverflow.com/users/515034>
>> <http://lk.linkedin.com/in/abimaran>
>> <http://www.lkabimaran.blogspot.com/>  <https://github.com/abimarank>
>> <https://twitter.com/abimaran>
>>
>>
>>
>>
>>
>>
>> _______________________________________________
>>
>>
>> Dev mailing list
>>
>>
>> Dev@wso2.org
>>
>>
>> http://wso2.org/cgi-bin/mailman/listinfo/dev
>>
>>
>>
>>
>>
>>
>> --
>> Malintha Amarasinghe
>> Software Engineer
>> *WSO2, Inc. - lean | enterprise | middleware*
>> http://wso2.com/
>>
>> Mobile : +94 712383306 <+94%2071%20238%203306>
>>
>>
>>
>>
>>
>> _______________________________________________
>>
>>
>> Dev mailing list
>>
>>
>> Dev@wso2.org
>>
>>
>> http://wso2.org/cgi-bin/mailman/listinfo/dev
>>
>>
>>
>>
>>
>>
>> --
>> Rajkumar Rajaratnam
>> Committer & PMC Member, Apache Stratos
>> Senior Software Engineer, WSO2
>>
>> LinkedIn : https://lk.linkedin.com/in/rajuu
>> Mobile : +94777568639 <+94%2077%20756%208639>
>>
>>
>>
>>
>>
>> _______________________________________________
>>
>>
>> Dev mailing list
>>
>>
>> Dev@wso2.org
>>
>>
>> http://wso2.org/cgi-bin/mailman/listinfo/dev
>>
>>
>>
>>
>>
>>
>> --
>> Thanks
>> Abimaran Kugathasan
>> Senior Software Engineer - API Technologies
>>
>> Email : abima...@wso2.com
>> Mobile : +94 773922820 <+94%2077%20392%202820>
>>
>> <http://stackoverflow.com/users/515034>
>> <http://lk.linkedin.com/in/abimaran>
>> <http://www.lkabimaran.blogspot.com/>  <https://github.com/abimarank>
>> <https://twitter.com/abimaran>
>>
>>
>>
>>


-- 
Thanks
Abimaran Kugathasan
Senior Software Engineer - API Technologies

Email : abima...@wso2.com
Mobile : +94 773922820

<http://stackoverflow.com/users/515034>
<http://lk.linkedin.com/in/abimaran>  <http://www.lkabimaran.blogspot.com/>
<https://github.com/abimarank>  <https://twitter.com/abimaran>
_______________________________________________
Dev mailing list
Dev@wso2.org
http://wso2.org/cgi-bin/mailman/listinfo/dev

Reply via email to