Hi all,

Both versions 0.8 and 0.9 of the OS Gadgets API spec include the following 
language regarding the process for outputing gadget content in 0.9 section 
3.1.3.6.c (
http://www.opensocial.org/Technical-Resources/opensocial-spec-v09/Gadgets-API-Specification.html#process
):

-------------------------< Start Snip >---------------------------
For type URL gadgets, the provided URL MUST have the following parameters 
added to it: 
a.      up_<name>=<value> for each provided user preference.
b.      lang=<language> and country=<country>, from the provided request 
Locale.
c.      libs=<jsLib>, where <jsLib> is a comma-separated list of URL path 
fragments relative to the server's JavaScript request handler path. These 
fragments are added to the JS path by the type URL target to load gadget 
API JavaScript into its execution context. 
a.      The server SHOULD consolidate all libs into a single request to 
minimize the number of HTTP requests made by the client browser.
-------------------------< End Snip >---------------------------

In particular, I'm interested in sub-bullet "a", which I believe describes 
the behavior I see on http://hosting.gmodules.com whereby the URL 
specified in a Content type="url" gadget has appended to it name value 
pairs for each user preference.  What is curious is that, while gmodules 
handles this type of request as I'd expect, we've not been able to get the 
Java version of shindig (beta 3, I believe) to do the same.  We've checked 
out the code and ran it through the debugger and it appears that the href 
object passed to the redirection code does not contain values in the query 
parameter, that I thought might have the userpref values within it.

So for a simple Gadget such as: 
http://hosting.gmodules.com/ig/gadgets/file/113570023379904426818/StockCharts.xml

        <UserPref name="Symbol" display_name="Symbol" 
default_value="QQQQ"/>
        <UserPref name="Duration" display_name="Chart Duration" 
default_value="1y" datatype="enum">
                <EnumValue value="3m" display_value="3 months"/>
                <EnumValue value="6m" display_value="6 months"/>
                <EnumValue value="1y" display_value="1 year"/>
        </UserPref>
        <Content type="url" href="
http://finance.diagramics.com/GoogleGadgets/StockCharts/StockCharts.aspx
"/>

So via url: 
http://www.gmodules.com/ig/ifr?url=http://hosting.gmodules.com/ig/gadgets/file/113570023379904426818/StockCharts.xml
, gmodules passes that to diagramics.com as: 
http://finance.diagramics.com/GoogleGadgets/StockCharts/StockCharts.aspx?up_Symbol=QQQQ&up_Duration=1y&lang=en&country=us&.lang=en&.country=us&synd=ig&mid=0&ifpctok=-3826154864153791449&parent=&libs=7XmBcHbMdDM/lib/libcore.js,Key5alrYVUI/lib/libfinance.js
.

However the same request through Shindig yields: 
http://finance.diagramics.com/GoogleGadgets/StockCharts/StockCharts.aspx

What I'm wanting to understand is whether this is simply function that 
hasn't been implemented yet, if I'm not understanding that aspect of the 
spec, or if perhaps we've configured or are using our shindig instance 
incorrectly.  Is there someone who can help me understand please what we 
should be expecting to happen here?

Thanks in advance for your help,
John Gerken
Senior Architect, Emerging Internet Technologies
IBM Emerging Technologies Software Group
[email protected]
IBM Internal Blog: 
http://blogs.tap.ibm.com/weblogs/[email protected]/
IBM External Blog: http://www.ibm.com/developerworks/blogs/page/etech

Reply via email to