';没有方法'的签名;尝试使用Groovy在项目中设置属性值时
尝试在项目级别设置属性时遇到以下问题 没有方法的签名:com.eviware.soapui.impl.wsdl.WsdlProject.setPropertyValue()适用于参数类型:(java.lang.String,java.math.BigDecimal)值:[TitleId,1]可能的解决方案:setPropertyValue(java.lang.String,java.lang.String),getPropertyValue(java.lang.String) 当我第一次用“rs”设置项目属性时,代码会工作,但是第二次它拒绝存储它并返回上面的错误消息 条件查询如下所示:';没有方法'的签名;尝试使用Groovy在项目中设置属性值时,groovy,Groovy,尝试在项目级别设置属性时遇到以下问题 没有方法的签名:com.eviware.soapui.impl.wsdl.WsdlProject.setPropertyValue()适用于参数类型:(java.lang.String,java.math.BigDecimal)值:[TitleId,1]可能的解决方案:setPropertyValue(java.lang.String,java.lang.String),getPropertyValue(java.lang.String) 当我第一次用“rs
if (rs !=null) {
log.info ("Result " + (rs[0]))
project.setPropertyValue("TitleId", rs[0]); //this works
}
else {
def cdsTitle = "SELECT TITLE_TYPE, TITLE_TEXT FROM PARTY WHERE PARTY_KEY ='" + context.expand('${#Project#PartyKey}') + "'";
def titleType= sqlCDS.firstRow(cdsTitle)
project.setPropertyValue("TitleId", titleType[0]); //This is the statement which causes the error message
}
“titleType”返回两个值,我试图将其设置为第一个值,即“[0]”。我曾尝试将此值存储在它自己的变量中,并使用它来设置属性,但这仍然会出现错误,并显示相同的错误消息
i、 e
任何帮助都将不胜感激。谢谢看来
rs[0]
(作为第二个参数)有一个正确的类型,并且(正如您所写的)它被接受了
然后程序沿着else路径运行,并使用标题类型[0]
作为第二个论点
您确定它的类型相同吗
仔细查看错误消息:
No signature of method: ... is applicable for argument types:
(java.lang.String, java.math.BigDecimal) values: [TitleId, 1]
上述信息说:
- 第一个参数是
(我假设一个字符串,它被接受)TitleId
- 第二个参数是
(值为1的一个大十进制数),可能在那里 类型有问题1
也许您应该将其转换为另一种类型?标题类型[0]。toString()似乎可以解决此问题您好,谢谢您的帮助。是的,rs和titletype都有相同的值,即它们都被设置为一个数字,我能看到的唯一区别是rs只存储了一个值,即{CODE_ALIAS=1},我从中检索“1”。但是titleType有两个反对它的参数,例如{TITLE_TYPE=1,TITLE_TEXT=Mr},我试图检索'1',在这两种情况下,值都是1。但在这两种情况下检索到的值的类型如何呢?将被分类为字符串。我已通过添加标题类型[0]使其正常工作。toString():)
No signature of method: ... is applicable for argument types:
(java.lang.String, java.math.BigDecimal) values: [TitleId, 1]