How to deploy and run javafx application in tomcat - java

I have a requirement in my application ,Running the javafx application in browser from web-server. how can i achieve this thing.
Thanks in advance.

Solution
Place a copy of the jar, jnlp and html file output by the NetBeans build into a directory of your webserver, then access the html file in your browser.
For example, let's say you called your application MyPowerApp and netbeans output MyPowerApp.html and you wanted to deploy that to a local Tomcat server.
Download and install a copy of Tomcat (http://tomcat.apache.org/download-70.cgi)
Copy the jar, jnlp and html file into tomcat's webapps/ROOT directory.
Start tomcat.
Access your application via http://localhost:8080/MyPowerApp.html
The applet will start automatically and you can click on the link to launch the application via WebStart.
To update the application just rebuild it in NetBeans, copy it over into the tomcat webapps/ROOT directory and refresh your browser link (no need to restart Tomcat).
In practice you will want to modify the html rather than use the generated html to embed either the applet or WebStart link somewhere on your website (you won't need both execution modes in a single page like the Netbeans generated sample).
Background
JavaFX applications do not run in Tomcat.
Tomcat can be used to host a html page embedding a JavaFX application jar. A browser with the JavaFX plugin installed and activated can download the the JavaFX application from Tomcat and execute the application in the browser window using a Java runtime environment installed on the client browser machine. See the JavaFX Deployment Guide for more details and the JavaFX deployment quick start for short info on getting started.
Note that getting JavaFX to work correctly in a browser across a wide range of client machines may prove a difficult task for you, so you may want to investigate alternate deployment methods as outlined in the JavaFX deployment guide (such as WebStart, Standalone or Self-contained application deployment modes).

Related

Deploy java web application to Tomcat with Visual Studio Code

I'm trying to deploy a java web application to Tomcat using Visual Studio Code and I'm having some issues that I'd like to share.
After installing the extension Tomcat for Java, I've tried to deploy a Maven Java Web project. To do so, I've clicked over project's folder and selected "Run on Tomcat Server" option. The result is an error with this message: The folder is not a valid web app to run on Tomcat Server.
Then, I've realized that maybe I should create a war file before running it on Tomcat. Therefore, I've executed mvn clean package command and afterwards execute "Run on Tomcat Server" option over the war file. Doing this the project has been deployed correctly.
However, compared to Eclipse's way to work with Tomcat, it seems to me a bit tedious. Particularly if I'm working with static files, like css or js, because every time I modify a file I should execute mvn clean package and "Run on Tomcat Server". Whereas, in Eclipse, these files are deployed automatically on Tomcat without restarting.
I wonder if there is another way to work with VS Code and Tomcat for Java.
Thanks!
If you use Spring, there is an easy way.
The Spring Initializr extension comes with an embedded Tomcat installation, and hot reloading works out of the box.
Rely on the following guide to install it:
https://code.visualstudio.com/docs/java/java-spring-boot

How can I package a Tomcat server into a standalone, double-clickable package?

I have a simple Tomcat Server set up in Eclipse on a Windows 7 machine. Eclipse by default uses metadata to deploy Tomcat server instances without having to take over the Tomcat installation folder (and allowing multiple parallel servers, provided they don't try to use the same ports). In order to start my server up, I have to open Eclipse, build my project, and start the server my project is assigned to in the Servers view.
I would like to start this same server up:
Without having to open Eclipse
With a single action, preferably double-clicking a file on my desktop.
With its own console window
I've looked into making Java programs into standalones, and the most common suggestion is to package it into a runnable .jar file. This uses a Launch configuration, which doesn't really work for my case because the server has no associated Launch configuration; to run it you start a Server rather than clicking run.
Is there a built-in way in Eclipse to make the server equivalent of a runnable .jar? That is, is there a built-in way in Eclipse to package a Tomcat server to run as a stand-alone?

How to Deploy Eclipse servlet in mozilla or chrome browser? [duplicate]

I have create My First "Hello World" Servlet in Eclipse.
It is running properly in Eclipse Browser.
I'm using Apache Tomcat, and it is also running properly.
How can I deploy my Servlet in Web browser like Internet Explorer, Chrome, Mozilla Firefox etc? I don't want to deploy my servlet in Eclipse browser.
You don't deploy to a browser. You deploy to a server. Just deploy to server and start the server the usual way (as you did in Eclipse). Then, just enter the servlet's URL in the address bar of the webbrowser of your choice yourself. It can be exactly the same URL as you see in Eclipse browser's address bar. If necessary, bookmark this URL in your favourite webbrowser so that you don't need to copypaste/enter it yourself everytime.
Go to Window menu in eclipse then click on "web browser" then click on "Internet explorer".That't it.....
Firstly, servlets are not deployed in Browsers, they are deployed on server and accessed through browsers.
Secondly: what you can do is, just copy paste the URL from eclipse browser to mozilla or chrome to access your servlet. All that you have to make sure is that the tomcat server configured in your eclipse and on which application containing this servlet is deployed, is up and running.
If you want to access this without eclipse tomcat, goto the local tomcat installation, you should have a deploy folder there, create a war file of your webapplication and copy it to the deploy folder and start te tomcat server.
You deploy application in WebServer (Tomcat in your case) not in browsers.
In eclipse, add your application in tomcat server (in servers view), start the server and open a browser of your choice.
Then put in url http://localhost:8080/NameOfYourServlet
Just copy the url from eclipse browser and paste on url bar of which browser you need. There is no separate deploy for each browser. Another thing you can change your eclipse default browser.If you changed, project will start in browser you selected instead of eclipse browser.

Windows Azure application in Java and JSF

I wrote web application using JSF, xhtml, CSS and Apache Tomcat in Eclipse and I want to start it on Windows Azure emulator. I installed "Windows Azure plugin for eclipse" (here is instruction).
When I choose option "Package for Windows Azure" and I want to run application on WA emulator everything is ok - I see information on console "BUILD SUCCESSFUL", server started etc. But when I type application url adress on web browser, it displays
HTTP status 404 The requested resource (/ChatAzure/) is not available.
How is this caused and how can I solve it?
sounds like your app might not be getting into Tomcat's webapps. One way to troubleshoot is AFTER you try to run it in the emulator, go into your Azure project's "deploy" folder, navigate the folder hierarchy until you get to the specific role folder (like WorkerRole1 if using default names) go inside approot, find the tomcat folder in there, and look into its webapps folder. You can see the effects of your deployment logic this way. If your app isn't inside webapps, there may be an app deployment problem.
(The actual directories may be different depending on how you've customized the deployment logic)

Trying to use tomcat with eclipse

I am trying to use tomcat with eclipse. I have installed it all and got the tomcat plugin installed. I have put a .war file in the webapps folder of tomcat and have made sure autodeploy is set to true. The problem I am having is that I can't get tomcat to run this .war file. The tomcat server is started and running as it tells me under the servers tab at the bottom of eclipse. It also shows the name of my .war file under it and says synchronized meaning it at least knows its there. But I can't get it to work at all. Even when I go to the local host page it shows the title of apache tomcat but does not show the file. I want it to show me the .war file. It has the correct xml files and everything in it. Any help is much appreciated.
You may try to check whether the application is deployed or not. You can directly go to the Tomcat directory to see this.
Another possible thing could be, you might be typing the incorrect url.
http://localhost:8080/[your_application]
where 8080 is the port you have specified for tomcat.
You need to let Eclipse publish your web project for you when using the Eclipse Tomcat plugin instead of trying to manually deploy it youself.
The Tomcat plugin for Eclipe supports hot deployment whereby you can change jsp's etc without having to manually redeploy your web application.
If you have a valid web project in eclipse then you can check that it is being deployed by looking at the Server View.
Window, Show View, Other, Server
This window should contain details of your Apache server. (If no server is listed then you'll need to right click on the list and set one up.)
To check that your application is being deployed right click on your server and select Add/Remove projects. Check that your web project is listed. If it is not listed under Configured Project then add it.
If your project does not appear in the list then it probably wasn't setup as a Dynamic Web Project. You can fix this by by right clicking on the project to bring up project properties and then clicking on facets and then enabling Dynamic Web Project.
It is also worth having the Console view visible when starting/stopping Tomcat so that you can see the server output.
Start tomcat from the command line (not eclipse) and see if your webapp shows up. It should if you have indeed created a valid war file. If it doesn't work, check the logs.
You shouldn't be manually deploying the war file if you are using eclipse to launch tomcat. Running tomcat from eclipse does not necessarily use the same default workspace as the standalone tomcat. Check the configurations for the 'server': it may be that the eclipse launched server's webapp folder is empty.
If for some reason your webapp failed to initialize properly (error in the descriptor, an uncaught exception in a context listener, ...) tomcat will unload it and you won't see anything at http://localhost:8080/yourwebapp.
Is it there in the list of applications in tomcat manager?
if you havent done this...then follow the steps...
Go to http://localhost:8080/
Go to Tomcat manager and check if your application is there in the list of deployed applications. Try redeploying or starting the application if running=false. It usually tells you what is wrong when you do that.

Categories