...
So proxify("http://example.org/myservice/")
results in a URL like http://my.wookie.org/proxy?url=http://example.org/myservice/&api_key=myapikey
Shindig also uses the same method for OpenSocial applications, and has its own bundled proxy service.
...
Wookie's bundled proxy servlet is a bit stricter than the one bundled in Shindig, as it only allows text, xml or json (not binary), and can also be controlled using a whitelist set up by the Wookie administrator and using W3C WARP. For more information see the Wookie Administrators guide.
How does localization work in Wookie?
Wookie implements the localization model described in the W3C Widgets: Packaging and Configuration specification. This means that Widgets contain "locale" folders for specific locales (eg. "/locales/et/index.html"), and Wookie will serve resources in matching locale folders in preference to generic resources. Wookie uses the 'locale' parameter of a request for a new widget as the preferred locale for resource requests; if this is absent then Wookie uses the server's default locale as picked up through system settings. We use ICU4J for all locale processing, including locating system defaults.
Wookie messed up my widget's <script> tags when I imported it! What happened?
Wookie uses HtmlCleaner to inject its own script tags into your Widget's start file when it is uploaded. This works fine in most cases; however if you use self-closing script tags things can go wrong. To avoid this always use regular HTML-style script tags e.g <script src="main.js"></script>
and not <scripr src="main.js"/>
. See Issue WOOKIE-42 for more information.
When I run Wookie in Tomcat I get a "java.security.AccessControlException: access denied (java.util.PropertyPermission user.dir read)"
This problem occurs when the security manager is enabled in Tomcat, but without the proper permission assigned for Wookie. There is a How-To that can help you define the security policy properly.
Wookie installs fine in Tomcat, but when I try to see it I get "org.hibernate.HibernateException: flush is not valid without active transaction"
...
Whenever you execute the ant run
command to run Wookie in standalone (developer) mode, the database is recreated. This means that if you stop and re-run Wookie you'll get an error message. To avoid this problem use ant clean-db run
instead.
Why can't I add any widgets, either through the admin interface or by dropping them into the deploy folder?
One of the most common reasons for this is that the application doesn't have permission to write to the wookie/wservices directory, which is where Wookie expands widgets when they are uploaded. For example, if you are deploying Wookie on Tomcat, make sure webapps/wookie is owned by the tomcat user and not by root.
Why do I get an error message like "wookie\widgets\bubbles\widgets\bubbles does not exist" when I try to build Wookie?
This problem occurs when building Wookie using Ant 1.8.x. The build will work fine if you use Ant 1.7.1. See Issue WOOKIE-152 for more information
Why doesn't my script run using JQuery's $(document).ready ?
This is a known issue. See Issue WOOKIE-90 for more information. As a workaround you can use <body onload="...">
My widgets do not seem to be updating the preference data in wookie
Anchor | ||||
---|---|---|---|---|
|
This is a known issue. See Issue WOOKIE-44 for more information. This problem typically occurs when using Internet Explorer (version 8 and less). It is only flagged here as a warning because depending on how the widget calls the widget javascript API, you may or may not encounter a problem. In essence there are two ways of setting a preference in your widgets javascript implementation...
(1) widget.preferences.setItem("foo", "bar");
(2) widget.preferences.foo = "bar";
If your widget has been coded to only use method (1), there should not be a problem in Internet Explorer. However if your widget implementation uses method (2) or a combination of both, then you may experience unexpected results.
If you are experiencing this problem and you are using Internet Explorer (version 8 or less), then...
(1) update the javascript code to only use method (1) above in the affected widget
OR
(2) install Internet Explorer version 9, which should resolve the problem.
Other browsers should be unaffected by this issue.
Why when I update my widget and load it back onto wookie do I get two copies of my widget in the gallery?
If your widget does not have an id defined in the widget's config.xml file or the id is not a valid URI then wookie will load but not update your widget. If this is the case then (for the moment) you will need to manually remove the old version of the widget using wookie's admin page.