我一直在努力解决这个问题,似乎无法为这些错误找到任何体面的答案或解释。我正在使用第 3 方 JAR“PropHandler.jar”我正在尝试调用 getMessageList 方法,它接受 3 个参数并需要一个配置文件。
<cfset configFile = 'C:\data\getMsgListCONFIG.xml'>
<cfset Obj = createObject("java","client.PropHandler") />
<cfdump var="#Obj#">
一切都很好,我的转储返回一个方法列表。现在,我需要将我的配置文件传递给该方法并传入我的参数,这里不爱,我已经尝试过:
<cfset x = Obj.getMessageList.init(configFile)>
和
<cfset x = Obj.getMessageList().init(configFile)>
和
<cfset x = Obj.getMessageList('identifier', 'greaterthan', '2012-05-18T12:00:00-04:00').init(configFile)>
甚至尝试通过创建对象进行初始化:
<cfset Obj = createObject("java","client.PropHandler").getMessageList('identifier', 'greaterthan', '2012-05-18T12:00:00-04:00').init(configFile)>
全部返回相同的错误:
对象实例化异常
实例化 Java 对象时发生异常。该类不能是接口或抽象类。如果类具有接受参数的构造函数,则必须使用 init(args) 方法显式调用构造函数。错误:client.PropertyHandler
当我不发送 3 个参数时,我得到一个方法未找到错误,如果我不发送 init,我会得到同样的错误。
所以,我没有太多的 JAVA 经验,我不明白错误信息。从命令行调用时,甚至使用 BAT 文件执行时,我都可以很好地使用 JAR,但是当我这样做时,我无法将 XML SOAP 数组返回给我......
来自 Java 文档:
属性处理程序
public PropertyHandler(java.lang.String propFile) throws java.lang.Exception
使用属性文件设置所有程序变量。此属性文件指的是标识用户 ID 和安全文件数据的第二个属性文件。
参数:
propFile
- 属性的 XML 文件抛出:
java.lang.Exception
获取消息列表
public services.[...].GetResponseTypeDef getMessageList(java.lang.String par1, java.lang.String comp_Op1, java.lang.String parValue1 )
覆盖 X_Properties 以返回有关满足函数参数定义的查询的每条消息的元数据列表。
参数:
par1
- 参数枚举之一comp_Op1
- CompOp 枚举之一parValue1
- 比较值回报:
满足查询条件的元数据消息列表 如果遇到异常而不是抛出异常,则返回 null。