What is MIME type "text/vnd.sun.j2me.app-descriptor"?

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

The MIME type text/vnd.sun.j2me.app-descriptor marks a descriptor file for Java 2 Micro Edition mobile apps. It is a plain text file that holds key information about the application.

This descriptor file, typically seen with the extension JAD, lists details like the application's name, version, maker, and required permissions. It guides the device’s installation process by pointing to the actual app package (commonly a JAR file).


For more information on file types, visit this page.

Associated file extensions

Usage Examples

HTTP Header

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


    Content-Type: text/vnd.sun.j2me.app-descriptor    
  

HTML

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


    <a href="file.dat" type="text/vnd.sun.j2me.app-descriptor">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', 'text/vnd.sun.j2me.app-descriptor');    
      res.end('Content here');    
    }).listen(3000);    
  

Associated file extensions

FAQs

How do I configure my web server to support JAD files?

To allow Over-The-Air (OTA) installation of Java apps, your server must send the correct header. For Apache, add AddType text/vnd.sun.j2me.app-descriptor .jad to your .htaccess file. For Nginx, add text/vnd.sun.j2me.app-descriptor jad; inside your mime.types file or server block.

What is the difference between text/vnd.sun.j2me.app-descriptor and application/java-archive?

The text/vnd.sun.j2me.app-descriptor (JAD) is a small text file containing metadata describing the application, while the application/java-archive (JAR) contains the actual executable code and assets. The JAD file helps the device verify requirements before downloading the larger JAR file.

Can I open a file with this MIME type on a PC?

Yes, because the media type starts with text/, you can open any .jad file using a standard text editor like Notepad or TextEdit. You will see readable properties like MIDlet-Name and MIDlet-Jar-URL rather than binary code.

Why do I get a "JAR size mismatch" error when installing?

This common error occurs when the MIDlet-Jar-Size property inside the JAD file does not exactly match the file size (in bytes) of the linked JAR file. If you update the application code, you must also update the descriptor file to reflect the new size.

Is the text/vnd.sun.j2me.app-descriptor MIME type still relevant?

It is considered a legacy type primarily used for Java ME (J2ME) feature phones and older embedded devices. Modern smartphones (iOS and Android) do not use this system, but it is still necessary for maintaining archives of retro mobile games and applications.

How do I fix IIS 404 errors when downloading .jad files?

Microsoft IIS does not serve unknown file types by default. You must manually add a MIME mapping in the IIS Manager: set the file extension to .jad and the MIME type to text/vnd.sun.j2me.app-descriptor to resolve the 404 error.

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.