I am trying to run the official helloworld program in google-appengine 1.6.4 for python 2.7.
It's so frustrating to be not able to run a simple helloworld. I would appreciate any kind of help here.
Error I encounter:-
shadyabhi@MBP-archlinux ~/codes/gae $ dev_appserver.py helloworld/
INFO 2012-04-06 23:25:55,030 appengine_rpc.py:160] Server: appengine.google.com
INFO 2012-04-06 23:25:55,034 appcfg.py:582] Checking for updates to the SDK.
INFO 2012-04-06 23:25:56,709 appcfg.py:616] This SDK release is newer than the advertised release.
WARNING 2012-04-06 23:25:56,710 datastore_file_stub.py:513] Could not read datastore data from /tmp/dev_appserver.datastore
INFO 2012-04-06 23:25:56,773 dev_appserver_multiprocess.py:647] Running application dev~helloworld on port 8080: http://localhost:8080
INFO 2012-04-06 23:25:56,774 dev_appserver_multiprocess.py:649] Admin console is available at: http://localhost:8080/_ah/admin
WARNING 2012-04-06 23:26:00,928 py_zipimport.py:139] Can't open zipfile /usr/lib/python2.7/site-packages/setuptools-0.6c11.egg-info: IOError: [Errno 13] file not accessible: '/usr/lib/python2.7/site-packages/setuptools-0.6c11.egg-info'
ERROR 2012-04-06 23:26:01,101 wsgi.py:189]
Traceback (most recent call last):
File "/opt/google-appengine-python/google/appengine/runtime/wsgi.py", line 187, in Handle
handler = _config_handle.add_wsgi_middleware(self._LoadHandler())
File "/opt/google-appengine-python/google/appengine/runtime/wsgi.py", line 239, in _LoadHandler
raise ImportError('%s has no attribute %s' % (handler, name))
ImportError: <module 'helloworld' from '/home/shadyabhi/codes/gae/helloworld/helloworld.pyc'> has no attribute app
INFO 2012-04-06 23:26:01,110 dev_appserver.py:2884] "GET / HTTP/1.1" 500 -
ERROR 2012-04-06 23:26:01,479 wsgi.py:189]
Traceback (most recent call last):
File "/opt/google-appengine-python/google/appengine/runtime/wsgi.py", line 187, in Handle
handler = _config_handle.add_wsgi_middleware(self._LoadHandler())
File "/opt/google-appengine-python/google/appengine/runtime/wsgi.py", line 239, in _LoadHandler
raise ImportError('%s has no attribute %s' % (handler, name))
ImportError: <module 'helloworld' from '/home/shadyabhi/codes/gae/helloworld/helloworld.pyc'> has no attribute app
INFO 2012-04-06 23:26:01,486 dev_appserver.py:2884] "GET /favicon.ico HTTP/1.1" 500 -
by checking your git repo i see helloworld is not a .py file.
rename it to helloworld.py and you should be good to go.
I have been working on the official hello world tutorial in python 2.7 and found the same mistake in the configuration file app.yaml The last line reads
script: helloworld.application
it should be
script: helloworld.app
When using runtime python 2.7 you don't have to use the main function
Remove this
and simply call
One difference between the files that you have on github and the official google hellworld tutorial is that your helloworld file doesn't seem to be named helloworld.py. Potentially that would help?
Additionally, do you need that PROJECT_DIR variable at the top of helloworld?
If you are struggling to get the basic tutorial working, the first thing you should do is make sure that your project is literally the exact same as the google example.
This piece of code did the trick for me (notice 'application' replaced with 'app'):
I was getting a 500 error after I copied the code straight off Google's site. None of the above worked.
All I had to do was change the indentation for each line of code (i.e. change the spaces to Tabs) and bingo.
That worked for me.