Hi Manuel,
Yes, this is very possible to do. It is how the datastore admin
copy tool works. You might take a look at that code for an example of
how to do the basic setup,
http://code.google.com/p/googleappengine/source/browse/trunk/python/google/appengine/ext/datastore_admin/copy_handler.py
Robert
On Tue, Jan 24, 2012 at 06:22, Manuel | nubbius <[email protected]> wrote:
> I have seen with Remote API in Java is possible to access the
> services / objects of one App Engine
> application from a different App Engine application, see
> http://code.google.com/intl/es-ES/appengine/docs/java/tools/remoteapi.html#Configuring_Remote_API_on_an_App_Engine_Client
>
> Is it possible to do the same with a Python Instance, I mean, accesing
> from one Python Instance (client) to services / objects in another
> Python instance.
>
> I've been dealing with Remote API, but when I upload, deploy my script
> to GAE i get the following error (In SDK/ development I don't get this
> error):
>
> maximum recursion depth exceeded
> Traceback (most recent call last):
> File "/base/python_runtime/python_lib/versions/1/google/appengine/
> ext/webapp/_webapp25.py", line 701, in __call__
> handler.get(*groups)
> File "/base/data/home/apps/s~backuppython/3.356320928819354525/
> backup.py", line 218, in get
> initialize_remote_api()
> File "/base/data/home/apps/s~backuppython/3.356320928819354525/
> backup.py", line 196, in initialize_remote_api
> remote_api_stub.MaybeInvokeAuthentication()
> File "/base/python_runtime/python_lib/versions/1/google/appengine/
> ext/remote_api/remote_api_stub.py", line 660, in
> MaybeInvokeAuthentication
> datastore_stub._server.Send(datastore_stub._path, payload=None)
> File "/base/data/home/apps/s~backuppython/3.356320928819354525/
> google/appengine/tools/appengine_rpc.py", line 375, in Send
> f = self.opener.open(req)
> File "/base/data/home/apps/s~backuppython/3.356320928819354525/
> google/appengine/tools/urllib2.py", line 391, in open
> response = self._open(req, data)
> File "/base/data/home/apps/s~backuppython/3.356320928819354525/
> google/appengine/tools/urllib2.py", line 409, in _open
> '_open', req)
> File "/base/data/home/apps/s~backuppython/3.356320928819354525/
> google/appengine/tools/urllib2.py", line 369, in _call_chain
> result = func(*args)
> File "/base/data/home/apps/s~backuppython/3.356320928819354525/
> google/appengine/tools/urllib2.py", line 1173, in http_open
> return self.do_open(httplib.HTTPConnection, req)
> File "/base/data/home/apps/s~backuppython/3.356320928819354525/
> google/appengine/tools/urllib2.py", line 1146, in do_open
> r = h.getresponse()
> File "/base/python_runtime/python_dist/lib/python2.5/httplib.py",
> line 204, in getresponse
> deadline=self.timeout)
> File "/base/python_runtime/python_lib/versions/1/google/appengine/
> api/urlfetch.py", line 263, in fetch
> return rpc.get_result()
> File "/base/python_runtime/python_lib/versions/1/google/appengine/
> api/apiproxy_stub_map.py", line 592, in get_result
> return self.__get_result_hook(self)
> File "/base/python_runtime/python_lib/versions/1/google/appengine/
> api/urlfetch.py", line 355, in _get_fetch_result
> rpc.check_success()
> File "/base/python_runtime/python_lib/versions/1/google/appengine/
> api/apiproxy_stub_map.py", line 558, in check_success
> self.__rpc.CheckSuccess()
> File "/base/python_runtime/python_lib/versions/1/google/appengine/
> api/apiproxy_rpc.py", line 156, in _WaitImpl
> self.request, self.response)
> File "/base/python_runtime/python_lib/versions/1/google/appengine/
> ext/remote_api/remote_api_stub.py", line 177, in MakeSyncCall
> self._MakeRealSyncCall(service, call, request, response)
> File "/base/python_runtime/python_lib/versions/1/google/appengine/
> ext/remote_api/remote_api_stub.py", line 189, in _MakeRealSyncCall
> encoded_response = self._server.Send(self._path, encoded_request)
> File "/base/data/home/apps/s~backuppython/3.356320928819354525/
> google/appengine/tools/appengine_rpc.py", line 375, in Send
> f = self.opener.open(req)
> File "/base/data/home/apps/s~backuppython/3.356320928819354525/
> google/appengine/tools/urllib2.py", line 391, in open
> response = self._open(req, data)
> File "/base/data/home/apps/s~backuppython/3.356320928819354525/
> google/appengine/tools/urllib2.py", line 409, in _open
> '_open', req)
> File "/base/data/home/apps/s~backuppython/3.356320928819354525/
> google/appengine/tools/urllib2.py", line 369, in _call_chain
> result = func(*args)
> File "/base/data/home/apps/s~backuppython/3.356320928819354525/
> google/appengine/tools/urllib2.py", line 1173, in http_open
> return self.do_open(httplib.HTTPConnection, req)
> File "/base/data/home/apps/s~backuppython/3.356320928819354525/
> google/appengine/tools/urllib2.py", line 1146, in do_open
> r = h.getresponse()
> File "/base/python_runtime/python_dist/lib/python2.5/httplib.py",
> line 204, in getresponse
> deadline=self.timeout)
> File "/base/python_runtime/python_lib/versions/1/google/appengine/
> api/urlfetch.py", line 263, in fetch
> return rpc.get_result()
> File "/base/python_runtime/python_lib/versions/1/google/appengine/
> api/apiproxy_stub_map.py", line 592, in get_result
> return self.__get_result_hook(self)
> File "/base/python_runtime/python_lib/versions/1/google/appengine/
> api/urlfetch.py", line 355, in _get_fetch_result
> rpc.check_success()
> File "/base/python_runtime/python_lib/versions/1/google/appengine/
> api/apiproxy_stub_map.py", line 558, in check_success
> self.__rpc.CheckSuccess()
> File "/base/python_runtime/python_lib/versions/1/google/appengine/
> api/apiproxy_rpc.py", line 156, in _WaitImpl
> self.request, self.response)
> File "/base/python_runtime/python_lib/versions/1/google/appengine/
> ext/remote_api/remote_api_stub.py", line 177, in MakeSyncCall
> self._MakeRealSyncCall(service, call, request, response)
> File "/base/python_runtime/python_lib/versions/1/google/appengine/
> ext/remote_api/remote_api_stub.py", line 189, in _MakeRealSyncCall
> encoded_response = self._server.Send(self._path, encoded_request)
> File "/base/data/home/apps/s~backuppython/3.356320928819354525/
> google/appengine/tools/appengine_rpc.py", line 375, in Send
> f = self.opener.open(req)
> File "/base/data/home/apps/s~backuppython/3.356320928819354525/
> google/appengine/tools/urllib2.py", line 391, in open
> response = self._open(req, data)
> File "/base/data/home/apps/s~backuppython/3.356320928819354525/
> google/appengine/tools/urllib2.py", line 409, in _open
> '_open', req)
> File "/base/data/home/apps/s~backuppython/3.356320928819354525/
> google/appengine/tools/urllib2.py", line 369, in _call_chain
> result = func(*args)
> File "/base/data/home/apps/s~backuppython/3.356320928819354525/
> google/appengine/tools/urllib2.py", line 1173, in http_open
> return self.do_open(httplib.HTTPConnection, req)
> File "/base/data/home/apps/s~backuppython/3.356320928819354525/
> google/appengine/tools/urllib2.py", line 1146, in do_open
> r = h.getresponse()
> File "/base/python_runtime/python_dist/lib/python2.5/httplib.py",
> line 204, in getresponse
> deadline=self.timeout)
> File "/base/python_runtime/python_lib/versions/1/google/appengine/
> api/urlfetch.py", line 263, in fetch
> return rpc.get_result()
> File "/base/python_runtime/python_lib/versions/1/google/appengine/
> api/apiproxy_stub_map.py", line 592, in get_result
> return self.__get_result_hook(self)
> File "/base/python_runtime/python_lib/versions/1/google/appengine/
> api/urlfetch.py", line 355, in _get_fetch_result
> rpc.check_success()
> File "/base/python_runtime/python_lib/versions/1/google/appengine/
> api/apiproxy_stub_map.py", line 558, in check_success
> self.__rpc.CheckSuccess()
> File "/base/python_runtime/python_lib/versions/1/google/appengine/
> api/apiproxy_rpc.py", line 156, in _WaitImpl
> self.request, self.response)
> File "/base/python_runtime/python_lib/versions/1/google/appengine/
> ext/remote_api/remote_api_stub.py", line 177, in MakeSyncCall
> self._MakeRealSyncCall(service, call, request, response)
> File "/base/python_runtime/python_lib/versions/1/google/appengine/
> ext/remote_api/remote_api_stub.py", line 189, in _MakeRealSyncCall
> encoded_response = self._server.Send(self._path, encoded_request)
> File "/base/data/home/apps/s~backuppython/3.356320928819354525/
> google/appengine/tools/appengine_rpc.py", line 375, in Send
> f = self.opener.open(req)
> File "/base/data/home/apps/s~backuppython/3.356320928819354525/
> google/appengine/tools/urllib2.py", line 391, in open
> response = self._open(req, data)
> File "/base/data/home/apps/s~backuppython/3.356320928819354525/
> google/appengine/tools/urllib2.py", line 409, in _open
> '_open', req)
> File "/base/data/home/apps/s~backuppython/3.356320928819354525/
> google/appengine/tools/urllib2.py", line 369, in _call_chain
> result = func(*args)
> File "/base/data/home/apps/s~backuppython/3.356320928819354525/
> google/appengine/tools/urllib2.py", line 1173, in http_open
> return self.do_open(httplib.HTTPConnection, req)
> File "/base/data/home/apps/s~backuppython/3.356320928819354525/
> google/appengine/tools/urllib2.py", line 1146, in do_open
> r = h.getresponse()
> File "/base/python_runtime/py...(length 135612)
>
> --
> You received this message because you are subscribed to the Google Groups
> "Google App Engine" group.
> To post to this group, send email to [email protected].
> To unsubscribe from this group, send email to
> [email protected].
> For more options, visit this group at
> http://groups.google.com/group/google-appengine?hl=en.
>
--
You received this message because you are subscribed to the Google Groups
"Google App Engine" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to
[email protected].
For more options, visit this group at
http://groups.google.com/group/google-appengine?hl=en.