Hi Sabra, Please find my answers inline.
On Thu, Jun 18, 2015 at 7:27 AM, Sabra Ossen <[email protected]> wrote: > Hi Dimuthu, > > I understand the requirements, but have a few questions regarding the > polling and the server. > > The appmgt jaggery app is hosted in the AS in cloud right? > The NodeJS exercise was suggested for you to learn and get familiar with socket io. But the real requirement is for appmgt jaggery app. It is hosted in a AS-like server, which is AF server. If you can disable the login in AF, you can do the test in AF server as well. But if you make it work in AS then we can reuse it in AF too. Why does the FE poll the BE? Is it to inform the user the progress of the > application creation ( during this time the user does not perform any > action)? Is this app creation time the only time the FE polls the BE? > Not just for app creation. If you login to App Cloud it updates with all events, build, deploy, user addition, resource addition and etc ... Therefore we need to poll it. thanks, dimuthu > > Thanks in advance for the clarifications. > > Regards. > Sabra. > > > On Thursday, June 18, 2015, Dimuthu Leelarathne <[email protected]> wrote: > >> Hi Sabra, >> >> Here is how socket.io can help in App Factory case. I have logged into >> Cloud and gone into this page - >> https://apps.cloud.wso2.com/appmgt/site/pages/index.jag. I am attaching >> a screenshot. >> >> Here the FE polls the BE every second to update the wall. But actually I >> am not doing any action. Since we don't have socket.io we are using the >> only other option we have - polling. >> >> We want to use socket.io instead of polling. Please let me know if you >> don't understand the requirement. >> >> thanks, >> dimuthu >> >> >> On Wed, Jun 17, 2015 at 10:07 PM, Sabra Ossen <[email protected]> wrote: >> >>> Hi Dimuthu, >>> >>> Yes. I will research on integrating the socket.io code to App Server, >>> if it becomes successful integrating the socket.io code to jaggery >>> would be the next step. I will update you on the progress. >>> >>> Thanks. >>> Sabra. >>> >>> On Wednesday, June 17, 2015, Dimuthu Leelarathne <[email protected]> >>> wrote: >>> >>>> Hi Sabra, >>>> >>>> We definitely can use this if we can check whether same principals can >>>> be applied to a Jaggery app in App server. Then we can use it for the wall >>>> improvements. >>>> >>>> thanks, >>>> dimuthu >>>> >>>> On Wed, Jun 17, 2015 at 6:46 PM, Sabra Ossen <[email protected]> >>>> wrote: >>>> >>>>> Hi Dimuthu, >>>>> >>>>> I believe so. By following the blog I was able to use Nginx and >>>>> socket.io in load balancing a real time chat app which was hosted >>>>> using node js, whereas the same principle is applicable if the jaggery >>>>> files ( content we serve from the server ) as well as the server contains >>>>> socket.io code integrated. >>>>> >>>>> Thanks. >>>>> Sabra >>>>> >>>>> >>>>> On Wednesday, June 17, 2015, Dimuthu Leelarathne <[email protected]> >>>>> wrote: >>>>> >>>>>> Hi Sabra, >>>>>> >>>>>> Could we setup Jaggery in the same way? >>>>>> >>>>>> thanks, >>>>>> dimuthu >>>>>> >>>>>> On Tue, Jun 16, 2015 at 1:03 PM, Sabra Ossen <[email protected]> >>>>>> wrote: >>>>>> >>>>>>> Hi All, >>>>>>> >>>>>>> I was able to resolve the issue. The problem was that I was >>>>>>> accessing the socket.io chat app that I created, from the file >>>>>>> system. The correct way to access the chat app was by going to >>>>>>> localhost:3000/ ( host and port, where the server can be accessed >>>>>>> indicated >>>>>>> by the code in index.js) in the web browser and there was no need to >>>>>>> download the socket.io and jquery js files. >>>>>>> >>>>>>> Thanks Tharik for helping me get a clear understanding on CORS. >>>>>>> >>>>>>> Regards. >>>>>>> >>>>>>> On Sun, Jun 14, 2015 at 10:33 PM, Sabra Ossen <[email protected]> >>>>>>> wrote: >>>>>>> >>>>>>>> Hi Tharik, >>>>>>>> >>>>>>>> I searched up on CORS (Cross Origin Resource Sharing) and based on >>>>>>>> my understanding the problem is that I am trying to access a resource >>>>>>>> on >>>>>>>> another domain from my domain. Therefore a simple solution would be to >>>>>>>> download both the *socket.io-1.2.0.js and jquery-1.11.1.js*. >>>>>>>> >>>>>>>> I included them in the directory containing the html file and >>>>>>>> changed the script as follows. >>>>>>>> >>>>>>>> *.....* >>>>>>>> >>>>>>>> *<script src="socket.io-1.2.0.js"></script><script >>>>>>>> src="jquery-1.11.1.js"></script>* >>>>>>>> >>>>>>>> >>>>>>>> *.....* >>>>>>>> But the error still persists. >>>>>>>> >>>>>>>> Regards. >>>>>>>> >>>>>>>> On Sun, Jun 14, 2015 at 8:14 AM, Tharik Kanaka <[email protected]> >>>>>>>> wrote: >>>>>>>> >>>>>>>>> Hi Sabra, >>>>>>>>> >>>>>>>>> This happens because of same origin policy where that specific >>>>>>>>> resource hosted at some other domain and javascript is running on >>>>>>>>> local >>>>>>>>> machine. To resolve that usually CORS headers needs to be added to the >>>>>>>>> response from the server side. >>>>>>>>> >>>>>>>>> In your case did you try by moving *socket.io-1.2.0.js* file >>>>>>>>> (where you refer CDN hosted file in the code) to your local machine >>>>>>>>> and >>>>>>>>> refer it? >>>>>>>>> >>>>>>>>> Regards, >>>>>>>>> >>>>>>>>> On Sat, Jun 13, 2015 at 9:36 PM, Sabra Ossen <[email protected]> >>>>>>>>> wrote: >>>>>>>>> >>>>>>>>>> Hi All, >>>>>>>>>> >>>>>>>>>> I am following the tutorial mentioned in [1] and trying to create >>>>>>>>>> a chat application using socket.io and node js. >>>>>>>>>> >>>>>>>>>> I have installed express and socket.io on my machine. The >>>>>>>>>> versions are specified in the package.json below. >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> *{ "name": "socket-chat-example", "version": "0.0.1", >>>>>>>>>> "description": "my first socket.io <http://socket.io> app", >>>>>>>>>> "dependencies": { "express": "~4.10.2", "socket.io >>>>>>>>>> <http://socket.io>": "~1.2.0" }}* >>>>>>>>>> >>>>>>>>>> The node server code is specified below. >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> *var app = require('express')();var http = >>>>>>>>>> require('http').Server(app);var io = require('socket.io >>>>>>>>>> <http://socket.io>')(http);app.get('/', function(req, res){ >>>>>>>>>> res.sendFile(__dirname + '/index.html');});io.on('connection', >>>>>>>>>> function(socket){ socket.on('chat message', function(msg){ >>>>>>>>>> io.emit('chat message', msg); });});http.listen(3000, function(){ >>>>>>>>>> console.log('listening on *:3000');});* >>>>>>>>>> >>>>>>>>>> The content of the html file being accessed is specified below. >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> *<!doctype html><html> <head> <title>Socket.IO >>>>>>>>>> chat</title> <style> * { margin: 0; padding: 0; box-sizing: >>>>>>>>>> border-box; } body { font: 13px Helvetica, Arial; } form { >>>>>>>>>> background: #000; padding: 3px; position: fixed; bottom: 0; width: >>>>>>>>>> 100%; >>>>>>>>>> } form input { border: 0; padding: 10px; width: 90%; >>>>>>>>>> margin-right: >>>>>>>>>> .5%; } form button { width: 9%; background: rgb(130, 224, 255); >>>>>>>>>> border: none; padding: 10px; } #messages { list-style-type: >>>>>>>>>> none; >>>>>>>>>> margin: 0; padding: 0; } #messages li { padding: 5px 10px; } >>>>>>>>>> #messages li:nth-child(odd) { background: #eee; } </style> >>>>>>>>>> </head> >>>>>>>>>> <body> <ul id="messages"></ul> <form action=""> <input >>>>>>>>>> id="m" >>>>>>>>>> autocomplete="off" /><button>Send</button> </form> <script >>>>>>>>>> src="https://cdn.socket.io/socket.io-1.2.0.js >>>>>>>>>> <https://cdn.socket.io/socket.io-1.2.0.js>"></script> <script >>>>>>>>>> src="http://code.jquery.com/jquery-1.11.1.js >>>>>>>>>> <http://code.jquery.com/jquery-1.11.1.js>"></script> <script> >>>>>>>>>> var >>>>>>>>>> socket = io(); $('form').submit(function(){ >>>>>>>>>> socket.emit('chat >>>>>>>>>> message', $('#m').val()); $('#m').val(''); return >>>>>>>>>> false; >>>>>>>>>> }); socket.on('chat message', function(msg){ >>>>>>>>>> $('#messages').append($('<li>').text(msg)); }); </script> >>>>>>>>>> </body></html>* >>>>>>>>>> >>>>>>>>>> The code can also be found in [2]. >>>>>>>>>> >>>>>>>>>> I am getting the following error in the firefox console with the >>>>>>>>>> app failing. >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> *Cross-Origin Request Blocked: The Same Origin Policy disallows >>>>>>>>>> reading the remote resource at >>>>>>>>>> http://file/socket.io/?EIO=3&transport=polling&t=1434211017174-2 >>>>>>>>>> <http://file/socket.io/?EIO=3&transport=polling&t=1434211017174-2>. >>>>>>>>>> (Reason: CORS request failed).GET XHR http://file/socket.io/ >>>>>>>>>> <http://file/socket.io/>* >>>>>>>>>> >>>>>>>>>> I have exhaustively searched for a solution for the above issue >>>>>>>>>> but was unsuccessful. I highly appreciate any input on the above >>>>>>>>>> problem. >>>>>>>>>> Thanks in advance. >>>>>>>>>> >>>>>>>>>> [1] http://socket.io/get-started/chat/ >>>>>>>>>> [2] https://github.com/rauchg/chat-example >>>>>>>>>> >>>>>>>>>> Regards. >>>>>>>>>> -- >>>>>>>>>> Sabra Ossen <http://lk.linkedin.com/in/sabraossen> >>>>>>>>>> Undergraduate | Department of Computer Science and Engineering >>>>>>>>>> University of Moratuwa >>>>>>>>>> Sri Lanka >>>>>>>>>> >>>>>>>>>> _______________________________________________ >>>>>>>>>> Dev mailing list >>>>>>>>>> [email protected] >>>>>>>>>> http://wso2.org/cgi-bin/mailman/listinfo/dev >>>>>>>>>> >>>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> -- >>>>>>>>> >>>>>>>>> *Tharik Kanaka* >>>>>>>>> >>>>>>>>> WSO2, Inc |#20, Palm Grove, Colombo 03, Sri Lanka >>>>>>>>> >>>>>>>>> Email: [email protected] | Web: www.wso2.com >>>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> -- >>>>>>>> Sabra Ossen <http://lk.linkedin.com/in/sabraossen> >>>>>>>> Undergraduate | Department of Computer Science and Engineering >>>>>>>> University of Moratuwa >>>>>>>> Sri Lanka >>>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> -- >>>>>>> Sabra Ossen <http://lk.linkedin.com/in/sabraossen> >>>>>>> Undergraduate | Department of Computer Science and Engineering >>>>>>> University of Moratuwa >>>>>>> Sri Lanka >>>>>>> >>>>>> >>>>>> >>>>>> >>>>>> -- >>>>>> Dimuthu Leelarathne >>>>>> Director & Product Lead of App Factory >>>>>> >>>>>> WSO2, Inc. (http://wso2.com) >>>>>> email: [email protected] >>>>>> Mobile : 0773661935 >>>>>> >>>>>> Lean . Enterprise . Middleware >>>>>> >>>>> >>>>> >>>>> -- >>>>> Sabra Ossen <http://lk.linkedin.com/in/sabraossen> >>>>> Undergraduate | Department of Computer Science and Engineering >>>>> University of Moratuwa >>>>> Sri Lanka >>>>> >>>>> >>>> >>>> >>>> -- >>>> Dimuthu Leelarathne >>>> Director & Product Lead of App Factory >>>> >>>> WSO2, Inc. (http://wso2.com) >>>> email: [email protected] >>>> Mobile : 0773661935 >>>> >>>> Lean . Enterprise . Middleware >>>> >>> >>> >>> -- >>> Sabra Ossen <http://lk.linkedin.com/in/sabraossen> >>> Undergraduate | Department of Computer Science and Engineering >>> University of Moratuwa >>> Sri Lanka >>> >>> >> >> >> -- >> Dimuthu Leelarathne >> Director & Product Lead of App Factory >> >> WSO2, Inc. (http://wso2.com) >> email: [email protected] >> Mobile : 0773661935 >> >> Lean . Enterprise . Middleware >> > > > -- > Sabra Ossen <http://lk.linkedin.com/in/sabraossen> > Undergraduate | Department of Computer Science and Engineering > University of Moratuwa > Sri Lanka > > -- Dimuthu Leelarathne Director & Product Lead of App Factory WSO2, Inc. (http://wso2.com) email: [email protected] Mobile : 0773661935 Lean . Enterprise . Middleware
_______________________________________________ Dev mailing list [email protected] http://wso2.org/cgi-bin/mailman/listinfo/dev
