Secure SOAP Server in Google App Engine Standard (Python or PHP) - google-app-engine

I have a project to connect with Banks in Chile and they communicate only with secured SOAP services (exchanging SSL keys). I need to implement both client (from my app to banks servers) and server (the bank will make SOAP request to my GAE app) requests.
What are the libraries required in Python/PHP in case this is possible? Any experience to share?
All my app is designed in GAE standard so I'm avoiding to use GCE o GAE flexible, and I have no experience in Java, so I kindly appreciate answers only for GAE standard Python/PHP.

I suggest you to first have a look on the conceptual PHP documentation for GAE standard and the GAE standard quickstart for PHP.
Once you understand the basic concepts, you could try this SOAP server guide in PHP. I don't have experience on SOAP servers but the guide looks good, at first sight.
Good luck!

Related

Why isn't Cloud Endpoints for Golang in GAE Standard Environment?

Hey does anyone know why Google Cloud Endpoints for Go-lang isn't in the standard environment on Google App Engine? It's only seemed to be officially supported/documented for Python / Java.
Is it because
A) Cloud Endpoints is coming to Golang soon / someday.
B) Cloud Endpoints isn't so great, so it's not going to be implemented in Golang.
C) Something else.
There's this "non-standard" lib https://github.com/GoogleCloudPlatform/go-endpoints but it hasn't been updated in 9 months.
I'm trying to choose between Python and Golang for a GAE project, and this lack of support for Cloud Endpoints is giving me pause.
Thanks in advance.
Product manager Dan Ciruli answered this on the google-appengine-go mailing list :
There are two primary reasons, and the second is a byproduct of the
first. We've had much less uptake on the Endpoints Go framework --
perhaps because, in the words of a developer I spoke to, "Go just
isn't a 'framework' language." Unlike, Java, Python (and, say, Node),
most developers using Go don't use a framework for writing an API
backend.
And, at least partially because of that, we aren't staffed on the
Endpoints team to build and support a framework in Go.
He added:
All hope is not lost. You can put a Go API behind Endpoints today on
GAE Flex or Container Engine (without framework) using the Extensible
Server Proxy. And later this year, we should be able to get the ESP
deployed in GAE standard environment, you'll get the full power there,
too.

JAX-RS services in Google App Engine

I'm developing a Google App Enigne application that uses some REST services and offers in turn web services. I'm using the GAE Eclipse plugin. I have 2 questions:
What is the best JAX-RS library to use with GAE nowadays? I'd like to use Jersey because I understand is the most "standard" library (isn't it?), but I could use any in principle... I've been looking for documentation, but I've only found some samples in blogs that only work with old versions of Jersey, etc...
For the web services I have to offer, I thought of using JAX-RS as well, but now I'm not sure if it's the best option...
You can use Jersey 1.5. You can see all frameworks that will play on GAE at http://code.google.com/p/googleappengine/wiki/WillItPlayInJava
But GAE has realized on version 1.7.5 as experimental service Endpoints which in term are rest service. Check https://developers.google.com/appengine/docs/java/endpoints/
For web service I don't know if you mean soap service..JAX-RS is the specification for rest service, instead you should use JAX-WS I don't try the compatibility with this specification.
After a little research on this subject, I've found out that the best way to offer web services from Google App Engine is using Google Cloud Endpoints, which is still an experimental technology but as far as I've tried, it works well. Furthermore it is very well integrated with GAE and the Google Plugin for Eclipse.
To cosume REST services from Google App Engine, I've opted for using just Java build-in HTTP client library as explained here. I don't know if it's the best way, but it is very simple and you avoid compatibility problems that could arise between GAE and JAX-RS APIs such as Jersey.
In order to work with JSON in GAE (very useful for RESTful services), I'm using Google's gson, which is a Java library that can be used to convert Java Objects into their JSON representation and vice-versa.

Appengine without google apps?

I was using GAE with Gapps on my domain, however it seems that ghs.google.com is unavailable in China.
How can I use GAE on my domain without Gapps?
Edit: A solution I'm considering is using something like a proxy. This way the firewall doesnt see google. By the way, my site is not banned because of its content, it can be acessed normally using appspot. The problem comes from google apps redirections.
Any ideas how I can setup something like this?
According to this answer you cannot.
Petition your government for redress of grievance? Yes, I know that's not such a hot idea in 中華人民共和國.
Google is quote interested in access to their services generally, but isn't (yet) in a position to tell governments what to do directly.
AppScale is an open-source implementation of the Google App Engine cloud computing interface. It is being developed by researchers in the UC Santa Barbara RACELab.
AppScale enables execution of Google App Engine (GAE) applications on virtualized cluster systems. In particular, AppScale enables users to execute GAE applications using their own clusters with greater scalability and reliability than the GAE SDK provides.
Moreover, AppScale executes automatically and transparently over cloud infrastructures such as the Amazon Web Services (AWS) Elastic Compute Cloud (EC2) and Eucalyptus, the open-source implementation of the AWS interfaces.

If I create a succesful dot com company utilizing google app engine/datastore will google own it?

Or is it easier to host my own website and database.
The main reason I would use google app engine is the "free" hosting and scalability;
Has anyone got experience using app engine, was it a good experience ?
The answer is no, Google does not own either your code or your data. Both of them are completely yours. Google only provides hosting for it - they have no more claim on your data and IP than Amazon does if you go with EC2. Take a look at section 6.3 of the terms.
I'm running mapfaire.com on the App Engine and I'm having a very good experience. I intend to continue using it for all my applications.

Hosting/transferring a web site on Google App Engine

I have my website currently hosted on paid server, but i want to transfer it on GAE.
How can i do it? Can anyone please help me in this case.I'd appreciate your help.
Thanks:)
1) First you will have to adapt your website to the GAE framework (python with django or the new Java environment). You can test your work by downloading the SDK of GAE which offer a local server.
2) Then create an account on appengine.google.com and upload your application on something.appspot.com, test it.
3) If you have a domain name, create a google apps account on this domain, and finally bind this domain with your GAE website. Here is the Google doc.
If it is just a static website which does not need server side scripts or a database, then you might want to look into Google Sites instead of Appengine. You can find out more about Sites here: http://www.google.com/sites/help/intl/en/overview.html
If you do have some server side logic going on, you will need to convert it to either python or java and convert your relational database to Google's Data API which does not support the SQL your current database uses. You can read more about the APIs and what is supported with the Data API and tutorials at: http://code.google.com/appengine/
In response to sanorita's comment "Actually, it's generated html and not plain html. and google appengine is for static data... right?":
AppEngine can host static data, but that is far from its intent.
The purpose of AppEngine is to allow developers to easily deploy their dynamic applications on Google's infrastructure. In the end, assuming you have programmed your app in effective ways to handle scaling (basically just noting that writes to the database are expensive, and contention is the root of all evil) you can handle nearly any amount of traffic.

Resources