File APIs for Java Developers
Manipulate DOC, XLS, PPT, PDF and many others from your application.
http://aspose.com/file-tools
The moose likes JNLP and Web Start and the fly likes JNLP based application deployment Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login
JavaRanch » Java Forums » Java » JNLP and Web Start
Bookmark "JNLP based application deployment" Watch "JNLP based application deployment" New topic
Author

JNLP based application deployment

Girdher Singh
Greenhorn

Joined: Feb 12, 2012
Posts: 12
Hi ,

I am working on an application which is hosted on JBOSS server.When we click on the url in the browser then application gets downloaded and installed in the client pc.I tried hard to understand the application deployement process and menawhile I came up with a new requirement.In this requirement application will be packaged in a single installer file and will be pushed by a single person to the client pc's.Earlier my application was built in JNLP based deployment technology,as part of that when user clicks on the url then installed jawas(part of jre)started reading the jnlp files on that directory of server where we were trying to reach through the url.My doubts were here:-

1.How i can go ahead with this requirement.
2.In case of jnlp based deployement,is there any exe based files gets installed on client pc's,Here as far as i know jnlp files contained the jar files and refernces to othere jnlp files on the server.
During research of this questioin I came through a place where jnlp files gets deployed in client machine if i am not wrong.

C:\Users\mxs8028\AppData\LocalLow\Sun\Java\Deployment


Could any body answer my question .
Maneesh Godbole
Saloon Keeper

Joined: Jul 26, 2007
Posts: 9990
    
    7

Girdher Singh wrote:I came up with a new requirement.In this requirement application will be packaged in a single installer file and will be pushed by a single person to the client pc'

You need to clarify more on what you mean by "installer". Usually it indicates an msi/dmg/deb (on windows, mac, or *nix)
If you mean installer in this sense, a simple download link will do

JNLP differs from "installers". It downloads and runs the latest/jars dependencies from the server, every time you launch the application. Installer will install and use the resources installed on the client. One obvious drawback is in case of installer, you need to worry about the update yourself.

We have a forum dedicated for JNLP/JWS related questions. Moving...


[How to ask questions] [Donate a pint, save a life!] [Onff-turn it on!]
Paul Clapham
Bartender

Joined: Oct 14, 2005
Posts: 18129
    
    8

It sounds to me like formerly you were using JNLP (successfully? I can't tell) and now you want to switch to some other method of deployment. Is that correct?
Girdher Singh
Greenhorn

Joined: Feb 12, 2012
Posts: 12
Paul Clapham wrote:It sounds to me like formerly you were using JNLP (successfully? I can't tell) and now you want to switch to some other method of deployment. Is that correct?


absolutely correct..Now we want to change this to installer based application.Actually I did'nt know how this installation happens with jnlp.But Now we want to change this to .msi based installer.could you tell me how we can do so.
Girdher Singh
Greenhorn

Joined: Feb 12, 2012
Posts: 12
Maneesh Godbole wrote:You need to clarify more on what you mean by "installer". Usually it indicates an msi/dmg/deb (on windows, mac, or *nix)
If you mean installer in this sense, a simple download link will do


Here i did'nt get the meaning of download link.could you elaborate it more..

JNLP differs from "installers". It downloads and runs the latest/jars dependencies from the server, every time you launch the application. Installer will install and use the resources installed on the client. One obvious drawback is in case of installer, you need to worry about the update yourself.


How jnlp installs in the client machine could you explain me that process little bit more can i find the files gets installed after installation process gets completed, what could be the location for that.
Paul Clapham
Bartender

Joined: Oct 14, 2005
Posts: 18129
    
    8

Girdher Singh wrote:Now we want to change this to installer based application.Actually I did'nt know how this installation happens with jnlp.But Now we want to change this to .msi based installer.could you tell me how we can do so.


How jnlp installs in the client machine could you explain me that process little bit more can i find the files gets installed after installation process gets completed, what could be the location for that.


Could you please restrict the thread to one question only? If you want to use JNLP and understand implementation details, then fine, ask that question. But if you want to create an installer for your Java application instead, then ask about that. But two questions at the same time just leads to confusion.
Girdher Singh
Greenhorn

Joined: Feb 12, 2012
Posts: 12
Paul Clapham wrote:
Girdher Singh wrote:Now we want to change this to installer based application.Actually I did'nt know how this installation happens with jnlp.But Now we want to change this to .msi based installer.could you tell me how we can do so.


How jnlp installs in the client machine could you explain me that process little bit more can i find the files gets installed after installation process gets completed, what could be the location for that.


Could you please restrict the thread to one question only? If you want to use JNLP and understand implementation details, then fine, ask that question. But if you want to create an installer for your Java application instead, then ask about that. But two questions at the same time just leads to confusion.


OKay,My bad.Can we go ahead with the installer discussion.My requirement is to change the jnlp deployement to installer based installation.Could you tell something related to that
Paul Clapham
Bartender

Joined: Oct 14, 2005
Posts: 18129
    
    8

Okay. There are Java installers available and they've been around for quite a few years. So I assume (having never used them) they are pretty good products. Names I can find with a quick web search are Excelsior Jet, JSmooth, exe4j, install4j, launch4j.

Although I have to say, when people ask on forums how to create a native installer for Java code, the first answer is always "Well, you should really use Java Web Start, but...".
Girdher Singh
Greenhorn

Joined: Feb 12, 2012
Posts: 12
Paul Clapham wrote:Okay. There are Java installers available and they've been around for quite a few years. So I assume (having never used them) they are pretty good products. Names I can find with a quick web search are Excelsior Jet, JSmooth, exe4j, install4j, launch4j.

Although I have to say, when people ask on forums how to create a native installer for Java code, the first answer is always "Well, you should really use Java Web Start, but...".


Thanks for your reply, But since creating an installer is new for me. could you guide me on how should I move from jnlp deployment to installer.All the jnlp files contains reference to other jnlp files or they contain jar files . where should I refer for this structure, while creating the installer.
Ulf Dittmer
Marshal

Joined: Mar 22, 2005
Posts: 39548
    
  27
The specifics will depend on whichever installer software you choose. I'd start by perusing the documentation of that installer; definitely the commercial products, but I think also the open source ones, will have quite a bit of documentation on their web site.

If you have a specific question about a specific installer software, someone here may be able to help you.


Ping & DNS - updated with new look and Ping home screen widget
Jacob Anawalt
Ranch Hand

Joined: Oct 27, 2010
Posts: 32

Girdher, it sounds like you are saying "We once deployed our code via JNLP, but are now being told to deploy it via MSI. I don't really know how JNLP works, I just know that it worked. It is confusing with all its references either to JAR resources or to other JNLP resources. How do I convert my JNLP deployed code base to an MSI one and have it work?". Is that a fair assessment?

I wouldn't tackle this question from trying to understand every detail about how JNLP works, but instead on figuring out how to make my program work when launched as 'java -jar mymain.jar'. That includes figuring out what other jars you depend on and how to get them into your app's classpath.

Once you have that sorted, then you figure out which method of calling the code to make that happen is the one you want to use. (Eg. Double-click JAR file association, batch wrapper, or executable wrapper.) At that point you should be introducing yourself to the options that Paul mentioned, looking for one that gives you a single .msi file to distribute.


Jacob
Paul Clapham
Bartender

Joined: Oct 14, 2005
Posts: 18129
    
    8

Jacob Anawalt wrote:...the options that Paul mentioned...


Or other options. I just posted the results of my quick web search, but I'm sure there are quite a few other options that I didn't mention.
Martin Vajsar
Sheriff

Joined: Aug 22, 2010
Posts: 3436
    
  47

I've used launch4j and MakeMSI to create a MSI based install package for a Java application. These might not be the best options, but they worked for me.

Launch4j converts a Java application into an executable. I've wanted this mainly because I wanted to associate my application with a file extension in Windows.

MakeMSI then allows you to create a standard MSI file fairly easily, without necessarily understanding all the details about Windows Installer (and there are many). It is script-based and can be easily automated. There are samples which you can use to start with and modify for your needs.
 
I agree. Here's the link: http://aspose.com/file-tools
 
subject: JNLP based application deployment
 
Similar Threads
Chapter 2 (HFSJ) notes , may be useful for anyone
how does it work
deploying JNLP in Jetty web server of jboss.
Test 252: Mock exam
IBM HttpServer and websphere Appserver