User Guide Cancel

cfjava

 

Description

Provides support for writing Java code within ColdFusion.

Syntax

<cfjava
instance="handle"
</cfjava>
<cfjava instance="handle" </cfjava>
<cfjava 
    instance="handle" 
</cfjava>

History

Adobe ColdFusion (2021 release): New in this release.

Attributes

Attribute

Req/Opt

Description

Handle

Required

The variable that holds the value of class instance of the Java code.

Usage

You can create Java classes with a block of CFML code and execute the code. You can instantiate Java objects and write core Java constructs within a CFML block.

Example- Tag

<cfjava handle="classInstance" >
import java.io.*;
public class Harmless{
private String ss = "John";
public Harmless(String s){
this.ss = s;
}
public void write(String path) throws Exception{
File file = new File(path);
file.createNewFile();
FileWriter fr = new FileWriter(file, true);
BufferedWriter br = new BufferedWriter(fr);
PrintWriter pr = new PrintWriter(br);
pr.println("new content from java added " + this.ss);
pr.close();
br.close();
fr.close();
}
public String read (String path) throws Exception{
File file = new File(path);
BufferedReader objReader = null;
String strCurrentLine;
String cont = "";
objReader = new BufferedReader(new FileReader(path));
while ((strCurrentLine = objReader.readLine()) != null) {
cont= cont + "--" + strCurrentLine;
}
objReader.close();
return cont;
}
}
</cfjava>
<cfset classInstance.init("content from cf")> <!--- calling constructor using init()--->
<cfset path = ExpandPath('./') & 'temp.txt'>
<cfset classInstance.write(path)> <!--- Calling the method write() of Class Harmless --->
<cfoutput>#classInstance.read(path)#</cfoutput> <!--- Calling the method read() of Class Harmless --->
<cfjava handle="classInstance" > import java.io.*; public class Harmless{ private String ss = "John"; public Harmless(String s){ this.ss = s; } public void write(String path) throws Exception{ File file = new File(path); file.createNewFile(); FileWriter fr = new FileWriter(file, true); BufferedWriter br = new BufferedWriter(fr); PrintWriter pr = new PrintWriter(br); pr.println("new content from java added " + this.ss); pr.close(); br.close(); fr.close(); } public String read (String path) throws Exception{ File file = new File(path); BufferedReader objReader = null; String strCurrentLine; String cont = ""; objReader = new BufferedReader(new FileReader(path)); while ((strCurrentLine = objReader.readLine()) != null) { cont= cont + "--" + strCurrentLine; } objReader.close(); return cont; } } </cfjava> <cfset classInstance.init("content from cf")> <!--- calling constructor using init()---> <cfset path = ExpandPath('./') & 'temp.txt'> <cfset classInstance.write(path)> <!--- Calling the method write() of Class Harmless ---> <cfoutput>#classInstance.read(path)#</cfoutput> <!--- Calling the method read() of Class Harmless --->
<cfjava handle="classInstance" > 
import java.io.*;  
public class Harmless{  
   private String ss = "John"; 
   public Harmless(String s){ 
          this.ss = s; 
    } 
   public void write(String path) throws Exception{ 
     File file = new File(path); 
     file.createNewFile(); 
     FileWriter fr = new FileWriter(file, true); 
     BufferedWriter br = new BufferedWriter(fr); 
     PrintWriter pr = new PrintWriter(br); 
     pr.println("new content from java added " + this.ss); 
     pr.close(); 
     br.close(); 
     fr.close(); 
  } 
public String read (String path) throws Exception{ 
     File file = new File(path); 
     BufferedReader objReader = null; 
     String strCurrentLine; 
     String cont = ""; 
     objReader = new BufferedReader(new FileReader(path)); 
     while ((strCurrentLine = objReader.readLine()) != null) { 
       cont= cont + "--" + strCurrentLine; 
     } 
     objReader.close(); 
     return cont; 
  } 
} 
</cfjava> 
<cfset classInstance.init("content from cf")> <!--- calling constructor using init()---> 
<cfset path = ExpandPath('./') & 'temp.txt'> 
<cfset classInstance.write(path)> <!--- Calling the method write() of Class Harmless ---> 
<cfoutput>#classInstance.read(path)#</cfoutput> <!--- Calling the method read() of Class Harmless --->

Example- Script

<cfscript>
classInstance = java{
public class class1{
public int execute ()
{
int[] arr;
arr = new int[5];
arr[0] = 10;
arr[1] = 20;
arr[2] = 30;
arr[3] = 40;
arr[4] = 50;
return arr.length;
}
}
}
writeoutput(classInstance.execute())
</cfscript>
<cfscript> classInstance = java{ public class class1{ public int execute () { int[] arr; arr = new int[5]; arr[0] = 10; arr[1] = 20; arr[2] = 30; arr[3] = 40; arr[4] = 50; return arr.length; } } } writeoutput(classInstance.execute()) </cfscript>
<cfscript> 
 classInstance = java{ 
 public class class1{ 
      public int execute () 
      { 
  
        int[] arr; 
        arr = new int[5];  
        arr[0] = 10; 
        arr[1] = 20;  
        arr[2] = 30; 
        arr[3] = 40; 
        arr[4] = 50;  
        return arr.length; 
    } 
  
  } 
} 
 writeoutput(classInstance.execute()) 
</cfscript>

Output

5

Get help faster and easier

New user?