JDBC Driver does not work with GWT? - google-app-engine

I want to access to an external MySQL server from my server using GWT, I added the mysql-connector jar to the build path and in war/WEB-INF/lib
Although I get this exception:
java.lang.NoClassDefFoundError:
com.mysql.jdbc.Driver is a restricted
class. Please see the Google App
Engine developer's guide for more
details.
Any ideas? Would jdbc driver be on a black-list?

App Engine doesn't support JDBC. Maybe your project is set to target App Engine. If you're using Eclipse, right click the project, choose properties, and under "Google>App Engine" deselect "Use Google App Engine".

It seems Google has not yet released JDBC support..

Related

IntelliJ: cannot deploy to Google App Engine (Standard)

The IDE complains about no Deployment selected, but from the picture I can't pick one.
I have upgraded IntelliJ to the latest. I am planning to reinstall everything.
Suggestions?
There should be an artifact displayed:
Make sure you have a war artifact defined in the Project Structure | Artifacts.
If the issue persists, please report a bug and attach a sample project to reproduce.
Artifact options available out of the box in IntelliJ IDEA Ultimate:
If you don't see the Web Application options, you need to make sure that all the plug-ins are enabled. You can also just delete disabled_plugins.txt file from the IDE CONFIG directory and restart the IDE.
In case you are still running into issues:
It actually looks like you are using the Cloud Tools for IntelliJ plugin (https://github.com/GoogleCloudPlatform/google-cloud-intellij) and not the App Engine plugin bundled in IDEA Ultimate as in the accepted answer.
You can refer to the following documentation for deployment to the App Engine standard environment:
https://cloud.google.com/tools/intellij/docs/deploy-std
Also a couple things to check:
You should have an app engine standard facet
You should have an exploded-war artifact:
Try the following action:
Tools > Google Cloud Tools > Add App Engine support > Google App Engine Standard and see if this resolves the problem.
If none of this helps, perhaps you can post some screenshots of your artifact / module structure under project settings.
So OK, at the end I was using IntelliJ Community which doesn't support deploying to Google App Engine anymore (although it's bizarre the plugin is available). Apparently one of the latest updates disable whatever minimal support was there, as I was able to deploy to GAE just a few weeks ago.

Intellij Idea: Error in deploying to Google App Engine

I have recently switched to Idea version 2017 and when I try to deploy to Google App Engine, it gives the error: "Error running Google App Engine deployment: Server not specified"
I think there was a new setting in this version (asking for a server name). I left it empty in my first attempt and now that dialog doesn't popup and straightaway gives this error every time.
How can I remove the stored settings of this App Engine plugin, so that it'll as the server name again?
Thanks.
When you invoke this action for the first time IntelliJ IDEA just creates a new Run/Debug configuration for the Google App Engine. You can always access it later in the Edit Run/Debug configurations dialog and change the server and/or the artifact to deploy:

"Add AppEngine Backend" missing in Android Studio 0.8.2?

Is it possible that the function to generate AppEngine backend went missing from the submenu (Google Cloud Tools)? Or is it some new feature that requires me to do some setup first?
When I download major release (0.8.0) on web it's there. But when Android Studio gives me notice to update to 0.8.2 it's gone.
Not using Android studio but GAE backends are being phased out and replaced with modules.
https://developers.google.com/appengine/docs/java/modules/converting
It seems you now have to create new module like File > New > Module > App Engine Backend with Google Cloud Mesaging

Unable to deploy Eclipse WTP EAR multi-module project to remote instance

I am creating a GAE application, and I am following the proposed structure of modularized GAE applications in Eclipse with WTP, as documented here (see section "Enterprise Application EAR").
I have created and linked a local server instance of GAE, and the deployment of the EAR with its modules to the GAE development instance at localhost works fine.
However, when I try to "Deploy to App Engine" (via the Google button) in order to release my app to the Google remote server, I am stuck with the error "...(EAR project name) is not an App Engine project". I have also tried to define a new server with a remote address, but this fails with the error "The currently selected server type does not support remote hosts". The host name's field is restricted to "localhost" as a valid server address.
My Eclipse project structure looks as follows:
<<Enterprise Application Project>> ear-app
|
-- <<Dynamic Web Project>> app-module-1
-- <<Dynamic Web Project>> app-module-2
-- <<Dynamic Web Project>> app-module-3
-- <<Dynamic Web Project>> app-module-4
Please note that this is not a single "Google / Web Application Project", which works as expected (but does not support modularization with multiple Eclipse projects).
Please also note that I am not using Maven and the proposed mvn commands, as documented here.
I am using the GAE SDK 1.9.3 and GPE 3.5.1 in Eclipse Kepler 4.3.1.
So how do I deploy the Eclipse WTP project structure to Google remote servers? If this is not possible, do you suggest that I switch to Maven, and if so, does this support a multi-module project to be managed from within Eclipse?
Rather by chance, I stumbled across the solution:
In the Servers view, and upon right-click of the local development server, there is another context menu entry "Google App Engine WTP / Deploy to Remote Server". This will deploy the EAR and all modules to the Google infrastructure. There is also a "Google App Engine WTP" button in the Servers view's menu, offering the same options.
Frankly, I find this a highly inconsistent UI implementation: If we create a project of type Google Web Application, then the Google button in the main menu is effective, and the context menus can be found as "Google...". These become invalid (but are still present) when we create a multi-module EAR structure in the WTP style. This will create a different set of buttons and context menu entries, all in different places, and the context menu of the LOCAL server would then support deployment to the REMOTE server.
UPDATE:
After using the GAE tools for a couple of weeks, I finally switched to the command line options (appcfg) for remote deployments. I had additional errors in GPE for deployment rollbacks (which fail in Eclipse but work with appcfg). I recommend appcfg as administration tool for the Google infrastructure, it provides more control and it is more mature than the Eclipse plugin.

Salesforce's Database.com and Google App Engine via JPA

Currently i try to connect (via JPA/Datanucleus) with an application, hosted by Google App Engine, to the database service of database.com (Salesforce)
After many hours of reading and trying, i could not find any solution.
So, is it even possible??
Some Information....
Database.com provides JPA: http://forcedotcom.github.com/java-sdk/jpa-provider, but i could not found any sdk on this side, but i found a jar-file hosted by grepcode http://grepcode.com/snapshot/repo1.maven.org/maven2/com.force.sdk/force-jpa/22.0.7-BETA/ - Possibly there is currently no official release ...
The problem is that this SDK from Salesforce needs datanucleus 2.0, but Google App Engine includes only datanucleus 1.1.5. So i try to update theses libaries and found this.... code.google.com/p/datanucleus-appengine/ . I tried a few hours to replace the old libaries and to use the newer, but unsuccessfully. The error was that eclipse could not find some libaries, because the newer libaries, provided by the side above, have different package structure -
I am thankful for any help...
Kotake
The official release of the JPA provider is available on Maven Central:
http://search.maven.org/remotecontent?filepath=com/force/sdk/force-jpa/22.0.7-BETA/force-jpa-22.0.7-BETA.jar
The external connection restriction won't be a limiting factor because the JPA adapter connects to Database.com over https using a SOAP API.
I can't speak to the challenges around getting DN 2.0 running on GAE. Perhaps GAE support can help with that?
As stated here in the App Engine docs, you cannot make direct connections to external servers from GAE (except over http or https using the app engine specific url APIs). You will need to find some other way to get data out of your remote database.
This link describes how to solve your problem:
How to use Force.com Database SDK on Google APP Engine
(He has updated the Saleforce SDK source code to allow it to work without problem on GAE.)

Resources