[Dev] [WSO2-EI] ESB Analytics conflicts with WSO2AM analytics
Hi In a profile where client have ESB and APIM analytics in separated instances, but sharing governance registry space, ESB analytics try to run tasks of WSO2AM analytics and that causes errors in ESB analytics, for example the registry: /_system/governance/repository/components/org.wso2.carbon.tasks/definitions/-1234/ANALYTICS_SPARK/APIMAnalytics-AbnormalTierUsageAlert-AbnormalTierAvailabilityAlert-batch1 I know that we can solve this changing registryRoot on both servers, but in this case the client wish to have governance registry shared between all servers that is the purpose of governance registry space. Anyway to configure ESB analytics and APIM Analytics without these conflicts? Best regards Clóvis ___ Dev mailing list Dev@wso2.org http://wso2.org/cgi-bin/mailman/listinfo/dev
[Dev] [WSO2-EI] doubt about analytics identity.xml and integration with WSO2-IS
Hi, Reviewing the puppet modules for pattern 6 of EI, I see that both analytics1 and 2 points to wso2_carbon_db, that is for local registry space for each instance, is that correct? or better is to have a central wso2idn database, for future shared use with WOS2IS? best regards. Clóvis ___ Dev mailing list Dev@wso2.org http://wso2.org/cgi-bin/mailman/listinfo/dev
[Dev] [WSO2IS] use of sessionDataKey and user bookmarking the login page
Hi The problem is about the user bookmarking login page that have sessionDataKey on the URL, somedays after that session got invalid and the bookmark always got invalid session until user click to redirect for correct page. I'm try to figure ways to deal with authentication framework specifically on the customization of login.do and know better about sessionDataKey, but I cant find any idea, for example how to check if sessionDataKey is valid, and if not, send back to authorization that give back a new sessionDataKey. Can someone explain the idea behind sessionDataKey or anyone have the correct way to solve user using browser to bookmarking login page, but the correct is to bookmarking the redirect_uri? Thanks Clóvis ___ Dev mailing list Dev@wso2.org http://wso2.org/cgi-bin/mailman/listinfo/dev
Re: [Dev] [WSO2-IoTS] What is correct tag or branch of cdmf-agent-android for use with v3.0.0
sport.http.headers} - http-incoming-150 << Content-Type: application/json {org.apache.synapse.transport.http.headers} TID: [-1] [] [2017-05-25 03:02:01,468] DEBUG {org.apache.synapse.transport.http.headers} - http-incoming-150 << Date: Thu, 25 May 2017 06:02:01 GMT {org.apache.synapse.transport.http.headers} TID: [-1] [] [2017-05-25 03:02:01,468] DEBUG {org.apache.synapse.transport.http.headers} - http-incoming-150 << Transfer-Encoding: chunked {org.apache.synapse.transport.http.headers} TID: [-1] [] [2017-05-25 03:02:01,468] DEBUG {org.apache.synapse.transport.http.headers} - http-incoming-150 << Connection: Keep-Alive {org.apache.synapse.transport.http.headers} TID: [-1] [] [2017-05-25 03:02:01,468] DEBUG {org.apache.synapse.transport.http.wire} - HTTPS-Listener I/O dispatcher-3 << "HTTP/1.1 500 Internal Server Error[\r][\n]" {org.apache.synapse.transport.http.wire} TID: [-1] [] [2017-05-25 03:02:01,468] DEBUG {org.apache.synapse.transport.http.wire} - HTTPS-Listener I/O dispatcher-3 << "Access-Control-Allow-Origin: *[\r][\n]" {org.apache.synapse.transport.http.wire} TID: [-1] [] [2017-05-25 03:02:01,469] DEBUG {org.apache.synapse.transport.http.wire} - HTTPS-Listener I/O dispatcher-3 << "Access-Control-Allow-Methods: GET, POST, DELETE, PUT[\r][\n]" {org.apache.synapse.transport.http.wire} TID: [-1] [] [2017-05-25 03:02:01,469] DEBUG {org.apache.synapse.transport.http.wire} - HTTPS-Listener I/O dispatcher-3 << "Access-Control-Allow-Headers: Content-Type[\r][\n]" {org.apache.synapse.transport.http.wire} TID: [-1] [] [2017-05-25 03:02:01,469] DEBUG {org.apache.synapse.transport.http.wire} - HTTPS-Listener I/O dispatcher-3 << "Content-Type: application/json[\r][\n]" {org.apache.synapse.transport.http.wire} TID: [-1] [] [2017-05-25 03:02:01,469] DEBUG {org.apache.synapse.transport.http.wire} - HTTPS-Listener I/O dispatcher-3 << "Date: Thu, 25 May 2017 06:02:01 GMT[\r][\n]" {org.apache.synapse.transport.http.wire} TID: [-1] [] [2017-05-25 03:02:01,469] DEBUG {org.apache.synapse.transport.http.wire} - HTTPS-Listener I/O dispatcher-3 << "Transfer-Encoding: chunked[\r][\n]" {org.apache.synapse.transport.http.wire} TID: [-1] [] [2017-05-25 03:02:01,469] DEBUG {org.apache.synapse.transport.http.wire} - HTTPS-Listener I/O dispatcher-3 << "Connection: Keep-Alive[\r][\n]" {org.apache.synapse.transport.http.wire} TID: [-1] [] [2017-05-25 03:02:01,469] DEBUG {org.apache.synapse.transport.http.wire} - HTTPS-Listener I/O dispatcher-3 << "[\r][\n]" {org.apache.synapse.transport.http.wire} TID: [-1] [] [2017-05-25 03:02:01,469] DEBUG {org.apache.synapse.transport.http.wire} - HTTPS-Listener I/O dispatcher-3 << "a0[\r][\n]" {org.apache.synapse.transport.http.wire} TID: [-1] [] [2017-05-25 03:02:01,469] DEBUG {org.apache.synapse.transport.http.wire} - HTTPS-Listener I/O dispatcher-3 << "{"code":500,"message":"Internal server error.","description":"The server encountered an internal error. Please contact administrator.","moreInfo":"","error":[]}[\r][\n]" {org.apache.synapse.transport.http.wire} TID: [-1] [] [2017-05-25 03:02:01,469] DEBUG {org.apache.synapse.transport.http.wire} - HTTPS-Listener I/O dispatcher-3 << "0[\r][\n]" {org.apache.synapse.transport.http.wire} TID: [-1] [] [2017-05-25 03:02:01,469] DEBUG {org.apache.synapse.transport.http.wire} - HTTPS-Listener I/O dispatcher-3 << "[\r][\n]" {org.apache.synapse.transport.http.wire} Best regards 2017-05-23 22:55 GMT-03:00 Lakshman Udayakantha <lakshm...@wso2.com>: > Hi Clovis, > > Since error says 500 internal server error, you have to look at the > wso2carbon.log for server errors. > > Thanks, > Lakshman > > On Wed, May 24, 2017 at 6:12 AM, Clovis Wichoski <clo...@neoinix.com.br> > wrote: > >> Hi Lakshman, >> >> I reviewed and can build better with version tag 3.1.7 of the agent, the >> problem before was about SSLv3 disabled on server, then on agent I forced >> to use a lower version. Now I can do enrollment, but cant get the >> notifications from server, debuging on device I get follow error: >> >> 05-23 20:41:43.474 2692-2692/org.wso2.iot.agent E/APIController: >> {"code":500,"message":"Internal server error.","description":"The server >> encountered an internal error. Please contact administrator.","moreInfo":"", >> "error":[]} >> 05-23 20:41:43.474 2692-2692/org.wso2.iot.agent E/APIController: >> com.android.volley.ServerError >> >> I tried to enable some DEBUG log, but cant find a usefull message, >> appears to be a p
Re: [Dev] [WSO2-IoTS] What is correct tag or branch of cdmf-agent-android for use with v3.0.0
Hi Lakshman, I reviewed and can build better with version tag 3.1.7 of the agent, the problem before was about SSLv3 disabled on server, then on agent I forced to use a lower version. Now I can do enrollment, but cant get the notifications from server, debuging on device I get follow error: 05-23 20:41:43.474 2692-2692/org.wso2.iot.agent E/APIController: {"code":500,"message":"Internal server error.","description":"The server encountered an internal error. Please contact administrator.","moreInfo":"","error":[]} 05-23 20:41:43.474 2692-2692/org.wso2.iot.agent E/APIController: com.android.volley.ServerError I tried to enable some DEBUG log, but cant find a usefull message, appears to be a problem at server side now on org.wso2.carbon.device.mgt.mobile.android.api plugin. on Server I got: ==> core/repository/logs/http_access_2017-05-23.log <== 10.0.0.4 - - [23/May/2017:20:52:11 -0300] "PUT /api/device-mgt/android/v1.0/devices/17e2fad557210525/pending-operations HTTP/1.1" 500 160 "-" "Synapse-PT-HttpComponents-NIO" 10.0.0.4 - - [23/May/2017:20:54:30 -0300] "PUT /api/device-mgt/android/v1.0/devices/17e2fad557210525/pending-operations HTTP/1.1" 500 160 "-" "Synapse-PT-HttpComponents-NIO" 10.0.0.4 - - [23/May/2017:20:55:50 -0300] "POST /oauth2/token HTTP/1.1" 400 87 "-" "Synapse-PT-HttpComponents-NIO" 10.0.0.4 - - [23/May/2017:20:56:09 -0300] "POST /services/APIKeyValidationService HTTP/1.1" 200 3408 "-" "Axis2" 10.0.0.4 - - [23/May/2017:20:56:09 -0300] "PUT /api/device-mgt/android/v1.0/devices/17e2fad557210525/pending-operations HTTP/1.1" 500 160 "-" "Synapse-PT-HttpComponents-NIO" 10.0.0.4 - - [23/May/2017:20:56:49 -0300] "PUT /api/device-mgt/android/v1.0/devices/17e2fad557210525/pending-operations HTTP/1.1" 500 160 "-" "Synapse-PT-HttpComponents-NIO" 10.0.0.4 - - [23/May/2017:20:58:20 -0300] "PUT /api/device-mgt/android/v1.0/devices/17e2fad557210525/pending-operations HTTP/1.1" 500 160 "-" "Synapse-PT-HttpComponents-NIO" 10.0.0.4 - - [23/May/2017:20:59:59 -0300] "POST /services/APIKeyValidationService HTTP/1.1" 200 7832 "-" "Axis2" 10.0.0.4 - - [23/May/2017:20:59:59 -0300] "PUT /api/device-mgt/android/v1.0/devices/17e2fad557210525/pending-operations HTTP/1.1" 500 160 "-" "Synapse-PT-HttpComponents-NIO" 10.0.0.4 - - [23/May/2017:21:00:50 -0300] "POST /oauth2/token HTTP/1.1" 400 87 "-" "Synapse-PT-HttpComponents-NIO" 10.0.0.4 - - [23/May/2017:21:02:11 -0300] "PUT /api/device-mgt/android/v1.0/devices/17e2fad557210525/pending-operations HTTP/1.1" 500 160 "-" "Synapse-PT-HttpComponents-NIO" 10.0.0.4 - - [23/May/2017:21:03:46 -0300] "PUT /api/device-mgt/android/v1.0/devices/17e2fad557210525/pending-operations HTTP/1.1" 500 160 "-" "Synapse-PT-HttpComponents-NIO" 10.0.0.4 - - [23/May/2017:21:04:12 -0300] "PUT /api/device-mgt/android/v1.0/devices/17e2fad557210525/pending-operations HTTP/1.1" 500 160 "-" "Synapse-PT-HttpComponents-NIO" 10.0.0.4 - - [23/May/2017:21:05:52 -0300] "POST /oauth2/token HTTP/1.1" 400 87 "-" "Synapse-PT-HttpComponents-NIO" 10.0.0.4 - - [23/May/2017:21:06:01 -0300] "PUT /api/device-mgt/android/v1.0/devices/17e2fad557210525/pending-operations HTTP/1.1" 500 160 "-" "Synapse-PT-HttpComponents-NIO" Now I will try to check how to figure out why got these errors. Best regards. Clóvis Em 22 de mai de 2017 05:24, "Lakshman Udayakantha" <lakshm...@wso2.com> escreveu: Hi Clovis, According to the compatibility doc [1], IOT 3.0.0 should work with agent 2.0.0 version. Could you check the tag and build and see? Anyway, can you see any error in log (server log or logcat)? [1] https://docs.wso2.com/display/IoTS300/WSO2+IoT+Server+ and+Agent+Compatibility Thanks, Lakshman. On Sun, May 21, 2017 at 7:41 PM, Clovis Wichoski <clo...@neoinix.com.br> wrote: > > Hi, > > I'm try to configure and test with Sansung Tablet SM-T560 that uses > Android Kitkat 4.4.4, when I try the application on emulator with same > version all works fine, but when use with physical device dont get > enrollment, I'm compiling the sources from git on branch release-2.0.0 (as > I see that some changes in APIs dont worked with new branches) that work > with version 3.0.0 of WSO2 IoTS. > > Can be any specific issue with physical devices that differ from emulator? > Any clue? Maybe using another branch or tag? > > Best regards > > Clóvis > > ___ > Dev mailing list > Dev@wso2.org > http://wso2.org/cgi-bin/mailman/listinfo/dev > > -- Lakshman Udayakantha WSO2 Inc. www.wso2.com lean.enterprise.middleware Mobile: *0717429601* ___ Dev mailing list Dev@wso2.org http://wso2.org/cgi-bin/mailman/listinfo/dev
[Dev] [WSO2-IoTS] What is correct tag or branch of cdmf-agent-android for use with v3.0.0
Hi, I'm try to configure and test with Sansung Tablet SM-T560 that uses Android Kitkat 4.4.4, when I try the application on emulator with same version all works fine, but when use with physical device dont get enrollment, I'm compiling the sources from git on branch release-2.0.0 (as I see that some changes in APIs dont worked with new branches) that work with version 3.0.0 of WSO2 IoTS. Can be any specific issue with physical devices that differ from emulator? Any clue? Maybe using another branch or tag? Best regards Clóvis ___ Dev mailing list Dev@wso2.org http://wso2.org/cgi-bin/mailman/listinfo/dev
[Dev] [WSO2-IoTS] About some kind of %pattern% inside configuration files
Hi, In many configuration files, we see some words between % sign, for example: "portalURL": "https://%iot.analytics.host%:%iot.analytics.https.port%; This is a pattern that will be changed dynamically at runtime or we must change this with sed? Please you can clarify the use of this kind of pattern? Best regards Clóvis ___ Dev mailing list Dev@wso2.org http://wso2.org/cgi-bin/mailman/listinfo/dev
Re: [Dev] [DEV][AS] Ideas and ways to integrate with Hot Swap Agent
Hi, In mean time devs from HotSwapAgent replied my question on github, they give another idea to create a plugin for WSO2 on Hot Swap Agent, I will try that way too. Here is the post: https://github.com/HotswapProjects/HotswapAgent/issues/107 Thanks Clóvis 2016-01-25 9:16 GMT-02:00 Clovis Wichoski <clo...@neoinix.com.br>: > Hi, > > Its very fine that have a fix, I will try and give you some feedback if > that works. > > Thanks > > Clóvis > > 2016-01-25 4:52 GMT-02:00 Thusitha Thilina Dayaratne <thusit...@wso2.com>: > >> Hi, >> >> AFAIU we can easily fix this by adding a null check to webappCC in the >> CarbonWebappClassLoader.getResource method as follows >> >> public Enumeration getResources(String name) throws IOException { >> Enumeration[] tmp = new Enumeration[2]; >> if (parent != null && webappCC != null) { // add a null check to webappCC >> >> . >> >> WDYT? >> >> >> Thanks >> >> Thusitha >> >> >> On Mon, Jan 25, 2016 at 12:04 PM, Thusitha Thilina Dayaratne < >> thusit...@wso2.com> wrote: >> >>> Hi Clovis, >>> >>> I've checked on the error that you have mentioned. >>> According to the hotswapagent logic >>> *org.hotswap.agent.plugin.tomcat.TomcatPlugin.init() >>> *method get called during WebappLoader.start lifecycle event. But at >>> the time STARTING event get fired we haven't set >>> the WebappClassloadingContext to the WebappClassloader. Therefore when it >>> tries to do some checks in order to load the resources it throws the NPE. >>> >>> *org.wso2.carbon.webapp.mgt.loader.CarbonWebappLoader* >>> >>> @Override >>> protected void startInternal() throws LifecycleException { >>> >>> ... >>> >>> super.startInternal(); > In this point STARTING even get fired and so >>> *TomcatPlugin.init * method get called and it try to get the resource. That >>> called getResources method and since we haven't still set the >>> webappClassloadingContext it throws a NPE. >>> >>> >>> //Adding the WebappClassloadingContext to the WebappClassloader >>> >>> ((CarbonWebappClassLoader) >>> getClassLoader()).setWebappCC(webappClassloadingContext); // This is >>> the point where we are setting the webappClassloadingContext >>> >>> Thanks >>> Thusitha >>> >>> On Fri, Jan 22, 2016 at 4:54 PM, Clovis Wichoski <clo...@neoinix.com.br> >>> wrote: >>> >>>> Hi Kishanthan, >>>> >>>> The redeploy all of a small system its ok, but for a big one, its a >>>> problem, just a change in one class you must redeploy, loose sessions, >>>> restart the system from scratch, to reach the point of test again, with the >>>> ideas used by HotSwapAgent they act on reloading only that one class >>>> changed, this way speeds the development time, these ideas are well >>>> defended by JRebel tool, that HotSwapAgent tends to be a choice as an open >>>> source solution. Please note that this feature is only needed for >>>> development phase, in production, the scheduled task its ok. >>>> >>>> I mean time I tested with AS 5.3.0, JRebel and HotSwapAgent, JRebel >>>> trial worked as expected, but HotSwapAgent not (see exception bellow [1]), >>>> I will check these problems with HotSwapAgent devs, and try to discover why >>>> dont works with WSO2 AS as with HotSwapAgent active none of webapps load, >>>> all get that exception, as we see a NPE in class CarbonWebappClassLoader >>>> maybe its the way they initialize the dependent class loaders. >>>> >>>> [1] Exception when HotSwapAgent is active: >>>> [2016-01-22 09:14:18,467] ERROR >>>> {org.apache.catalina.core.ContainerBase} - ContainerBase.addChild: start: >>>> org.apache.catalina.LifecycleException: Failed to start component >>>> [StandardEngine[Catalina].StandardHost[localhost].StandardContext[/example]] >>>> at >>>> org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:154) >>>> at >>>> org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:901) >>>> at >>>> org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:877) >>>> at >>>> org.apache.catalina.core.StandardHost.addChild(StandardHost.java:649) >>>>
Re: [Dev] [DEV][AS] Ideas and ways to integrate with Hot Swap Agent
Hi, Its very fine that have a fix, I will try and give you some feedback if that works. Thanks Clóvis 2016-01-25 4:52 GMT-02:00 Thusitha Thilina Dayaratne <thusit...@wso2.com>: > Hi, > > AFAIU we can easily fix this by adding a null check to webappCC in the > CarbonWebappClassLoader.getResource method as follows > > public Enumeration getResources(String name) throws IOException { > Enumeration[] tmp = new Enumeration[2]; > if (parent != null && webappCC != null) { // add a null check to webappCC > > . > > WDYT? > > > Thanks > > Thusitha > > > On Mon, Jan 25, 2016 at 12:04 PM, Thusitha Thilina Dayaratne < > thusit...@wso2.com> wrote: > >> Hi Clovis, >> >> I've checked on the error that you have mentioned. >> According to the hotswapagent logic >> *org.hotswap.agent.plugin.tomcat.TomcatPlugin.init() >> *method get called during WebappLoader.start lifecycle event. But at the >> time STARTING event get fired we haven't set the WebappClassloadingContext >> to the WebappClassloader. Therefore when it tries to do some checks in >> order to load the resources it throws the NPE. >> >> *org.wso2.carbon.webapp.mgt.loader.CarbonWebappLoader* >> >> @Override >> protected void startInternal() throws LifecycleException { >> >> ... >> >> super.startInternal(); > In this point STARTING even get fired and so >> *TomcatPlugin.init * method get called and it try to get the resource. That >> called getResources method and since we haven't still set the >> webappClassloadingContext it throws a NPE. >> >> >> //Adding the WebappClassloadingContext to the WebappClassloader >> >> ((CarbonWebappClassLoader) >> getClassLoader()).setWebappCC(webappClassloadingContext); // This is the >> point where we are setting the webappClassloadingContext >> >> Thanks >> Thusitha >> >> On Fri, Jan 22, 2016 at 4:54 PM, Clovis Wichoski <clo...@neoinix.com.br> >> wrote: >> >>> Hi Kishanthan, >>> >>> The redeploy all of a small system its ok, but for a big one, its a >>> problem, just a change in one class you must redeploy, loose sessions, >>> restart the system from scratch, to reach the point of test again, with the >>> ideas used by HotSwapAgent they act on reloading only that one class >>> changed, this way speeds the development time, these ideas are well >>> defended by JRebel tool, that HotSwapAgent tends to be a choice as an open >>> source solution. Please note that this feature is only needed for >>> development phase, in production, the scheduled task its ok. >>> >>> I mean time I tested with AS 5.3.0, JRebel and HotSwapAgent, JRebel >>> trial worked as expected, but HotSwapAgent not (see exception bellow [1]), >>> I will check these problems with HotSwapAgent devs, and try to discover why >>> dont works with WSO2 AS as with HotSwapAgent active none of webapps load, >>> all get that exception, as we see a NPE in class CarbonWebappClassLoader >>> maybe its the way they initialize the dependent class loaders. >>> >>> [1] Exception when HotSwapAgent is active: >>> [2016-01-22 09:14:18,467] ERROR {org.apache.catalina.core.ContainerBase} >>> - ContainerBase.addChild: start: >>> org.apache.catalina.LifecycleException: Failed to start component >>> [StandardEngine[Catalina].StandardHost[localhost].StandardContext[/example]] >>> at >>> org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:154) >>> at >>> org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:901) >>> at >>> org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:877) >>> at >>> org.apache.catalina.core.StandardHost.addChild(StandardHost.java:649) >>> at >>> org.wso2.carbon.tomcat.internal.CarbonTomcat.addWebApp(CarbonTomcat.java:344) >>> at >>> org.wso2.carbon.tomcat.internal.CarbonTomcat.addWebApp(CarbonTomcat.java:252) >>> at >>> org.wso2.carbon.webapp.mgt.TomcatGenericWebappsDeployer.handleWebappDeployment(TomcatGenericWebappsDeployer.java:314) >>> at >>> org.wso2.carbon.webapp.mgt.TomcatGenericWebappsDeployer.handleWarWebappDeployment(TomcatGenericWebappsDeployer.java:212) >>> at >>> org.wso2.carbon.webapp.mgt.TomcatGenericWebappsDeployer.handleHotDeployment(TomcatGenericWebappsDeployer.java:179) >>> at >>> org.wso2.carbon.webapp.mgt.TomcatGenericWebappsDeployer.deploy
Re: [Dev] [DEV][AS] Ideas and ways to integrate with Hot Swap Agent
) at org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:1087) at org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:5262) at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5550) at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150) at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1575) at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1565) at java.util.concurrent.FutureTask.run(FutureTask.java:262) 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.apache.catalina.LifecycleException: Failed to start component [WebappLoader[/example]] at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:154) at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5389) at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150) ... 95 more Caused by: java.lang.NullPointerException at org.wso2.carbon.webapp.mgt.loader.CarbonWebappClassLoader.getResources(CarbonWebappClassLoader.java:260) at org.hotswap.agent.config.PluginConfiguration.(PluginConfiguration.java:64) at org.hotswap.agent.config.PluginManager.initClassLoader(PluginManager.java:155) at org.hotswap.agent.config.PluginManager.initClassLoader(PluginManager.java:130) at org.hotswap.agent.config.PluginRegistry.initializePlugin(PluginRegistry.java:139) at org.hotswap.agent.util.PluginManagerInvoker.callInitializePlugin(PluginManagerInvoker.java:26) at org.hotswap.agent.plugin.tomcat.TomcatPlugin.init(TomcatPlugin.java:91) at org.apache.catalina.loader.WebappLoader.startInternal(WebappLoader.java:634) at org.wso2.carbon.webapp.mgt.loader.CarbonWebappLoader.startInternal(CarbonWebappLoader.java:55) at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150) ... 97 more TIA Clóvis 2016-01-22 5:32 GMT-02:00 Kishanthan Thangarajah <kishant...@wso2.com>: > Hi Clovis, > > On Wed, Jan 20, 2016 at 6:06 PM, Clovis Wichoski <clo...@neoinix.com.br> > wrote: > >> Hi, >> >> I'm researching for some ways to improve speed of development and >> redeploy on WSO2 Application Server, for example I have a scenario here >> where a simple change on a class, to test, get about 5 minutes. (as the >> test must pass by web interfaces in Jaggery, until reach the REST Api >> implemented in JAX-RS with Jersey and some JPA using EclipseLink. >> >> The Jaggery part is very easy, just rsync files, and all works fine. >> >> For the java part, in this research I found the HotSwapAgent - >> http://www.hotswapagent.org/ >> >> My first try was to follow HotSwapAgent quick start as is, and check if >> it works with WSO2 AS 5.2.1 out of the box, but dont worked, HotSwapAgent >> dont detect changes when I copy one updated .class file to WEB-INF/classes. >> >> Then my question is about, if anyone tried this before with WSO2, and if >> is a good way to invest time to implement a WSO2 plugin that work better >> with HotSwapAgent and what is the steps I must follow to implement this >> plugin or integrate this type of speed with redeploy with WSO2 AS? Maybe >> some problems with OSGi? >> > > This is a good thing to have with webap deployment. But we do have a > concept of hot update of webapps which is the default behaviour. If you > update the webapp, it will be redeployed by the Application Server where it > keeps track of the changes using the scheduled task which runs on every 15 > seconds interval. Since this redeploys the entire webapp, all the classes > loaded will be removed and will be loaded again. Do find any issues with > this behaviour? > > Thanks, > Kishanthan. > > >> ps: Note that the idea, is just change one class, rsync the binary .class >> file over respective WEB-INF/classes and got the results. >> >> Best regards >> >> Clóvis Wichoski >> CEO, Neoinix >> Mobile: +554588233181 >> >> ___ >> Dev mailing list >> Dev@wso2.org >> http://wso2.org/cgi-bin/mailman/listinfo/dev >> >> > > > -- > *Kishanthan Thangarajah* > Associate Technical Lead, > Platform Technologies Team, > WSO2, Inc. > lean.enterprise.middleware > > Mobile - +94773426635 > Blog - *http://kishanthan.wordpress.com <http://kishanthan.wordpress.com>* > Twitter - *http://twitter.com/kishanthan <http://twitter.com/kishanthan>* > ___ Dev mailing list Dev@wso2.org http://wso2.org/cgi-bin/mailman/listinfo/dev
[Dev] [DEV][AS] Ideas and ways to integrate with Hot Swap Agent
Hi, I'm researching for some ways to improve speed of development and redeploy on WSO2 Application Server, for example I have a scenario here where a simple change on a class, to test, get about 5 minutes. (as the test must pass by web interfaces in Jaggery, until reach the REST Api implemented in JAX-RS with Jersey and some JPA using EclipseLink. The Jaggery part is very easy, just rsync files, and all works fine. For the java part, in this research I found the HotSwapAgent - http://www.hotswapagent.org/ My first try was to follow HotSwapAgent quick start as is, and check if it works with WSO2 AS 5.2.1 out of the box, but dont worked, HotSwapAgent dont detect changes when I copy one updated .class file to WEB-INF/classes. Then my question is about, if anyone tried this before with WSO2, and if is a good way to invest time to implement a WSO2 plugin that work better with HotSwapAgent and what is the steps I must follow to implement this plugin or integrate this type of speed with redeploy with WSO2 AS? Maybe some problems with OSGi? ps: Note that the idea, is just change one class, rsync the binary .class file over respective WEB-INF/classes and got the results. Best regards Clóvis Wichoski CEO, Neoinix Mobile: +554588233181 ___ Dev mailing list Dev@wso2.org http://wso2.org/cgi-bin/mailman/listinfo/dev
Re: [Dev] [DSS] start point for extending, creating plugins, new functions and resolving BUGs
Hi Anjana, Just to leave a starting discussion about Data Services with RESTful from the user view, I like this pattern: http://www.eclipse.org/eclipselink/documentation/2.5/solutions/restful_jpa004.htm#CHDEGJIG, and the idea to Pass by Reference to reduce the size of payload. What do you think? Best regards Clóvis 2014-12-30 12:23 GMT-02:00 Anjana Fernando anj...@wso2.com: Hi Clovis, We are going to have some discussions and start on this early next year. At the moment, it is holidays for us, starting back work on 5'th Jan. So, stay tuned in the mailing lists in Jan, for the DSS 4.0 plans. I most probably will be starting with a PoC with a possible new architecture for DSS. And also, one of the items in the new design is to have proper extension points to support new query types, data sources etc.. Native JSON / XML input/output adapters will be implemented by default. Cheers, Anjana. On Tue, Dec 30, 2014 at 5:08 PM, Clovis Wichoski clo...@neoinix.com.br wrote: Hi Anjana, How I can follow the new developments for DSS 4.0, I'm think to implement a custom query using JPA to use JPQL and output JSON generated by staxon, I already started the research of how to implement this connector, but maybe I can test in version 4.0 early. I have this solution as a JAX-RS application, that act like an Data Service, but its better to see this running inside DSS. What do you think? Best Regards Clóvis 2014-12-08 0:36 GMT-02:00 Anjana Fernando anj...@wso2.com: Hi Clovis, Yeah, at the moment, the REST support in data services is not ideal, there are some technical limitations of Axis2 and how we handle the REST requests and JSON handling and so on. But we are going to fix these with our next major release of DSS, where we are going to re-architect how we implement RESTful behavior and how to handle different data formats, so after that, you will not have strict schema enforcements like _postcountry in the JSON payload. As for the NPE you're getting, can you please check on the latest 3.2.2 release, if you still get this error, since we have fixed several JSON related bug in this release. You can certainly check out the necessary source code from our SVN repository (the current version is on our SVN at the moment, future development is done on Github). For example, the latest data services core component can be found here [1]. You can simply check it out, and build using Maven, and it should download all the required dependencies from the online repository. And you can do your fix, and build the jar and simply replace that jar in the product's /repository/components/plugins directory, to test it out (remember to replace the one in plugins directory, not just copy the build jar to the directory). And of course, patches are always welcome, simply create a JIRA for the product and attach it, and you can also send a mail to the @dev list. And lastly, do stay tuned for plans for DSS 4.0, these haven't been finalized yet, we will start discussions on these soon. [1] https://svn.wso2.org/repos/wso2/carbon/platform/branches/turing/components/data-services/org.wso2.carbon.dataservices.core/4.2.4 Cheers, Anjana. On Fri, Dec 5, 2014 at 4:57 PM, Clovis Wichoski clo...@neoinix.com.br wrote: Hi, I'm researching for a way to improve some things in DSS, especially in the REST part, for example, I wish to implement, a better way to receive any JSON format, or do a better dynamic query construct without the SQL injection problems, or to use JPQL instead SQL, and to support REST that allow, dynamic filter, queries range and count of this filter, to support WADL generation, etc..., I know how to do these things using JAX-RS, but I like to create this inside DSS as appears to be a better place for this type of service as its especially focused in Data part of SOA. For example, today in DSS we must send this payload to create a New Country: { _postcountry:{ code:7, name:BRASIL, acronym:BRA, bankCode:1058, ddiCode:55 } } and this broke the RESTFul idea to use HTTP Methods, as some clients use today the payload just as: { code:7, name:BRASIL, acronym:BRA, bankCode:1058, ddiCode:55 } I know we can deal with this using mediation in ESB to inject the parts needed by DSS, but why dont support this directly in DSS to avoid unnecessary overheads? or for example, a more complex scenario, where I post a payload with all data, and create the other data if necessary. Other example, I wish to solve some bugs, like if we send this payload: { _postcountry:{ code:8, name:BOLIVIA, acronym:BOL, bankCode: null, ddiCode: null } } we got java.lang.NullPointerException at org.wso2.carbon.dataservices.core.description.query.SQLQuery.processNormalQuery(SQLQuery.java:863) at org.wso2
Re: [Dev] [DSS] start point for extending, creating plugins, new functions and resolving BUGs
Hi Anjana, How I can follow the new developments for DSS 4.0, I'm think to implement a custom query using JPA to use JPQL and output JSON generated by staxon, I already started the research of how to implement this connector, but maybe I can test in version 4.0 early. I have this solution as a JAX-RS application, that act like an Data Service, but its better to see this running inside DSS. What do you think? Best Regards Clóvis 2014-12-08 0:36 GMT-02:00 Anjana Fernando anj...@wso2.com: Hi Clovis, Yeah, at the moment, the REST support in data services is not ideal, there are some technical limitations of Axis2 and how we handle the REST requests and JSON handling and so on. But we are going to fix these with our next major release of DSS, where we are going to re-architect how we implement RESTful behavior and how to handle different data formats, so after that, you will not have strict schema enforcements like _postcountry in the JSON payload. As for the NPE you're getting, can you please check on the latest 3.2.2 release, if you still get this error, since we have fixed several JSON related bug in this release. You can certainly check out the necessary source code from our SVN repository (the current version is on our SVN at the moment, future development is done on Github). For example, the latest data services core component can be found here [1]. You can simply check it out, and build using Maven, and it should download all the required dependencies from the online repository. And you can do your fix, and build the jar and simply replace that jar in the product's /repository/components/plugins directory, to test it out (remember to replace the one in plugins directory, not just copy the build jar to the directory). And of course, patches are always welcome, simply create a JIRA for the product and attach it, and you can also send a mail to the @dev list. And lastly, do stay tuned for plans for DSS 4.0, these haven't been finalized yet, we will start discussions on these soon. [1] https://svn.wso2.org/repos/wso2/carbon/platform/branches/turing/components/data-services/org.wso2.carbon.dataservices.core/4.2.4 Cheers, Anjana. On Fri, Dec 5, 2014 at 4:57 PM, Clovis Wichoski clo...@neoinix.com.br wrote: Hi, I'm researching for a way to improve some things in DSS, especially in the REST part, for example, I wish to implement, a better way to receive any JSON format, or do a better dynamic query construct without the SQL injection problems, or to use JPQL instead SQL, and to support REST that allow, dynamic filter, queries range and count of this filter, to support WADL generation, etc..., I know how to do these things using JAX-RS, but I like to create this inside DSS as appears to be a better place for this type of service as its especially focused in Data part of SOA. For example, today in DSS we must send this payload to create a New Country: { _postcountry:{ code:7, name:BRASIL, acronym:BRA, bankCode:1058, ddiCode:55 } } and this broke the RESTFul idea to use HTTP Methods, as some clients use today the payload just as: { code:7, name:BRASIL, acronym:BRA, bankCode:1058, ddiCode:55 } I know we can deal with this using mediation in ESB to inject the parts needed by DSS, but why dont support this directly in DSS to avoid unnecessary overheads? or for example, a more complex scenario, where I post a payload with all data, and create the other data if necessary. Other example, I wish to solve some bugs, like if we send this payload: { _postcountry:{ code:8, name:BOLIVIA, acronym:BOL, bankCode: null, ddiCode: null } } we got java.lang.NullPointerException at org.wso2.carbon.dataservices.core.description.query.SQLQuery.processNormalQuery(SQLQuery.java:863) at org.wso2.carbon.dataservices.core.description.query.SQLQuery.runQuery(SQLQuery.java:2247) Then I wish to know what is the better point to starting implementing this inside DSS, can the DSS developers point me to a roadmap of how to achieve this, and cut the path of research just in code? About BUGs, whats is the better way to discover the right source of the running version, checkout, run tests, debug, try to solve, and after solved, send the patch? Thanks for any tip or help. Clóvis Wichoski NeoInix ___ Dev mailing list Dev@wso2.org http://wso2.org/cgi-bin/mailman/listinfo/dev -- *Anjana Fernando* Senior Technical Lead WSO2 Inc. | http://wso2.com lean . enterprise . middleware ___ Dev mailing list Dev@wso2.org http://wso2.org/cgi-bin/mailman/listinfo/dev
[Dev] [DSS] start point for extending, creating plugins, new functions and resolving BUGs
Hi, I'm researching for a way to improve some things in DSS, especially in the REST part, for example, I wish to implement, a better way to receive any JSON format, or do a better dynamic query construct without the SQL injection problems, or to use JPQL instead SQL, and to support REST that allow, dynamic filter, queries range and count of this filter, to support WADL generation, etc..., I know how to do these things using JAX-RS, but I like to create this inside DSS as appears to be a better place for this type of service as its especially focused in Data part of SOA. For example, today in DSS we must send this payload to create a New Country: { _postcountry:{ code:7, name:BRASIL, acronym:BRA, bankCode:1058, ddiCode:55 } } and this broke the RESTFul idea to use HTTP Methods, as some clients use today the payload just as: { code:7, name:BRASIL, acronym:BRA, bankCode:1058, ddiCode:55 } I know we can deal with this using mediation in ESB to inject the parts needed by DSS, but why dont support this directly in DSS to avoid unnecessary overheads? or for example, a more complex scenario, where I post a payload with all data, and create the other data if necessary. Other example, I wish to solve some bugs, like if we send this payload: { _postcountry:{ code:8, name:BOLIVIA, acronym:BOL, bankCode: null, ddiCode: null } } we got java.lang.NullPointerException at org.wso2.carbon.dataservices.core.description.query.SQLQuery.processNormalQuery(SQLQuery.java:863) at org.wso2.carbon.dataservices.core.description.query.SQLQuery.runQuery(SQLQuery.java:2247) Then I wish to know what is the better point to starting implementing this inside DSS, can the DSS developers point me to a roadmap of how to achieve this, and cut the path of research just in code? About BUGs, whats is the better way to discover the right source of the running version, checkout, run tests, debug, try to solve, and after solved, send the patch? Thanks for any tip or help. Clóvis Wichoski NeoInix ___ Dev mailing list Dev@wso2.org http://wso2.org/cgi-bin/mailman/listinfo/dev