Barcode128错误 - "没有指定方法名称和参数类型的方法"

Sam*_*all 1 coldfusion coldfusion-9

我有这个脚本在ColdFusion中生成一个条形码:

<cfscript>
   code128 = createobject("java","com.lowagie.text.pdf.Barcode128");
   code128.setCodeType(code128.CODE128);
   /* Set the code to generate */
   code128.setCode("123")
   color =  createobject("java","java.awt.Color");
   image = code128.createAwtImage(color.black, color.white);
   bufferedImage = createObject("java", "java.awt.image.BufferedImage");
   bufferedImageType = bufferedImage.TYPE_BYTE_GRAY;
   bufferedImage = bufferedImage.init(image.getWidth(JavaCast("null", "")),image.getHeight(JavaCast("null", "")), bufferedImageType);
   graphics2D = bufferedImage.createGraphics();
   graphics2D.drawImage(image,0,0,JavaCast("null", ""));
   barcodeImage = imageNew(bufferedImage);
</cfscript>

<!--- Output the code as an image --->
<cfimage action="writeToBrowser" source="#barcodeImage#" format="jpg" width="100" height="30">
Run Code Online (Sandbox Code Playgroud)

我想改变code128.setCode("123")一些动态的东西,即code128.setCode("#someID#").但是,当我这样做时,我收到一个CF错误:

错误消息:没有具有指定方法名称和参数类型的方法,或者setCode方法使用ColdFusion无法可靠解密的参数类型重载.ColdFusion找到了0个与提供的参数匹配的方法.如果这是一个Java对象并且您验证了该方法存在,请使用javacast函数来减少歧义.

有人可以帮我这个吗?

小智 6

尝试传递这样的值

code128.setCode(JavaCast("string", someID));
Run Code Online (Sandbox Code Playgroud)