Thanks a ton John, I had almost given up. Yeah, First up i create the iframe url, which is like
https://shindig.company.com//app/shindig/gadgets/ifr?container=smx-container&v=d84f1182fc1ef128c4c16095d561c3&lang=en&country=US&view=default&up_appServiceCode=MY.CUSTOM.REPORT&up_chartTitle=My+Custom+Chart+For+Performance&up_reportSWFURL=https%3A%2F%2Flocalhost%3A8443%2Fapp%2Fcore%2Fmain%2Fswf%2Freporting.swf&up_reportingXmlStr=%3CreportPreferences%3E+%3Csettings%3E+%3CchartID%3Erankedbubblechart%3C%2FchartID%3E+%3C%2Fsettings%3E+%3Cquery%3E+%3CappServiceCode%3EMY.CUSTOM.REPORT%3C%2FappServiceCode%3E+%3CfilterInstanceID%3EiNstance_fRom_tEmplate_11383%3C%2FfilterInstanceID%3E+%3Ctemplate%3Eacct-report-template.xml%3C%2Ftemplate%3E+%3CtimeHorizon%3E+%3CperiodTypeCode%3EHALFYEAR%3C%2FperiodTypeCode%3E+%3CstartPeriod%2F%3E+%3CendPeriod%2F%3E+%3C%2FtimeHorizon%3E+%3C%2Fquery%3E%3C%2FreportPreferences%3E&url=https%3A%2F%2Fi-0029%3A8443%2Fapp%2Fgadget%2Fcom.company.gadget.ReportingGadget%2Fcom.company.gadget.client.ReportingGadget.gadget.xml&libs=opensocial-0.8&parent=https%3A%2F%2Fi-0029%3A8443%2Fapp%2Fcore%2Fmain%2F&nocache=0#rpctoken=0.2649638729165247<https://i-0029:8443/https://i-0029:8443//app/shindig/gadgets/ifr?container=smx-container&v=d84f1182fc1ef128c4c16095d561c3&lang=en&country=US&view=default&up_appServiceCode=MY.CUSTOM.REPORT&up_chartTitle=My+Custom+Chart+For+Performance&up_reportSWFURL=https%3A%2F%2Flocalhost%3A8443%2Fapp%2Fcore%2Fmain%2Fswf%2Freporting.swf&up_reportingXmlStr=%3CreportPreferences%3E+%3Csettings%3E+%3CchartID%3Erankedbubblechart%3C%2FchartID%3E+%3C%2Fsettings%3E+%3Cquery%3E+%3CappServiceCode%3EMY.CUSTOM.REPORT%3C%2FappServiceCode%3E+%3CfilterInstanceID%3EiNstance_fRom_tEmplate_11383%3C%2FfilterInstanceID%3E+%3Ctemplate%3Eacct-report-template.xml%3C%2Ftemplate%3E+%3CtimeHorizon%3E+%3CperiodTypeCode%3EHALFYEAR%3C%2FperiodTypeCode%3E+%3CstartPeriod%2F%3E+%3CendPeriod%2F%3E+%3C%2FtimeHorizon%3E+%3C%2Fquery%3E%3C%2FreportPreferences%3E&url=https%3A%2F%2Fi-0029%3A8443%2Fapp%2Fgadget%2Fcom.company.gadget.ReportingGadget%2Fcom.company.gadget.client.ReportingGadget.gadget.xml&libs=opensocial-0.8&parent=https%3A%2F%2Fi-0029%3A8443%2Fapp%2Fcore%2Fmain%2F&nocache=0#rpctoken=0.2649638729165247> then i set this as innerhtml to my gadget div and i follow it up with gadgets.rpc.setRelayUrl(iframeId, iframeUrl, false); gadgets.rpc.setAuthToken(iframeId, rpcToken); The browser versions having trouble are ie6 and ie7 I tried gadgets.rpc.setupReceiver(gadgetIFrameId); but it seems the method is not available in my version of Shindig - 1.1-Beta2 Thanks in advance. Best Regards, Hafiz 2009/11/20 John Hjelmstad <[email protected]> > Hi Hafiz: > > Order is everything. I want to confirm: you're first rendering the IFRAME, > then immediately doing gadgets.rpc.setRelayUrl(...) and > gadgets.rpc.setAuthToken(...) correct? > > To best deduce this issue, I'd need: > 1. The exact IFRAME URL you're generating (you can remove the security > token > if there is one) > 2. The order in which you're generating the IFRAME URL and calling the > setup > commands. > 3. The browser version(s) you're using. > > As well, you might try gadgets.rpc.setupReceiver(gadgetIFrameId); --> this > is the replacement to setRelayUrl and setAuthToken which ensures proper > ordering. > > --j > > On Wed, Nov 18, 2009 at 11:39 PM, Hafiz A Haq <[email protected]> wrote: > > > nix_channels[targetId] is not undefined, for the first time when i run > the > > app after a jboss restart... so basically the rpc goes through for the > > first > > gadget(if and only there is one gadget request while starting up)... > > > > Any clue, why this happens? > > > > Thanks and Regards, > > Hafiz > > > > 2009/11/18 Hafiz A Haq <[email protected]> > > > > > Not sure if i am pestering you guys, but i dont have any other > option... > > > :-( > > > > > > I am also invoking > > > gadgets.rpc.setRelayUrl(iframeId, iframeUrl, false); > > > gadgets.rpc.setAuthToken(iframeId, rpcToken); > > > > > > from the container for each gadget generated. > > > > > > and alert from nix.transport.js > > > > > > call: function(targetId, from, rpc) { > > > try { > > > // If we have a handler, call it. > > > alert(targetId+" = "+nix_channels[targetId]+" from "+from+" rpc > > is > > > "+gadgets.json.stringify(rpc)); > > > .... > > > } > > > > > > gives > > > > > > > > > .. = from remote_iframe_0 rpc > > > {"s":"set_title","f":"remote_iframe_0","c":0,"a"["Account > > > overview"],"t":"0.6466592220939002","I":false} > > > > > > works (once in a blue moon) > > > > > > .. = undefined from remote_iframe_2 rpc is > > > {"s":"set_title","f":"remote_iframe_2","c":0,"a":["Account > > > summary"],"t":"0.33673688496145","I":false} > > > > > > doesnt work > > > > > > I don't understand why most of the times the undefined comes up and > then > > it > > > fails... > > > > > > > > > Please , all those gurus and experts, any tip, something i might be > > > missing... > > > > > > Thanks and Regards, > > > Hafiz > > > > > > > > > 2009/11/18 Hafiz A Haq <[email protected]> > > > > > >> I have also added rpctoken into the iframeurl like > > >> > > >> https:// > > >> > > > .../ifr?container=...&lang=en&country=US&view=default&nocache=1&rpctoken=0.9956869901138398, > > >> which is essentially a random number > > >> > > >> still the rpc calls are not getting through. > > >> > > >> Anything else i might be missing. > > >> > > >> 2009/11/18 Hafiz A Haq <[email protected]> > > >> > > >> Any input would help me. Please provide a hint why nix transport fails > > >>> when container and shindig is at 2 different secure domains? > > >>> > > >>> 2009/10/28 Hafiz A Haq <[email protected]> > > >>> > > >>>> Seems there is something that makes the nix transport mechanism fail > > >>>> here, the call method is not going through , where it fails at the > > check > > >>>> if (nix_channels[targetId]) > > >>>> > > >>>> In the call method the parameters targetId, from, rpc alerts to > > >>>> '.. , remote_iframe_3 , [object Object]' > > >>>> > > >>>> Can anyone please give me a hint why the code > > >>>> > > >>>> if (nix_channels[..]) > > >>>> > > >>>> is not going through as expected.. > > >>>> > > >>>> Any help is appreciated. > > >>>> > > >>>> Thanks and REgards, > > >>>> Hafiz > > >>>> > > >>>> 2009/10/28 Hafiz A Haq <[email protected]> > > >>>> > > >>>> Hi All, > > >>>>> > > >>>>> My dashboard application is up and running in production, thanks to > > >>>>> Shindig and you guys. Due to some serious mistake from QA and IT > guys > > i have > > >>>>> a bug at this last hour as rpc feature is broken in production and > my > > >>>>> clients are not so happy.. :( > > >>>>> > > >>>>> In production each client has individual subdomains and shindig is > > >>>>> deployed in a common subdomain for all customers, both over https. > > RPC is > > >>>>> now broken in IE6,7 and setTitle, setHeight ... are not working. > > >>>>> > > >>>>> I assigned gadgets.parent in myContainer.js with a regex pattern > like > > >>>>> > > >>>>> "gadgets.parent" : "(https://localhost:8443| > > >>>>> https://customer1.app.company.com| > https://customer2.app.company.com > > )", > > >>>>> > > >>>>> > > >>>>> and rpc like > > >>>>> > > >>>>> "rpc" : { > > >>>>> // Path to the relay file. Automatically appended to the parent > > >>>>> // parameter if it passes input validation and is not null. > > >>>>> // This should never be on the same host in a production > > >>>>> environment! > > >>>>> // Only use this for TESTING! > > >>>>> "parentRelayUrl" : "/app/core/main/rpc_relay.html", > > >>>>> > > >>>>> // If true, this will use the legacy ifpc wire format when > making > > >>>>> rpc > > >>>>> // requests. > > >>>>> "useLegacyProtocol" : false > > >>>>> } > > >>>>> > > >>>>> Now i tried > > >>>>> > > >>>>> var parentRelayUrl = window.location.protocol + "//" + > > >>>>> window.location.host > > >>>>> gadgets.container.setParentUrl(parentRelayUrl); > > >>>>> > > >>>>> from the container js file, which is loaded after loading all > > required > > >>>>> shindig js file dependencies. Still i am not able to get the rpcs > to > > work > > >>>>> properly in IE6,7. Any help is greatly appreciated as some of my > > customers > > >>>>> are tied down on IE7. > > >>>>> > > >>>>> Best Regards, > > >>>>> Hafiz > > >>>>> -- > > >>>>> He who asks is a fool for five minutes, but he who does not ask > > remains > > >>>>> a fool forever. > > >>>>> > > >>>> > > >>>> > > >>>> > > >>>> -- > > >>>> He who asks is a fool for five minutes, but he who does not ask > > remains > > >>>> a fool forever. > > >>>> > > >>> > > >>> > > >>> > > >>> -- > > >>> He who asks is a fool for five minutes, but he who does not ask > remains > > a > > >>> fool forever. > > >>> > > >> > > >> > > >> > > >> -- > > >> He who asks is a fool for five minutes, but he who does not ask > remains > > a > > >> fool forever. > > >> > > > > > > > > > > > > -- > > > He who asks is a fool for five minutes, but he who does not ask remains > a > > > fool forever. > > > > > > > > > > > -- > > He who asks is a fool for five minutes, but he who does not ask remains a > > fool forever. > > > -- He who asks is a fool for five minutes, but he who does not ask remains a fool forever.

