Loadrunner中使用lr_xml_get_values()获取服务端返回的字符串LcsId,LcsId为double,需要将该值转换为 int 后传入下一次请求中。

  报错如下:Error is : Exception Occurred while invoking WriteObject method; Debugging information: cause-exception : java.lang.NumberFormatException.

  解决方法:

  需要对flex_amf_call()的Response进行数据提取,提取的数据为double,但是submit.c中需要int,于是牵扯数据类型转换。

  本以为只需要使用一个整型变量transferedLcsId接收,然后在submit.c中将<string>transferedLcsId</string><int>***</int>的“***”替换为“transferedLcsId”,就好了,但是始终报错,查看扩展日志后发现,是格式转换的问题;

  在师傅的帮助下,添加lr_save_int()将transferedLcsId保存为int,在得以解决,如下。

错误代码:

int  transferedLcsId;    //存放在globals.h文件中

flex_amf_call(

 "AMF3_call_16",

 "ResponseParameter=response",

);

lr_xml_get_values("XML={response}",

 "Query=//string[contains(text(),'id')]/following::double",

 "ValueParam=id",

 LAST

);

transferedLcsId = atoi(lr_eval_string ("{id}"));

解决后代码:

int  transferedLcsId;    //存放在globals.h文件中

flex_amf_call(

"AMF3_call_16",

 "ResponseParameter=response",

);

lr_xml_get_values("XML={response}",

 "Query=//string[contains(text(),'id')]/following::double",

 "ValueParam=id",

 LAST

);

transferedLcsId = atoi(lr_eval_string ("{id}"));

lr_save_int (transferedLcsId,"transferedLcsId");  //重要的保存

flex_amf_call(

 "AMF3_call_17",

 "<string>transferedLcsId</string><int>transferedLcsId</int>"

);

flex_amf_call(

 "AMF3_call_17",

 "<string>transferedLcsId</string><int> { transferedLcsId } </int>"

);

  总结:虽然transferedLcsId是整型变量,但是需要使用lr_save_int函数将该变量用loadrunner可以识别的参数化方式保存起来,即需要从C语言格式转换为LR可以识别的格式,再应用到录制的脚本中。

  lr_save_int在man手册中的功能解释:Saves an integer to a parameter.类似的还有:

LoadRunner ERROR: java.lang.NumberFormatException的更多相关文章

  1. 使用JedisCluster出现异常:java.lang.NumberFormatException

    在使用JedisCluster进行测试时出现如下异常: java.lang.NumberFormatException: For input string: "7004@17004" ...

  2. SpringBoot整合Swagger2案例,以及报错:java.lang.NumberFormatException: For input string: ""原因和解决办法

    原文链接:https://blog.csdn.net/weixin_43724369/article/details/89341949 SpringBoot整合Swagger2案例 先说SpringB ...

  3. maven项目中使用redis集群报错: java.lang.NumberFormatException: For input string: "7006@17006"

    Caused by: org.springframework.beans.BeanInstantiationException: Failed to instantiate [redis.client ...

  4. javaweb报错:java.lang.NumberFormatException: null

    报错环境: JSP向Severlet页面传值,当Serverlet页执行以下语句时,后台日志报错 int softType = Integer.parseInt(request.getParamete ...

  5. ERROR: java.lang.NullPointerException的一种情况

    java.lang.NullPointerException错误,错误原因就是以下六条没配置完: 1.JAVA环境配置正确.2.源码里面的包没有与tomcat的包冲突.3.把数据库文件给导入到了SQL ...

  6. error:java.lang.ClassCastException: java.lang.Integer cannot be cast to java.lang.Long

    问题:mysql中id存的是int(10),java代码中的id为long,转不过去 解决:mysql中的int要是需要转到java中的long,需要选择unsigned这个选项,即if(unsign ...

  7. maven项目中使用redis集群报错: java.lang.NumberFormatException: For input string: "7001@17001"

    解决:由于redis集群的采用的版本是2.7的,在maven的pom.xml中将jedis的版本改成2.9的就可以了

  8. java.lang.NumberFormatException: Infinite or NaN

      1.异常提示: java.lang.NumberFormatException: Infinite or NaN 2.原因:无法格式化的数字,此数字要么不是个数字,要么是无穷大的数字,从而导致 B ...

  9. java.lang.NumberFormatException:For input string:"undefined"

    在将字符串转换为数字时导致此错误,解决此问题的思路: 1.添加 try catch语句 2.判断字符串是否为数字,将介绍java中判断字符串是否为数字的方法的几种方法 发生错误的代码: java.la ...

随机推荐

  1. mySQL函数根据经纬度计算两点距离

    DROP FUNCTION IF EXISTS func_calcDistance ; CREATE FUNCTION func_calcDistance( origLng ,), -- 目的地经度 ...

  2. Active MQ 传输 ObjectMessage 异常

    <bean id="targetConnectionFactory" class="org.apache.activemq.ActiveMQConnectionFa ...

  3. mybatis框架下解决数据库中表的列的字段名和实体类属性不相同的问题

    导包.... 实体类中的属性,getter,setter,tostring,构造等方法就不写了 private int id; private String orderNo; private floa ...

  4. 20161014001 DataGridView 单元格内容 自动计算

    private void T_Form_CY_CBD_D_CellValueChanged(object sender, DataGridViewCellEventArgs e)        {   ...

  5. [JAVA] 面向对象编程OOP Note

    面向对象编程OOP Note OOP五个基本特性1. 万物皆对象.2. 程序是对象的集合,它们通过发送消息来告知彼此所要做的.3. 每个对象都有自己的由其他对象所构成的存储.4. 每个对象都拥有其类型 ...

  6. tomcat7 日志设置为log4j

    tomcat的日志设置用log4j的官方文档:http://tomcat.apache.org/tomcat-7.0-doc/logging.html 1. 下载tomcat-juli.jar, to ...

  7. 初识CEF

    介绍 CEF全称Chromium Embedded Framework,是一个基于Google Chromium 的开源项目.Google Chromium项目主要是为Google Chrome应用开 ...

  8. JavaScript对象的chapterIII

    二.DOM对象: DOM (document object model) 文档对象模型,它定义了操作文档对象的接口. DOM 把一份html文档表示为一棵家谱树,使用parent(父), child( ...

  9. Allegro 导入DXF文件,保留布好的线路信息

    最近智能钥匙产品开发过程中,由于结构装配尺寸的偏差,需要对电路PCB外框OUTLINE进行缩小调整,并且USB插座定位孔改变. Allegro软件在线性绘制方面是有严重缺陷的,想绘制一个异形的板框比较 ...

  10. 【网摘】CURL常用命令

    原文地址: http://www.thegeekstuff.com/2012/04/curl-examples/ 下载单个文件,默认将输出打印到标准输出中(STDOUT)中 curl http://w ...