Force.com Demo App on Google App Engine (Python)

When Google announced the other day that they were supporting Java I started to dream about all of the cool Java / Salesforce.com apps that I could write. Then I read through the Will it play in App Engine page and my heart skipped a beat. There in black and white it stated, "We do not currently support JAX-RPC or JAX-WS." How was I supposed to write Salesforce.com integration application when I couldn't invoke web services?

Devastated, I turned my efforts towards building a Force.com application on Google App Engine with Python. I had written a number of Python applications for Salesforce.com but I had always just called Apex web services when needed. I thought I would take a crack at the Python Toolkit. The installation was simple enough and the Toolkit includes a number of examples (unit test) to get you up and running quickly.

I threw together a small demo app that connects to my Developer Org and provides the following functionality:

  1. Create a new Account
  2. Search for Accounts by keyword
  3. View an Account and all Opportunities for the Account
  4. Create a new Opportunity for an Account

You can find the demo application and source code at https://jeffdouglas-salesforce1.appspot.com.

During the development process, I started to think of ways to get around the lack of web services functionality in the Java Early Look. Perhaps I could use Python to expose the Force.com platform as REST web services and have the Java Early Look call these services?