Hi, Seems like there is some issue with setting up the request level variables when you reach from Web Socket path, looks like a bug. But I am trying to understand why you are trying to return HTML from a Web Socket. Shouldn't you be returning JSON ?
On Fri, May 20, 2016 at 3:27 AM, Danushka Fernando <danush...@wso2.com> wrote: > This only works with plain jaggery. Cant use inside any framework. Require > function even doesn't work. > > Thanks & Regards > Danushka Fernando > Senior Software Engineer > WSO2 inc. http://wso2.com/ > Mobile : +94716332729 > > On Fri, May 20, 2016 at 11:46 AM, Danushka Fernando <danush...@wso2.com> > wrote: > >> My log file rolled and tail got expired thats why I saw no logs. Actually >> problem is my jaggery call to modules. I am getting exception below. >> >> var logMap = mod.getFormattedRuntimeLogs(applicationKey, selectedRevision, >> ""); >> >> Is there a way to ged rid of this? >> >> TID: [0] [AS] [2016-05-20 11:42:09,784] ERROR >> {org.apache.coyote.AbstractProtocol$AbstractConnectionHandler} - Error >> reading request, ignored {org.apache.co >> yote.AbstractProtocol$AbstractConnectionHandler} >> org.mozilla.javascript.WrappedException: Wrapped >> java.util.NoSuchElementException (/appmgt/jagg/jagg.jag#377) >> 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.callName(OptRuntime.java:63) >> at >> org.jaggeryjs.rhino.appmgt.jagg.c0._c_anonymous_37(/appmgt/jagg/jagg.jag:377) >> >> at org.jaggeryjs.rhino.appmgt.jagg.c0.call(/appmgt/jagg/jagg.jag) >> at >> org.mozilla.javascript.optimizer.OptRuntime.call1(OptRuntime.java:32) >> at >> org.jaggeryjs.rhino.appmgt.modules.runtimeLogs.c0._c_anonymous_2(/appmgt/modules/runtimeLogs/module.jag:26) >> >> at >> org.jaggeryjs.rhino.appmgt.modules.runtimeLogs.c0.call(/appmgt/modules/runtimeLogs/module.jag) >> >> at >> org.mozilla.javascript.optimizer.OptRuntime.callN(OptRuntime.java:52) >> at >> org.jaggeryjs.rhino.appmgt.site.blocks.runtimeLogs.ws.c0._c_anonymous_1(/appmgt/site/blocks/runtimeLogs/ws/runtimeLogs.jag:37) >> >> at >> org.jaggeryjs.rhino.appmgt.site.blocks.runtimeLogs.ws.c0.call(/appmgt/site/blocks/runtimeLogs/ws/runtimeLogs.jag) >> >> at >> org.mozilla.javascript.ContextFactory.doTopCall(ContextFactory.java:394) >> at >> org.mozilla.javascript.ScriptRuntime.doTopCall(ScriptRuntime.java:3091) >> at >> org.jaggeryjs.rhino.appmgt.site.blocks.runtimeLogs.ws.c0.call(/appmgt/site/blocks/runtimeLogs/ws/runtimeLogs.jag) >> >> at >> org.jaggeryjs.hostobjects.web.WebSocketHostObject.processText(WebSocketHostObject.java:139) >> >> at >> org.jaggeryjs.jaggery.core.websocket.WSMessageInBound.onTextMessage(WSMessageInBound.java:36) >> >> at >> org.apache.catalina.websocket.MessageInbound.onTextData(MessageInbound.java:74) >> >> at >> org.apache.catalina.websocket.StreamInbound.doOnTextData(StreamInbound.java:186) >> >> at >> org.apache.catalina.websocket.StreamInbound.onData(StreamInbound.java:134) >> at >> org.apache.coyote.http11.upgrade.UpgradeProcessor.upgradeDispatch(UpgradeProcessor.java:83) >> >> at >> org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:587) >> >> 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:744) >> Caused by: java.util.NoSuchElementException >> at java.util.Vector.lastElement(Vector.java:499) >> at >> org.jaggeryjs.jaggery.core.manager.WebAppManager.executeScript(WebAppManager.java:226) >> >> at >> org.jaggeryjs.jaggery.core.manager.WebAppManager.require(WebAppManager.java:318) >> >> at sun.reflect.GeneratedMethodAccessor44.invoke(Unknown Source) >> 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) >> ... 24 more >> >> Thanks & Regards >> Danushka Fernando >> Senior Software Engineer >> WSO2 inc. http://wso2.com/ >> Mobile : +94716332729 >> >> On Fri, May 20, 2016 at 11:18 AM, Danushka Fernando <danush...@wso2.com> >> wrote: >> >>> This is my server side looks like >>> >>> >>> <% >>> /* >>> * Copyright (c) 2016, WSO2 Inc. (http://www.wso2.org) All Rights Reserved. >>> * >>> * WSO2 Inc. licenses this file to you under the Apache License, >>> * Version 2.0 (the "License"); you may not use this file except >>> * in compliance with the License. >>> * You may obtain a copy of the License at >>> * >>> * http://www.apache.org/licenses/LICENSE-2.0 >>> * >>> * Unless required by applicable law or agreed to in writing, >>> * software distributed under the License is distributed on an >>> * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY >>> * KIND, either express or implied. See the License for the >>> * specific language governing permissions and limitations >>> * under the License. >>> */ >>> >>> include("/jagg/jagg.jag"); >>> include("/jagg/constants.jag"); >>> >>> var mod, obj, >>> log = new Log(), >>> action = request.getParameter("action"), >>> site = require("/site/conf/site.json"); >>> >>> var applicationKey = request.getParameter("applicationKey"); >>> var selectedRevision = request.getParameter("selectedRevision"); >>> var mod = jagg.module("runtimeLogs"); >>> webSocket.onbinary = function (data) { >>> log.info('Client Sent : ' + data); >>> var ws = this; >>> var logMap = mod.getFormattedRuntimeLogs(applicationKey, >>> selectedRevision, ""); >>> ws.send(logMap); >>> }; >>> webSocket.ontext = function (data) { >>> log.info('Client Sent : ' + data); >>> var ws = this; >>> var logMap = mod.getFormattedRuntimeLogs(applicationKey, >>> selectedRevision, ""); >>> ws.send(logMap); >>> }; >>> %> >>> >>> And this is my client side >>> >>> ws = new >>> WebSocket("wss://localhost:9443/appmgt/site/blocks/runtimeLogs/ws/runtimeLogs.jag?action=getSnapshotLogs&applicationKey=" >>> + applicationKey + "&selectedRevision=" + >>> selectedRevision); >>> >>> //event handler for the message event in the case of text frames >>> ws.onmessage = function(event) { >>> //some work >>> }; >>> >>> setTimeout(function() {ws.send(""); console.log("dddd");}, 60000); >>> >>> >>> I can see the console log for send but no logs in server side. Whats I >>> am doing wrong here? >>> >>> Thanks & Regards >>> Danushka Fernando >>> Senior Software Engineer >>> WSO2 inc. http://wso2.com/ >>> Mobile : +94716332729 >>> >>> On Fri, May 20, 2016 at 9:59 AM, Manjula Rathnayake <manju...@wso2.com> >>> wrote: >>> >>>> Hi all, >>>> >>>> Does web sockets work through nginx, haproxy like load balancers? >>>> >>>> thank you. >>>> >>>> On Fri, May 20, 2016 at 9:37 AM, Sinthuja Ragendran <sinth...@wso2.com> >>>> wrote: >>>> >>>>> Hi Dhanushka, >>>>> >>>>> You don't need to do any special changes, just include the server side >>>>> code as shown in the sample [1] in a jag file, and mention that jag URL in >>>>> the client side to connect via web socket. As per the example, the jaggery >>>>> app for ws server side should be in below format. >>>>> >>>>> - sample >>>>> - ws >>>>> - server.jag >>>>> >>>>> Thanks, >>>>> Sinthuja. >>>>> >>>>> >>>>> On Fri, May 20, 2016 at 9:26 AM, Danushka Fernando <danush...@wso2.com >>>>> > wrote: >>>>> >>>>>> Hi >>>>>> I tried to follow [1] to use some web sockets. But server url has to >>>>>> be in either ws or wss protocols. How we can expose a jaggery app in >>>>>> these >>>>>> protocols? >>>>>> >>>>>> [1] http://jaggeryjs.org/documentation.jag?api=webSocket >>>>>> >>>>>> Thanks & Regards >>>>>> Danushka Fernando >>>>>> Senior Software Engineer >>>>>> WSO2 inc. http://wso2.com/ >>>>>> Mobile : +94716332729 >>>>>> >>>>>> _______________________________________________ >>>>>> Dev mailing list >>>>>> Dev@wso2.org >>>>>> http://wso2.org/cgi-bin/mailman/listinfo/dev >>>>>> >>>>>> >>>>> >>>>> >>>>> -- >>>>> *Sinthuja Rajendran* >>>>> Associate Technical Lead >>>>> WSO2, Inc.:http://wso2.com >>>>> >>>>> Blog: http://sinthu-rajan.blogspot.com/ >>>>> Mobile: +94774273955 >>>>> >>>>> >>>>> >>>> >>>> >>>> -- >>>> Manjula Rathnayaka >>>> Associate Technical Lead >>>> WSO2, Inc. >>>> Mobile:+94 77 743 1987 >>>> >>> >>> >> > -- With regards, *Manu*ranga Perera. phone : 071 7 70 20 50 mail : m...@wso2.com
_______________________________________________ Dev mailing list Dev@wso2.org http://wso2.org/cgi-bin/mailman/listinfo/dev