# JAVA

CreateObject allows you to create and use JAVA objects, and by extension EJB objects.

This support is currently only for NT, but will be extended to Solaris in the next release.

### Syntax

    CreateObject("JAVA", class)

#### class

Required. Specifies the Java class.

### Usage

To be able to call Java CFXs or Java objects, ColdFusion uses a JVM embedded in the process. The loading, location and the settings for the JVM are configurable using the ColdFusion Administrator pages.

Any Java class available in the class path specified in the CF Administrator can be loaded and used from ColdFusion using the CreateObject function.

Use the following steps to access Java methods and fields:

1. Call CreateObject or CFOBJECT to load the class.

2. Use the init method with appropriate arguments to call a constructor explicitly. For example:

            <CFSET ret = myObj.init(arg1, arg2)>

Calling a public method on the object without first calling the "init" method results in an implicit call to the default constructor. Arguments and return values can be any valid Java type (simple, arrays, objects). ColdFusion does the appropriate conversions when strings are passed as arguments, but not when they are received as return values.

Overloaded methods are supported as long as the number of arguments are different. Future enhancements will let you use cast functions that will allow method signatures to be built more accurately.