What is MIME type "application/x-java-jnlp-file"?

A MIME type is a string that tells browsers and other tools how to handle a particular kind of file.

The MIME type application/x-java-jnlp-file marks a file that follows the Java Network Launching Protocol. It tells your system that the file should be processed using Java Web Start.


A JNLP file is an XML document. It provides instructions for launching a Java application from a remote server.



The file works only if a compatible Java runtime is installed. It is central to Java Web Start, which downloads and runs Java applications without a traditional installer installation.


More details are available on the Oracle Java Web Start page.

Associated file extensions

Usage Examples

HTTP Header

When serving content with this MIME type, set the Content-Type header:


    Content-Type: application/x-java-jnlp-file    
  

HTML

In HTML, you can specify the MIME type in various elements:


    <a href="file.dat" type="application/x-java-jnlp-file">Download file</a>    
  

Server-side (Node.js)

Setting the Content-Type header in Node.js:


    const http = require('http');    
    
    http.createServer((req, res) => {    
      res.setHeader('Content-Type', 'application/x-java-jnlp-file');    
      res.end('Content here');    
    }).listen(3000);    
  

Associated file extensions

FAQs

How do I configure my web server to serve JNLP files correctly?

You must map the .jnlp extension to the application/x-java-jnlp-file MIME type in your server configuration. for Apache, add AddType application/x-java-jnlp-file .jnlp to your .htaccess file; for Nginx, include application/x-java-jnlp-file jnlp; within your mime.types file.

Why does my browser download the JNLP file instead of running the application?

Modern browsers (Chrome, Edge, Firefox) have removed support for NPAPI plugins, preventing them from automatically launching Java Web Start. You must now manually open the downloaded .jnlp file using the Java Web Start Launcher (javaws) executable on your local machine.

What software do I need to open a file with the application/x-java-jnlp-file type?

These files require a Java Runtime Environment (JRE) that includes Java Web Start. Since Oracle removed Web Start in Java 11, users on modern systems often use the open-source alternative OpenWebStart to process these files.

Is the application/x-java-jnlp-file MIME type text or binary?

The content is text-based XML. Although the MIME type indicates a specific application usage, the underlying format is standard XML structure containing codebase URLs, main class definitions, and resource requirements.

How do I fix 'Application Blocked by Java Security' errors for JNLP files?

This error occurs when the remote application is unsigned or self-signed. To bypass this, open the Java Control Panel, navigate to the Security tab, and add the website's URL to the Exception Site List.

What is the relationship between JNLP and the .jar file extension?

The JNLP file acts as a descriptor or "launcher" script, while the .jar files contain the actual compiled code. The application/x-java-jnlp-file tells the system how to download and run the application/java-archive files referenced inside the XML.

General FAQ

What is a MIME type?

A MIME (Multipurpose Internet Mail Extensions) type is a standard that indicates the nature and format of a document, file, or assortment of bytes. MIME types are defined and standardized in IETF's RFC 6838.

MIME types are important because they help browsers and servers understand how to process a file. When a browser receives a file from a server, it uses the MIME type to determine how to display or handle the content, whether it's an image to display, a PDF to open in a viewer, or a video to play.

MIME types consist of a type and a subtype, separated by a slash (e.g., text/html, image/jpeg, application/pdf). Some MIME types also include optional parameters.

How do I find the MIME type for a file?

You can check the file extension or use a file identification tool such as file --mime-type on the command line. Many programming languages also provide libraries to detect MIME types.

Why are multiple MIME types listed for one extension?

Different applications and historical conventions may use alternative MIME identifiers for the same kind of file. Showing them all helps ensure compatibility across systems.