Hi Lakshman,

I  tried with the pack  that you have given. issue exist.

Thanks,



On Wed, Apr 8, 2015 at 2:56 PM, Lakshman Udayakantha <[email protected]>
wrote:

> in Latest pack built today has no such issue. check the latest pack.
>
> Thanks
>
> On Wed, Apr 8, 2015 at 2:06 PM, Waruna Perera <[email protected]> wrote:
>
>> Hi,
>>
>> Just got  the pack from build product-apim and tried to  add a API.
>>
>> Thanks,
>>
>> Waruna
>>
>> On Wed, Apr 8, 2015 at 1:27 PM, Madusanka Premaratne <[email protected]
>> > wrote:
>>
>>> Hi Waruna,
>>> AFAIK this is not an known issue. Could you please give me the steps to
>>> reproduce this? I mean what are the tests you performed?
>>>
>>> Thanks,
>>> Madusanka
>>>
>>> On Tue, Apr 7, 2015 at 7:20 PM, Waruna Perera <[email protected]> wrote:
>>>
>>>> Hi,
>>>>
>>>> I tried to run some UI tests in  APIM git 1.9.0 code base. Found out
>>>> that error occurs while adding API. Tried the same thing with built pack
>>>> manually and error is there. Is this known bug? It says constraint
>>>> violation in AM_API table. I checked the h2 DB.  There were no records in
>>>> the DB.
>>>>
>>>>
>>>>
>>>> [2015-04-07 19:14:33,647] ERROR - ApiMgtDAO Error while adding the API:
>>>> admin-ww-1.0.0 to the database
>>>> org.h2.jdbc.JdbcSQLException: Unique index or primary key violation:
>>>> "CONSTRAINT_INDEX_73 ON PUBLIC.AM_API(API_PROVIDER, API_NAME,
>>>> API_VERSION)"; SQL statement:
>>>> INSERT INTO AM_API (API_PROVIDER, API_NAME, API_VERSION, CONTEXT)
>>>> VALUES (?,?,?,?) [23001-140]
>>>> at org.h2.message.DbException.getJdbcSQLException(DbException.java:327)
>>>> at org.h2.message.DbException.get(DbException.java:167)
>>>> at org.h2.message.DbException.get(DbException.java:144)
>>>> at org.h2.index.BaseIndex.getDuplicateKeyException(BaseIndex.java:157)
>>>> at org.h2.index.PageBtree.find(PageBtree.java:121)
>>>> at org.h2.index.PageBtreeLeaf.addRow(PageBtreeLeaf.java:138)
>>>> at org.h2.index.PageBtreeLeaf.addRowTry(PageBtreeLeaf.java:93)
>>>> at org.h2.index.PageBtreeIndex.addRow(PageBtreeIndex.java:90)
>>>> at org.h2.index.PageBtreeIndex.add(PageBtreeIndex.java:81)
>>>> at org.h2.table.RegularTable.addRow(RegularTable.java:116)
>>>> at org.h2.command.dml.Insert.insertRows(Insert.java:120)
>>>> at org.h2.command.dml.Insert.update(Insert.java:82)
>>>> at org.h2.command.CommandContainer.update(CommandContainer.java:70)
>>>> at org.h2.command.Command.executeUpdate(Command.java:199)
>>>> at
>>>> org.h2.jdbc.JdbcPreparedStatement.execute(JdbcPreparedStatement.java:179)
>>>> at org.wso2.carbon.apimgt.impl.dao.ApiMgtDAO.addAPI(ApiMgtDAO.java:6075)
>>>> at
>>>> org.wso2.carbon.apimgt.impl.APIProviderImpl.addAPI(APIProviderImpl.java:391)
>>>> at
>>>> org.wso2.carbon.apimgt.impl.UserAwareAPIProvider.addAPI(UserAwareAPIProvider.java:46)
>>>> at
>>>> org.wso2.carbon.apimgt.hostobjects.APIProviderHostObject.saveAPI(APIProviderHostObject.java:864)
>>>> at
>>>> org.wso2.carbon.apimgt.hostobjects.APIProviderHostObject.jsFunction_createAPI(APIProviderHostObject.java:773)
>>>> 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.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.publisher.modules.api.c3._c_anonymous_5(/publisher/modules/api/add.jag:99)
>>>> at
>>>> org.jaggeryjs.rhino.publisher.modules.api.c3.call(/publisher/modules/api/add.jag)
>>>> at
>>>> org.mozilla.javascript.ScriptRuntime.applyOrCall(ScriptRuntime.java:2430)
>>>> at org.mozilla.javascript.BaseFunction.execIdCall(BaseFunction.java:269)
>>>> at
>>>> org.mozilla.javascript.IdFunctionObject.call(IdFunctionObject.java:97)
>>>> at org.mozilla.javascript.optimizer.OptRuntime.call2(OptRuntime.java:42)
>>>> at
>>>> org.jaggeryjs.rhino.publisher.modules.api.c0._c_anonymous_30(/publisher/modules/api/module.jag:98)
>>>> at
>>>> org.jaggeryjs.rhino.publisher.modules.api.c0.call(/publisher/modules/api/module.jag)
>>>> at org.mozilla.javascript.optimizer.OptRuntime.call1(OptRuntime.java:32)
>>>> at
>>>> org.jaggeryjs.rhino.publisher.site.blocks.item_design.ajax.c0._c_anonymous_2(/publisher/site/blocks/item-design/ajax/add.jag:67)
>>>> at
>>>> org.jaggeryjs.rhino.publisher.site.blocks.item_design.ajax.c0.call(/publisher/site/blocks/item-design/ajax/add.jag)
>>>> at org.mozilla.javascript.optimizer.OptRuntime.call0(OptRuntime.java:23)
>>>> at
>>>> org.jaggeryjs.rhino.publisher.site.blocks.item_design.ajax.c0._c_script_0(/publisher/site/blocks/item-design/ajax/add.jag:18)
>>>> at
>>>> org.jaggeryjs.rhino.publisher.site.blocks.item_design.ajax.c0.call(/publisher/site/blocks/item-design/ajax/add.jag)
>>>> at
>>>> org.mozilla.javascript.ContextFactory.doTopCall(ContextFactory.java:394)
>>>> at
>>>> org.mozilla.javascript.ScriptRuntime.doTopCall(ScriptRuntime.java:3091)
>>>> at
>>>> org.jaggeryjs.rhino.publisher.site.blocks.item_design.ajax.c0.call(/publisher/site/blocks/item-design/ajax/add.jag)
>>>> at
>>>> org.jaggeryjs.rhino.publisher.site.blocks.item_design.ajax.c0.exec(/publisher/site/blocks/item-design/ajax/add.jag)
>>>> at
>>>> org.jaggeryjs.scriptengine.engine.RhinoEngine.execScript(RhinoEngine.java:570)
>>>> at
>>>> org.jaggeryjs.scriptengine.engine.RhinoEngine.exec(RhinoEngine.java:273)
>>>> at
>>>> org.jaggeryjs.jaggery.core.manager.WebAppManager.execute(WebAppManager.java:432)
>>>> at
>>>> org.jaggeryjs.jaggery.core.JaggeryServlet.doPost(JaggeryServlet.java:29)
>>>> at javax.servlet.http.HttpServlet.service(HttpServlet.java:755)
>>>> at javax.servlet.http.HttpServlet.service(HttpServlet.java:848)
>>>> at
>>>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305)
>>>> at
>>>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
>>>> at
>>>> org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:749)
>>>> at
>>>> org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:487)
>>>> at
>>>> org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379)
>>>> at
>>>> org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:339)
>>>> at
>>>> org.jaggeryjs.jaggery.core.JaggeryFilter.doFilter(JaggeryFilter.java:21)
>>>> at
>>>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
>>>> at
>>>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
>>>> at
>>>> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:222)
>>>> at
>>>> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:123)
>>>> at
>>>> org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472)
>>>> at
>>>> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:171)
>>>> at
>>>> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:99)
>>>> at
>>>> org.wso2.carbon.tomcat.ext.valves.CompositeValve.continueInvocation(CompositeValve.java:178)
>>>> at
>>>> org.wso2.carbon.tomcat.ext.valves.CarbonTomcatValve$1.invoke(CarbonTomcatValve.java:47)
>>>> at
>>>> org.wso2.carbon.webapp.mgt.TenantLazyLoaderValve.invoke(TenantLazyLoaderValve.java:56)
>>>> at
>>>> org.wso2.carbon.tomcat.ext.valves.TomcatValveContainer.invokeValves(TomcatValveContainer.java:47)
>>>> at
>>>> org.wso2.carbon.tomcat.ext.valves.CompositeValve.invoke(CompositeValve.java:141)
>>>> at
>>>> org.wso2.carbon.tomcat.ext.valves.CarbonStuckThreadDetectionValve.invoke(CarbonStuckThreadDetectionValve.java:156)
>>>> at
>>>> org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:936)
>>>> at
>>>> org.wso2.carbon.tomcat.ext.valves.CarbonContextCreatorValve.invoke(CarbonContextCreatorValve.java:52)
>>>> at
>>>> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)
>>>> at
>>>> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:407)
>>>> at
>>>> org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1004)
>>>> at
>>>> org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:589)
>>>> at
>>>> org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.run(NioEndpoint.java:1653)
>>>> at
>>>> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
>>>> at
>>>> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
>>>> at java.lang.Thread.run(Thread.java:745)
>>>> [2015-04-07 19:14:33,652] ERROR - add:jag
>>>> org.mozilla.javascript.WrappedException: Wrapped
>>>> org.wso2.carbon.apimgt.api.APIManagementException: Error in adding API :ww
>>>> (/publisher/modules/api/add.jag#99)
>>>> 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.publisher.modules.api.c3._c_anonymous_5(/publisher/modules/api/add.jag:99)
>>>> at
>>>> org.jaggeryjs.rhino.publisher.modules.api.c3.call(/publisher/modules/api/add.jag)
>>>> at
>>>> org.mozilla.javascript.ScriptRuntime.applyOrCall(ScriptRuntime.java:2430)
>>>> at org.mozilla.javascript.BaseFunction.execIdCall(BaseFunction.java:269)
>>>> at
>>>> org.mozilla.javascript.IdFunctionObject.call(IdFunctionObject.java:97)
>>>> at org.mozilla.javascript.optimizer.OptRuntime.call2(OptRuntime.java:42)
>>>> at
>>>> org.jaggeryjs.rhino.publisher.modules.api.c0._c_anonymous_30(/publisher/modules/api/module.jag:98)
>>>> at
>>>> org.jaggeryjs.rhino.publisher.modules.api.c0.call(/publisher/modules/api/module.jag)
>>>> at org.mozilla.javascript.optimizer.OptRuntime.call1(OptRuntime.java:32)
>>>> at
>>>> org.jaggeryjs.rhino.publisher.site.blocks.item_design.ajax.c0._c_anonymous_2(/publisher/site/blocks/item-design/ajax/add.jag:67)
>>>> at
>>>> org.jaggeryjs.rhino.publisher.site.blocks.item_design.ajax.c0.call(/publisher/site/blocks/item-design/ajax/add.jag)
>>>> at org.mozilla.javascript.optimizer.OptRuntime.call0(OptRuntime.java:23)
>>>> at
>>>> org.jaggeryjs.rhino.publisher.site.blocks.item_design.ajax.c0._c_script_0(/publisher/site/blocks/item-design/ajax/add.jag:18)
>>>> at
>>>> org.jaggeryjs.rhino.publisher.site.blocks.item_design.ajax.c0.call(/publisher/site/blocks/item-design/ajax/add.jag)
>>>> at
>>>> org.mozilla.javascript.ContextFactory.doTopCall(ContextFactory.java:394)
>>>> at
>>>> org.mozilla.javascript.ScriptRuntime.doTopCall(ScriptRuntime.java:3091)
>>>> at
>>>> org.jaggeryjs.rhino.publisher.site.blocks.item_design.ajax.c0.call(/publisher/site/blocks/item-design/ajax/add.jag)
>>>> at
>>>> org.jaggeryjs.rhino.publisher.site.blocks.item_design.ajax.c0.exec(/publisher/site/blocks/item-design/ajax/add.jag)
>>>> at
>>>> org.jaggeryjs.scriptengine.engine.RhinoEngine.execScript(RhinoEngine.java:570)
>>>> at
>>>> org.jaggeryjs.scriptengine.engine.RhinoEngine.exec(RhinoEngine.java:273)
>>>> at
>>>> org.jaggeryjs.jaggery.core.manager.WebAppManager.execute(WebAppManager.java:432)
>>>> at
>>>> org.jaggeryjs.jaggery.core.JaggeryServlet.doPost(JaggeryServlet.java:29)
>>>> at javax.servlet.http.HttpServlet.service(HttpServlet.java:755)
>>>> at javax.servlet.http.HttpServlet.service(HttpServlet.java:848)
>>>> at
>>>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305)
>>>> at
>>>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
>>>> at
>>>> org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:749)
>>>> at
>>>> org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:487)
>>>> at
>>>> org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379)
>>>> at
>>>> org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:339)
>>>> at
>>>> org.jaggeryjs.jaggery.core.JaggeryFilter.doFilter(JaggeryFilter.java:21)
>>>> at
>>>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
>>>> at
>>>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
>>>> at
>>>> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:222)
>>>> at
>>>> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:123)
>>>> at
>>>> org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472)
>>>> at
>>>> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:171)
>>>> at
>>>> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:99)
>>>> at
>>>> org.wso2.carbon.tomcat.ext.valves.CompositeValve.continueInvocation(CompositeValve.java:178)
>>>> at
>>>> org.wso2.carbon.tomcat.ext.valves.CarbonTomcatValve$1.invoke(CarbonTomcatValve.java:47)
>>>> at
>>>> org.wso2.carbon.webapp.mgt.TenantLazyLoaderValve.invoke(TenantLazyLoaderValve.java:56)
>>>> at
>>>> org.wso2.carbon.tomcat.ext.valves.TomcatValveContainer.invokeValves(TomcatValveContainer.java:47)
>>>> at
>>>> org.wso2.carbon.tomcat.ext.valves.CompositeValve.invoke(CompositeValve.java:141)
>>>> at
>>>> org.wso2.carbon.tomcat.ext.valves.CarbonStuckThreadDetectionValve.invoke(CarbonStuckThreadDetectionValve.java:156)
>>>> at
>>>> org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:936)
>>>> at
>>>> org.wso2.carbon.tomcat.ext.valves.CarbonContextCreatorValve.invoke(CarbonContextCreatorValve.java:52)
>>>> at
>>>> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)
>>>> at
>>>> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:407)
>>>> at
>>>> org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1004)
>>>> at
>>>> org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:589)
>>>> at
>>>> org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.run(NioEndpoint.java:1653)
>>>> at
>>>> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
>>>> at
>>>> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
>>>> at java.lang.Thread.run(Thread.java:745)
>>>> Caused by: org.wso2.carbon.apimgt.api.APIManagementException: Error in
>>>> adding API :ww
>>>> at
>>>> org.wso2.carbon.apimgt.impl.APIProviderImpl.addAPI(APIProviderImpl.java:403)
>>>> at
>>>> org.wso2.carbon.apimgt.impl.UserAwareAPIProvider.addAPI(UserAwareAPIProvider.java:46)
>>>> at
>>>> org.wso2.carbon.apimgt.hostobjects.APIProviderHostObject.saveAPI(APIProviderHostObject.java:864)
>>>> at
>>>> org.wso2.carbon.apimgt.hostobjects.APIProviderHostObject.jsFunction_createAPI(APIProviderHostObject.java:773)
>>>> 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.mozilla.javascript.MemberBox.invoke(MemberBox.java:126)
>>>> ... 56 more
>>>> Caused by: org.wso2.carbon.apimgt.api.APIManagementException: Error
>>>> while adding the API: admin-ww-1.0.0 to the database
>>>> at
>>>> org.wso2.carbon.apimgt.impl.dao.ApiMgtDAO.handleException(ApiMgtDAO.java:6954)
>>>> at org.wso2.carbon.apimgt.impl.dao.ApiMgtDAO.addAPI(ApiMgtDAO.java:6097)
>>>> at
>>>> org.wso2.carbon.apimgt.impl.APIProviderImpl.addAPI(APIProviderImpl.java:391)
>>>> ... 64 more
>>>> Caused by: org.h2.jdbc.JdbcSQLException: Unique index or primary key
>>>> violation: "CONSTRAINT_INDEX_73 ON PUBLIC.AM_API(API_PROVIDER, API_NAME,
>>>> API_VERSION)"; SQL statement:
>>>> INSERT INTO AM_API (API_PROVIDER, API_NAME, API_VERSION, CONTEXT)
>>>> VALUES (?,?,?,?) [23001-140]
>>>> at org.h2.message.DbException.getJdbcSQLException(DbException.java:327)
>>>> at org.h2.message.DbException.get(DbException.java:167)
>>>> at org.h2.message.DbException.get(DbException.java:144)
>>>> at org.h2.index.BaseIndex.getDuplicateKeyException(BaseIndex.java:157)
>>>> at org.h2.index.PageBtree.find(PageBtree.java:121)
>>>> at org.h2.index.PageBtreeLeaf.addRow(PageBtreeLeaf.java:138)
>>>> at org.h2.index.PageBtreeLeaf.addRowTry(PageBtreeLeaf.java:93)
>>>> at org.h2.index.PageBtreeIndex.addRow(PageBtreeIndex.java:90)
>>>> at org.h2.index.PageBtreeIndex.add(PageBtreeIndex.java:81)
>>>> at org.h2.table.RegularTable.addRow(RegularTable.java:116)
>>>> at org.h2.command.dml.Insert.insertRows(Insert.java:120)
>>>> at org.h2.command.dml.Insert.update(Insert.java:82)
>>>> at org.h2.command.CommandContainer.update(CommandContainer.java:70)
>>>> at org.h2.command.Command.executeUpdate(Command.java:199)
>>>> at
>>>> org.h2.jdbc.JdbcPreparedStatement.execute(JdbcPreparedStatement.java:179)
>>>> at org.wso2.carbon.apimgt.impl.dao.ApiMgtDAO.addAPI(ApiMgtDAO.java:6075)
>>>> ... 65 more
>>>>
>>>>
>>>> --
>>>> Waruna Perera
>>>> Senior Software Engineer - Test Automation
>>>> Mobile: +94 77 3867037
>>>> WSO2, Inc.; http://wso2.com/
>>>> lean . enterprise . middlewear.
>>>>
>>>> _______________________________________________
>>>> Dev mailing list
>>>> [email protected]
>>>> http://wso2.org/cgi-bin/mailman/listinfo/dev
>>>>
>>>>
>>>
>>>
>>> --
>>> *Madusanka Premaratne* | Associate Software Engineer
>>> WSO2, Inc | lean. enterprise. middleware.
>>> #20, Palm Grove, Colombo 03, Sri Lanka
>>> Mobile: +94 71 835 70 73| Work: +94 112 145 345
>>> Email: [email protected] | Web: www.wso2.com
>>>
>>> [image: Facebook] <https://www.facebook.com/maduzanka> [image: Twitter]
>>> <https://twitter.com/rmmpremaratne> [image: Google Plus]
>>> <https://plus.google.com/u/0/+MadusankaPremaratnemaduz/about/p/pub> [image:
>>> Linkedin] <http://lk.linkedin.com/in/madusanka/> [image: Instagram]
>>> <http://instagram.com/madusankapremaratne> [image: Skype]
>>> <http://@rmmpremaratne>
>>>
>>>
>>
>>
>> --
>> Waruna Perera
>> Senior Software Engineer - Test Automation
>> Mobile: +94 77 3867037
>> WSO2, Inc.; http://wso2.com/
>> lean . enterprise . middlewear.
>>
>> _______________________________________________
>> Dev mailing list
>> [email protected]
>> http://wso2.org/cgi-bin/mailman/listinfo/dev
>>
>>
>
>
> --
> Lakshman Udayakantha
> WSO2 Inc. www.wso2.com
> lean.enterprise.middleware
> Mobile: *0711241005*
>
>


-- 
Waruna Perera
Senior Software Engineer - Test Automation
Mobile: +94 77 3867037
WSO2, Inc.; http://wso2.com/
lean . enterprise . middlewear.
_______________________________________________
Dev mailing list
[email protected]
http://wso2.org/cgi-bin/mailman/listinfo/dev

Reply via email to