LoadRunner GWT到XML转换
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了LoadRunner GWT到XML转换相关的知识,希望对你有一定的参考价值。
我们有一个使用GWT进行通信的应用程序。我已启用DFE(In Loadrunner - Vugen)并选择GWT作为选项,并提供应用程序.WAR文件作为输入以提取所有与应用程序相关的.jar
文件。
记录了场景流,我看到所有请求都从GWT转换为XML格式。但是当我回复测试脚本时,我遇到了错误,因为DFE无法将HTTP响应从GWT转换为XML格式。
我们可以尝试解决此错误并转换为XML格式的其他选项有哪些?是否有一种方法可以抑制Loadrunner错误消息,以便它继续执行下一步而不是失败?
我们是否需要任何额外的.jar
s来转换HTTP响应?
HTTP响应(以GWT格式)://OK[[],0,5]
错误信息:
Action.c(93): Error -27040: Data Format Extension: Extension: GWT - ERROR
[GWT_DFE] - Failed to parse response:
java.lang.ArrayIndexOutOfBoundsException: -1
java.lang.ArrayIndexOutOfBoundsException: -1
at java.util.ArrayList.elementData(ArrayList.java:403) ~[?:1.8.0-internal]
at java.util.ArrayList.get(ArrayList.java:416) ~[?:1.8.0-internal]
atcom.gdevelop.gwt.syncrpc.SyncClientSerializationStreamReader.readInt(SyncClientSerializationStreamReader.java:450) ~[SyncProxy.jar:?]
at com.google.gwt.user.client.rpc.impl.AbstractSerializationStreamReader.readObject(AbstractSerializationStreamReader.java:46) ~[gwt-servlet-2.0.4.jar:?]
at com.hp.dfe.GWT_DFE.deserializeResponseToXML(GWT_DFE.java:462) [classes/:?]
at com.hp.dfe.GWT_DFE.decode(GWT_DFE.java:704) [classes/:?]
at sun.reflect.GeneratedMethodAccessor3.invoke(Unknown Source) ~[?:?]
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:1.8.0-internal]
at java.lang.reflect.Method.invoke(Method.java:483) ~[?:1.8.0-internal]
at com.hp.dfe.GWT_DFE_DYNAMICALLY_REFLECTED.doOperation(GWT_DFE_DYNAMICALLY_REFLECTED.java:70) [classes/:?]
at com.hp.dfe.GWT_DFE_DYNAMICALLY_REFLECTED.decode(GWT_DFE_DYNAMICALLY_REFLECTED.java:60) [classes/:?]
at com.hp.dfe.GWT_DFE_LAUNCHER.decode(GWT_DFE_LAUNCHER.java:456) [classes/:?]
[MsgId: MERR-27040]
Action.c(93): Error -27040: Data Format Extension: Extension: GWT - ERROR [GWT_DFE] - failed to read as a response
Øp–ñ´Ò
[MsgId: MERR-27040]
谢谢。
对于旧版本的gwt来说,这看起来像一个空(void返回类型)响应 - 状态是成功的(//OK
),没有设置标志(0
),版本很旧(5
),字符串数组是空,因为没有其他数据要发回。对我来说听起来像你的GWT_DFE
类期望所有的响应总是有一个值,或者他们处理响应的其他方面是非常错误的(也许他们不能很好地处理旧版本?我只是盲目地在这一点上猜测,该代码不公开)。
如果你有像void sendMessage(SomeObject object)
这样的RemoteService方法,除了onSuccess
响应本身之外,可能不需要任何返回类型。匹配的异步接口将具有AsyncCallback<Void>
,并且不会获得返回值。
以上是关于LoadRunner GWT到XML转换的主要内容,如果未能解决你的问题,请参考以下文章
从GWT代码调用getElementsByTagNameNS
将 XSLT 转换的 XML 片段写入 XMLStreamWriter