DoJa profile is a Java application environment specification for DoCoMo's i-mode mobile phone.
DoJa is based on the Java ME CLDC API that is defined in the Java Community Process (JCP). DoJa is a profile defined by NTT DoCoMo to provide communications and other input-output processing, user interface (GUI) and other application features/functions unique to i-mode, and extension libraries defined by individual phone terminal makers to add original functions. However, in contrast with other Java ME profiles like Mobile Information Device Profile (MIDP) or Information Module Profile (IMP), DoJa is not defined as a Java Specification Request (JSR), hence it is often called a "proprietary" Java ME profile.
DoJa allows i-mode to offer more dynamic and interactive content than conventional HTML-based i-mode content. Java for i-mode consists of support for a version of CLDC and a version of the DoJa profile. CLDC support can be 1.0 or 1.1 depending on the handset. The DoJa profile was originally created for the local Japanese market with version 1.0 and version 2.0 more or less corresponding to MIDP 1.0 and MIDP 2.0. For the market outside Japan a new API has been created, which is referred to as the Overseas Edition. Currently DoJa 1.5oe and DoJa 2.5oe are implemented on handsets sold in Europe. (The first DoJa handset with DoJa1.5oe is N341i launched in 2003 from NEC, and the first DoJa 2.5 handset is M430i launched in the beginning of 2005 from Mitsubishi.) The DoJa Profile provides for use with i-mode extension library (Java for i-mode profiles), including user interfaces and HTTP communications.