Hi Seb, I think there is an issue with the way Prototyp library construct JSON Vs how PraviewWeb uses it??. As for some reason when I call JSON.stringify() in the paraview.js::executeRemote() method, it returns json object with double quotes around it. It is a valid JSON structure but paraviewInstance.jsonRpcClient.VisualizationsManager does not support it.
I tried using browser's native toJSON mathod and it worked. for that in paraview.js i added : if(window.Prototype) { delete Array.prototype.toJSON; } before code : var reply_string = paraviewInstance.jsonRpcClient.VisualizationsManager.invoke( paraviewInstance.sessionId, JSON.stringify(JsonRpcObjectBuilder(methodName, methodArguments))); in function executeRemote( paraviewInstance, methodName, methodArguments ) {.............. and it worked. got clue from here : http://stackoverflow.com/questions/710586/json-stringify-bizarreness Ideally \"params\":\"[]\" should work as it is Valid JSON. where can i find code for VisualizationsManager.invoke() method so that i can see how is it using input parameters ? Thanks Sumit Purohit ________________________________________ From: Sebastien Jourdain [sebastien.jourd...@kitware.com] Sent: Monday, October 29, 2012 6:27 AM To: Purohit, Sumit Cc: paraview@paraview.org Subject: Re: [Paraview] No rendering in ParaviewWeb with javascript Hi Sumit, the bug seems to be related to the content of that method /* * Helper method used to simplify the construction of JsonRPC objects */ function JsonRpcObjectBuilder( methodName, methodArguments ) { var args = []; if(typeof(methodArguments) != "undefined") { if(typeof(methodArguments) != "object") { args = [ methodArguments ]; } else { args = methodArguments; } } return { id : 1, method : methodName, params : args }; } inside the file WebServer/PWService/web/js/dev/paraview.js which you can point to in your testing process instead of its parent compressed one ParaViewWeb.js. Although, don't forget to add /dev/json2.js and /dev/jsonrpc.js too when you are using the development version of the js. Once you figured out, what need to be done to prevent those extra " around [] then you can either send me the full paraview.js or just the diff so I can patch and update the ParaViewWeb repository. Thanks for your help, Seb On Fri, Oct 26, 2012 at 2:05 PM, Purohit, Sumit <sumit.puro...@pnnl.gov> wrote: > Thank Seb for the reply, > > 1. Yes, i am using exactly the same javascript in both the contexts. > 2. I tried your suggestion of using iframe and I AM ABLE TO EMBEDDED the > functional html page into my non-functional page and visualize it. > > Can you suggest me where/what to make a patch in ParaViewWeb javascript as > using iframe is not a "solution" for me. I want to dynamically create this > visualization. > > > Thanks > Sumit > > ________________________________________ > From: Sebastien Jourdain [sebastien.jourd...@kitware.com] > Sent: Friday, October 26, 2012 3:48 AM > To: Purohit, Sumit > Cc: paraview@paraview.org > Subject: Re: [Paraview] No rendering in ParaviewWeb with javascript > > Hum... > > I guess it is exactly the same JavaScript code that you execute in both > context. > To me it seems to be a bug in the way the ParaViewWeb javascript is behaving. > > But in the mean time, do you try to embed the 3D renderer in an iFrame > or do you properly embed it into the current HTML document ? Because, > if you were planing to use some iFrame, the ParaViewWeb javascript > part could be done in that iFrame page and that might work as is... > (At least as a first step) > > A third solution, could also be to patch ParaViewWeb javascript so it > could properly work in your context or depending on how complex your > web application is going to be, create an ad-hoc JavaScript library > that will make only the call you need and the way you want. > > Hope my comments helped you, > > Thanks, > > Seb > > > On Thu, Oct 25, 2012 at 4:48 PM, Purohit, Sumit <sumit.puro...@pnnl.gov> > wrote: >> Thanks Seb, >> >> I realized that i was running my html page under Apache but it was not >> properly configured to talk to paraviweWeb which is under. tomcat. I Fixed >> that and i worked fine. Thanks >> >> My goal is to add this code under a Mediawiki Page and run it on a button >> click BUT when i do that i get "uncaught exception: get_module() takes no >> arguments (2 given). Paraview.js line 231" >> >> I see one deference in the way internal paraviewWeb POST calls are made. >> >> 1. When running outside Mediawiki (This Works) : >> >> {id:3,method:"VisualizationsManager.invoke",params:["87095ed9081c5fc32c76f43105d74c32-28", >> "{\"id\":1,\"method\":\"get_module\",\"params\":[]}"]} >> >> 2. Within MW ( This gives above exception) >> {id:3,method:"VisualizationsManager.invoke",params:["87095ed9081c5fc32c76f43105d74c32-27", >> "{\"id\":1,\"method\":\"get_module\",\"params\":\"[]\"}"]} >> >> the difference is how empty param are specified in both the POST requests. >> [] Vs. \"[]\" >> >> Both are made internally by ParaViewWeb, so do you think i can control this >> in my javascript ( actually jQuery) code ?? OR on ParaviewWeb code/config >> side ?? >> >> >> Thanks >> Sumit Purohit >> >> >> >> ________________________________________ >> From: Sebastien Jourdain [sebastien.jourd...@kitware.com] >> Sent: Wednesday, October 24, 2012 4:33 AM >> To: Purohit, Sumit >> Cc: paraview@paraview.org >> Subject: Re: [Paraview] No rendering in ParaviewWeb with javascript >> >> Try to move the script section between </table> and </body> . Moreover does >> the other applications let you properly see 3d content? >> >> Seb >> >> On Oct 23, 2012, at 4:08 PM, "Purohit, Sumit" <sumit.puro...@pnnl.gov> wrote: >> >>> Hi Everyone, >>> >>> I am a newbie (and this is a cliche ) in paraview and trying to run >>> ParaViewWeb using javascript rendering. >>> I installed the Paraview Web and i can access various webapps Ex : >>> >>> http://localhost:8180/PWApp/index.jsp >>> http://localhost:8180/PWService/ >>> >>> [ i installed ParaviewWeb on port 8180] >>> >>> As a next step i am tried to use its javascript rendering but could not see >>> any thing on the page. >>> JavaScript console shows "Error: Connection failed" in line 116 >>> ParaviewWeb.js >>> >>> Here is my complete HTML >>> <html> >>> <head> >>> <script type="text/javascript" >>> src="http://localhost:8180/PWService/js/ParaViewWeb.js"></script> >>> </head> >>> <body> >>> <table width='100%'> >>> <tr> >>> <td>Viewport title</td> >>> </tr> >>> <tr> >>> <td id='renderer-container-id'> >>> <!-- The renderer will be inserted here --> >>> >>> <script type="text/javascript"> >>> // Set the web service base URL >>> var serverUrl = "http://localhost:8180/PWService"; >>> >>> // >>> // Create a paraview proxy >>> // >>> var paraview = new Paraview(serverUrl); >>> paraview.createSession("Session name", "Session comment", >>> "default"); >>> >>> var activeView = paraview.CreateIfNeededRenderView(); >>> >>> // Create and bind renderer >>> var renderer = new JavaScriptRenderer("rendererName", serverUrl); >>> renderer.init(paraview.sessionId, activeView.__selfid__); >>> renderer.setSize('200','200'); >>> renderer.bindToElementId("renderer-container-id"); >>> renderer.start(); >>> </script> >>> </td> >>> </tr> >>> </table> >>> </body> >>> </html> >>> >>> Thank you for the help. >>> Sumit Purohit >>> _______________________________________________ >>> Powered by www.kitware.com >>> >>> Visit other Kitware open-source projects at >>> http://www.kitware.com/opensource/opensource.html >>> >>> Please keep messages on-topic and check the ParaView Wiki at: >>> http://paraview.org/Wiki/ParaView >>> >>> Follow this link to subscribe/unsubscribe: >>> http://www.paraview.org/mailman/listinfo/paraview _______________________________________________ Powered by www.kitware.com Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html Please keep messages on-topic and check the ParaView Wiki at: http://paraview.org/Wiki/ParaView Follow this link to subscribe/unsubscribe: http://www.paraview.org/mailman/listinfo/paraview