You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 48 Next »

This is the home page for the Apache Shindig space.



Table of Contents


FAQs


What's the relationship between Shindig versions and OpenSocial spec versions?

There was a recent post on the mailing list that discussed this relationship. These will match what you would find in the SVN. For convenience, here's a quick table summary.

Shindig Version

OpenSocial Spec Level

SVN URL

Notes

1.0.x-incubating

0.8.1

http://svn.apache.org/repos/asf/incubator/shindig/branches/1.0.x-incubating

 

1.1.x (currently Trunk)

0.9

http://svn.apache.org/repos/asf/incubator/shindig/trunk

 

How do I verify the OpenSocial compliance of Shindig?

Call mvn -Prun on the 1.0.x-incubating branch and open in your favourite browser http://localhost:8080/gadgets/files/samplecontainer/samplecontainer.html.
Specify http://opensocial-resources.googlecode.com/svn/tests/trunk/suites/0.8/compliance/reference.xml to verify the compliance tests in Shindig.

What do I need to do to integrate shindig into my site?

See The rough guide to deploying shindig. It's very barebones right now, but hopefully can get you started.

How can I display a gadget in my web page?

This how to shows the integration of a gadget in a web page Display a gadget in a web page.

How do I generate the iframe urls manually?

See iframe url format

With Tomcat, how to use Shindig as a non-root application?

If you are using a non-root context like /shindig you want to edit your /java/common/conf/shindig.properties file.
Edit to equal to your new path
shindig.content-rewrite.concat-url=/shindig/gadgets/concat

What are the inputs and outputs of the Shindig metadata call?

See Shindig's metadata call.

How to access the console for gadgets.log?

Firefox: Firebug: http://getfirebug.com/
IE7: CompanionJS: http://www.my-debugbar.com/wiki/CompanionJS/HomePage
IE8: Tools->Developer Tools, use the Script tab
Safari 3 & 4: Edit->Preferences; Advanced; Select "Show Develop menu in menu bar"; Develop->Show Error Console
Opera 9/10: Out of luck till Shindig gets fixed, seems window.opera.postError is the logging call


Database & Shindig


How can I provide my own implementation of the data services (no database)?

First, it's helpful to have an overview of Shindig's architecture. Dave put a great post on his blog, so start by reviewing that. (Hey Dave, would you consider moving your post over to this wiki?) Notice in step 5, you get to the three data services, PersonService, ActivityService, and AppDataService. From there, you can check out Harry's instructions on Providing your own data service implementation.

How do I integrate a relational database with Shindig (MySQL example)?

The following tutorial explains how to do that (tutorial).
If you want to understand how JPASocialModule provides implementations os PersonService, AppDateService, etc.
look at the instructions in the previous section.

How can I integrate my own social database schema with shindig (MySQL example)?

The following tutorial explains how to do that (tutorial).
This tutorial requires the knowledge of the above tutorial on Relation database integration.

How do I integrate a relational database with Shindig (deprecated)?

(lightbulb) Chris Schalk did an article on data integration some time ago. On a recent mail exchange on shindig-dev, he recognized this probably needs to be updated. Hopefully, we can update that information on this wiki on the new Shindig Data Integration Development Guide page.


Security & Shindig


How do I enable OAuth in Shindig?

Rodrigo Gallardo has started a the Enabling OAuth support page. Check it out for details.

How do I enable secure tokens?

There's a mail thread that starts to describe how to do this.


Setting up an Eclipse Development Environment


How do I run Shindig on Tomcat6 under Eclipse ?

Note: these instructions were probably made obsolete by shindig revision r772382. (http://svn.apache.org/viewvc?view=rev&revision=772382). If you're using tomcat, please update these instructions as appropriate.

(lightbulb) Shindig uses Juel as the implementation of Unified Expression Language, this clashes with tomcat 6 el-api.jar, and sometimes produces weird error messages (UnsatisfiedLinkError), you need to:
-Change SHINDIG_ROOT/pom.xml and comment the maven plugin 'maven-remote-resources-plugin', otherwise when Eclipse tries to jar the classes under several shindig subprojects, the META-INF/{DEPENDENCIES,NOTICE,LICENSE...} files clash with one another and Eclipse throws an error.
-Add a dependency in SHINDIG_ROOT/pom.xml, SHINDIG_ROOT/java/common/pom.xml and SHINDIG_ROOT/java/gadgets/pom.xml on :
<dependency><groupId>javax.el</groupId><artifactId>el-api</artifactId><scope>provided</scope><version>1.0</version></dependency>
since we're going to replace the full JUEL (that includes the el-api) with a stripped down JUEL (without the el-api).
You need to scope it with 'provided' so that Eclipse will not add this jar to the WEB-INF/lib directory (el-api.jar is found on tomcat6/lib) or it will clash with the tomcat6 provided el-api.jar and produce an UnsatisfiedLinkError exception.
-Create a juel-2.1.0-nojavax.jar with the same classes as they were in juel-2.1.0.jar but removing the javax directory from the jar.
-Install your juel-2.1.0-nojavax.jar in your local Maven repository with:
mvn install:install-file -Dfile=juel-2.1.0-nojavax.jar -DgroupId=de.odysseus.juel -DartifactId=juel -Dversion=2.1.0-nojavax -Dpackaging=jar
-Change the dependency version of JUEL from "2.1.0" to "2.1.0-nojavax" in SHINDIG_ROOT/pom.xml, SHINDIG_ROOT/java/common/pom.xml and SHINDIG_ROOT/java/gadgets/pom.xml.

Now on Eclipse create 3 Java projects: shindig-common, shindig-gadgets and shindig-social-api with source folder=src/main/java, and one "Dynamic Web Project" (shindig-server) with WebApp folder == src/main/webapp. Then import the sources from your SHINDIG_ROOT/java/{common,gadgets,social-api,server} to each of these projects. On each of the projects, add the src/main/java and src/main/resources and src/test/resources as a source folder (right-click on the folder and select "Add as Source Folder").
Now right-click on each of the projects and select "Enable Dependency Management" under Maven menu.
Right-click on shindig-server and select "Properties", and under "Java EE Module Dependencies", select "Maven Dependencies", "shindig-common", "shindig-gadgets" and "shindig-social-api".

You're ready to go ! right click on shindig-server, "Run As"->"Run on Server" and select your Tomcat6 server instance.
in case you run on any error, make sure all the 'jar's needed are in .metadata/.plugins/org.eclipse.wst.server.core/tmp1/wtpwebapps/shindig-server/ and that the el-api.jar is not present in that directory.


How do I manage Shindig?


How do I use JMX with Shindig?

With Jetty, you need to set MAVEN_OPTS=-Dcom.sun.management.jmxremote and call mvn -Prun. After this, you could use jconsole as usually.


Adding Features to Shindig


How do I add a new feature to Shindig?

This series of pages walks through adding a feature to Shindig and then adds an osapi service and then connects the osapi service into the feature.


Additional Resources


OpenSocial external resources

Here is the list of OpenSocial external links:

  • Partuza: A Shindig based example social network site
  • Socialsite: socialsite: Open Source Social Networking Server with OpenSocial Support
  • raya: .NET port of Partuza

Other OpenSocial implementations

Here is the list of other OpenSocial container implementations:

Articles on Shindig

Title

Publisher

Author

Published

Thesis about implementing the OpenSocial API into an existing social network. Written in German

N/A

Harry Hübner

June 2009

Shindig for Blogs & Wikis

ASF

Dave Johnson

March 2009

OpenSocial a Standard for the social web slideshare PDF

Google

Patrick Chanezon

March 2009

Google Gadgets & Shindig RPC Enlightment

N/A

Arnaud Bailly

Feb. 2009

SocialSite - Architectural Overview

Google

Rajdeep Dua

Jan. 2009

Empowering the social web with Apache Shindig

ASF

Henning Schmiedehausen

Nov. 2008

Shindig Architectural Overview

?

Rajdeep Dua

Nov. 2008

Apache Shindig Pushes Social Envelope

Article Alley

Kevin Burbank

Oct. 2008

Setting up Shindig on Windows

N/A

Chris Chabot

Oct. 2008

How the Shindig REST API works (Java version)

N/A

Dave Johnson

Sept. 2008

Shindig : An Architectural Overview (PHP Version)

N/A

Rajdeep Dua

Aug. 2008

Overview of REST Implementation in Shindig - (Java Version)

Google Sites

Rajdeep Dua

June 2008

Architectural Overview of Shindig , an OpenSocial Reference Implementation

Google Sites

Anash P. Oommen

June 2008

Shindig on PHP - Setting up a Debug Environment

Google Sites

Anash P. Oommen

June 2008

Google I/O 2008 - Apache Shindig

GoogleDevelopers

Dan Peterson, Paul Lindner and Chris Chabot

June 2008

OpenSocial: The Power of Social Networks in Your Applications

N/A

Riccardo Govoni

May 2008

Architectural Overview of Shindig , an OpenSocial Reference Implementation

N/A

Rajdeep Dua

May 2008

Shindig Data Integration Development Guide

N/A

Chris Schalk

May 2008

Make Your Site an OpenSocial Container Using Shindig

N/A

Chris Schalk Chris Chabot

May 2008

How to create and run your own Shindig

N/A

?

March 2008

Shindig Architecture: Java Gadget Classes
Shindig Architecture: Java Gadget Server 2 - Servlets
Shindig Architecture: Java gadget Server 3 - Util

N/A

Michael Mahemoff

Feb. 2008

Shindig Examples

Design Documents


OAuth Proxy compatibility with fix for OAuth session fixation attack

  • No labels