How to deploy java application using java web start, any suggestion for pdf file which I can read and do ?
Here is a step-by-step tutorial here below, which shows how to create the .jnlp for a simple app, signing and packaging the .jar:
http://www.mkyong.com/java/java-web-start-jnlp-tutorial-unofficial-guide/
For reference, the java-web-start tag itself is a convenient way to learn moreā¦
Related
I am beginner for Google App Engine.
I have simple java application with a class in which there is main method which executes some threads.
Actually, it's Java application which is used to execute some back-end activities.
On my Linux server, i have created a cron job which executes this class at some specific time interval.
Now, I want to move this application to Google App Engine.
I did search about that and what i find is i have to convert this java application to web application to deploy on GAE.
Please guide me how i can deploy JAR to GAE.
Thanks
Yes, your java application needs to be a web application. That is, you'd need to have a WEB-INFO directory within your jar, with the correct xml files (i.e. web.xml and appengine-web.xml).
Please, start by following one of the tutorials here:
https://cloud.google.com/appengine/docs/java/gettingstarted/introduction
You also mentioned that you use threads in your application. I believe that on App Engine you cannot just create threads, and instead you need to rely on the provided threads api:
https://cloud.google.com/appengine/docs/java/javadoc/com/google/appengine/api/ThreadManager
Thus, some of your code will need to be changed to use such an api.
Finally ! i figured out the solution without using Google App Engine and just using Google Compute Engine.
I created a JAR and put it into my home folder using SFTP.
After that i created a cron file at /etc/cron.d/myfile as below
*/10 * * * * myusername java -jar /home/myusername/myjar.jar
Then i reload the crontab
sudo service cron reload
That's it ! Thanks for your input and interest !
If you mean just a simple JAR with a main method, that won't work. Your application has to be a web service that responds to requests.
Check this link to create an app using JAR file:
APP-ENGINE
You cannot deploy a single jar file to App Engine. You can deploy an application.
This tutorial explains how to create an App Engine project in Java:
https://cloud.google.com/appengine/docs/java/gettingstarted/introduction
Yes, you can only deploy web applications to Google App Engine, so you may have to convert your class into a Servlet class if you want to deploy it to App engine.
You can use the Servlet's url if you are looking to execute it as a cron job, so you can configure this url in a file cron.xml by specifying the frequency and time when cron job should be executed before deploying.
You can use the link below which will guide you through the steps :
http://www.vogella.com/tutorials/GoogleAppEngineJava/article.html
Google's documentation on Cron Job :
https://cloud.google.com/appengine/docs/java/config/cron
You can not however use threads when working with App Engine.
I have installed Eclipse Java EE Luna Release (4.4.0) and App Engine SDK 1.9.10
I have created a new Google - Web Application Project and selected the Generate Project Sample Code option. I changed nothing about the project.
The generated project successfully deploys and runs locally. However when I deploy this to AppSpot I get an error message "Remote Procedure Call - Failure" when clicking on the "Send" button on the sample form.
Are there other steps I need to perform in order for the generated project to be successfully deployed to AppSpot?
My goal is to have a starting application that deploys so I can start learning to use Objectify and GWT to build applications. If there is a better way to go about this please suggest it.
Kind regards
Sean
I think seem to remember that sample code for the GWT builds a RPC-based HelloWorld or greeting example. In the auto-generated sample interface you type a name, a RPC call is made to server side and you get "Hello"+yourName or similar as a callback.
Check this link:
http://www.gwtproject.org/doc/latest/tutorial/appengine.html
This is a more advanced app, StockWatcher, from the GWT tutorials which is also RPC based and adapted for the GAE. You could start here: http://www.gwtproject.org/doc/latest/tutorial/gettingstarted.html to build this app (is really easy) and follow to the link above to deploy StockWatcher on the GAE, or check directly the steps on the first link and try to deploy the GWT "Greetings" example.
If you have already tried this or you do and there's still a problem, please provide the full stack trace, or the code you think might be causing the problem, so we have a better insight of the problem.
Is there anyone that has done a java interpreter using groovy-all jar file? Maybe sample or example can share it to me or teach me? I meant a interpreter that can parse string(java code) into the textarea and output it as a result like(hello world)
As you need some sample code to implement a web-console using groovy-all.jar, it would strongly recommend taking a look at Groovy Web Console.
Although it's not exactly a Java EE / Tomcat app and it is fairly similar as its a standard Java Servlets API 2.5 based web app. It runs on Google App Engine, which you can try out here. All you need from it is the script execution logic which for most of the part is not app engine specific. Keep in mind, it has dependencies on GAE Apis (through Gaelyk) so you should prune that part out of it to run in it outside Google App Engine.
i have installed the glassfish eclipse tools bundle...
i can start a project like dynamic web & a ear project and deploy them on the glassfish... it works perfect & under the localhost url i will get an hello world
but how i do this if i want to make an application client. please help...
at the moment i simply created an "app client project in eclipse" & added it to the same ear,
but i have no idea how to start this...
help - any tutorial how to start?!!
Not the only only answer to this question but the appclient approach mentioned in Jeff's answer is a viable approach, but I was able to execute a client using this mechanism in eclipse and I wanted to share that approach.
This approach will let you execute a java application with a main method acting as a client.
What you want to do is setup an External Tools Configuration.
Create a new Program type of external tool configuration.
Set location to point to the path of the appclient, for me
(using embedded glassfish eclipse plugin) it was [PATH TO ECLIPSE]\plugins\oracle.eclipse.runtime.glassfish_3.1.1.0\glassfish3\glassfish\bin\appclient.bat
Set working directory to your output/build directory e.g.
${project_loc}/target/classes
Set arguments to ${java_type_name}
Select the class in your project with a main method that you wish to run as the client app and then select your external tool from the run external tools menu.
There are two ways to do it. I'm afraid I can't be very specific, but I can point you in the right direction. (I'm just learning myself)
You can enable Web Start for the application client EAR in GlassFish. You can do this either in the deployment descriptor (so it's enabled every time you deploy) or you can go into the GlassFish admin console, navigate to the Application, and check the checkbox to enable it. I have made a little progress on this approach.
You can run it manually from the command line using, I believe, the "appclient" command. I have not been able to get this working yet.
Good luck, and if you learn more, I'd appreciate it if you let me know since I'm in the same boat as you.
Jeff
Ive installed the Google Plugin for Eclipse and created a demo project using App Engine and GWT. Now I want to launch and see it. But after compile nothing else happens. Shouldn't there be an integrated browser that shows the app?
You need to right click on the project name and hit run > web application. Compiling it is for deployment, and most likely not what your looking for from running. The key differences here are hosted mode handles the cross-compilation for you, while compiling is meant for deployment of the javascript to your web server.
As far as I know, you just point your browser (any browser) to http://localhost:8080. Is that not working for you?
I get it running externally on the command line with
dev_appserver .
or to upload to the google site
appcfg update .
for python they're .py files and for java their .cmd calls
wish I could mix and match my languages/GAE environments
You can right click your project and goto Run as > Web Application.
You can see that a local Jetty Server.
You can manually type the address http://localhost:8888 or you can access through cmd