响应消息:java.sql.SQLException:无法转换为内部表示:jmeter

Posted

技术标签:

【中文标题】响应消息:java.sql.SQLException:无法转换为内部表示:jmeter【英文标题】:Response message: java.sql.SQLException: Fail to convert to internal representation: jmeter 【发布时间】:2018-07-05 17:47:59 【问题描述】:

我想知道如何在 jMeter 中为 oracle 存储过程传递数组值。

以下详细信息已设置,但无法正常工作。请帮助我。

Oracle PL/SQL:

PROCEDURE Get_User(
   p_input1                     IN  VARCHAR2,
   p_input2                     IN  VARCHAR2,
   p_input3                     IN  VARCHAR2,
   p_input4                     IN  SCHEMA.TABLE1.COLUMN1%TYPE,
   arr_user_names               IN  SCHEMA2.CUSTOM_TYPE_TABLE,
   p_user_name_out              OUT VARCHAR2,
   p_address_out                OUT SCHEMA.TABLE1.COLUMN1%TYPE,
   arr_result_set               OUT SYS_REFCURSOR);


create or replace type CUSTOM_TYPE as object( name VARCHAR2(30),salary  NUMBER(5,2));

create or replace type CUSTOM_TYPE_TABLE is table of CUSTOM_TYPE;

查询:

call SCHEMA1.PKG1.Get_User(?,?,?,?,?,?,?,?)

参数值:

INVAL1,INVAL3,INVAL3,INVAL4,'users':['name':'all'],OUT,OUT,OUT

参数类型:

VARCHAR,VARCHAR,VARCHAR,VARCHAR,ARRAY,OUT VARCHAR,OUT VARCHAR,OUT -10

变量名称:

p_input1,p_input2,p_input3,p_input4,arr_user_names,p_user_name_out,p_address_out,arr_result_set

结果集变量名:

p_user_name_out,p_address_out,arr_result_set

错误:响应消息:java.sql.SQLException:无法转换为内部表示:'users':['name':'all'

【问题讨论】:

CUSTOM_TYPE 是姓名和薪水,输入的薪水在哪里?您的查询也可以在普通 JDBC 中工作吗? 是的,工资是可选的,谢谢您的回复。 【参考方案1】:

查看AbstractJDBCTestElement.setArgument() 函数我看不到Types.Array 子句,所以我的期望是您无法使用内置的JMeter JDBC 测试元素来实现它。

我建议您考虑切换到JSR223 Sampler 和Groovy language,您可以完全控制您的逻辑流程。如需更多详细信息,请参阅Using Array Objects 教程。

【讨论】:

那我是不是必须用整个代码来执行一个过程并在 groovy 中检查响应? 如果是,与连接配置有关,我必须创建所有内容还是可以使用jMeter的JDBC连接配置? 您可以使用 JDBC 连接配置来实例化连接,例如:java.sql.Connection conn = org.apache.jmeter.protocol.jdbc.config.DataSourceElement.getConnection("your_variable_name_here");。其他逻辑,即准备和执行查询以及处理结果需要完全在 Groovy 中完成。

以上是关于响应消息:java.sql.SQLException:无法转换为内部表示:jmeter的主要内容,如果未能解决你的问题,请参考以下文章

ORA-00904: "pass": 无效的标识符

windows消息响应机制到底是啥,谁发出消息,啥是消息?谁来响应消息?怎样响应?

怎么正确响应WM_NCLBUTTONDOWN消息

GB/T 28181-2016多响应消息传输探究

控件自定义消息响应

Kafka 是不是支持请求响应消息传递