есть скрипт с протоколами Web и Web Services
Сервер на один из запросов возвращает XML, который автоматически пишется в параметр response.
При попытке вытащить значение из XML при помощи lr_xml_get_values ничего не получается.
Ответ сервера:
Action.c(523): Notify: Saving Parameter "response = <?xml version="1.0" encoding="utf-8"?><soap:Envelope xmlns:soap="http://schemas.xmlso...soap/envelope/" xmlns:xsi="http://www.w3.org/20...chema-instance" xmlns:xsd="http://www.w3.org/20...ProjectResponse xmlns="http://schemas.micro...soap:Envelope>"
Может кто знает как вытащить значение newVersionStampStr?
Разбор XML в LoadRunner
Автор priomino, 12 фев 2009 11:58
Сообщений в теме: 3
#1
Отправлено 12 февраля 2009 - 11:58
#2
Отправлено 12 февраля 2009 - 21:20
Как насчет использования web_reg_save_param()? Только в начале не забудьте web_set_max_html_param_len(), а то я смотрю значение newVersionStampStr у вас очень длинное.
#3
Отправлено 13 февраля 2009 - 12:07
Что значит "ничего не получается"? Что-то же вы получаете?
У меня, например, всё получается:
char *xml_input="<?xml version=\"1.0\" encoding=\"utf-8\"?>"
"<soap:Envelope xmlns:soap=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xmlns:xsd=\"http://www.w3.org/2001/XMLSchema\">"
"<soap:Body>"
"<PreSaveProjectResponse xmlns=\"http://schemas.microsoft.com/office/project/server/webservices/WinProj/\">"
"<projGuid>6d4ad5bf-0001-0001-0092-435f64d324e4</projGuid>"
"<jobGuid>6d4ad5ba-0001-0001-0092-435f64d324e3</jobGuid>"
"<newVersionStampStr>7b0HYBxJliUmL23Ke39K9UrX4HShCIBgEyTYkEAQ7MGIzeaS7B1pRyMpqyqBymVWZV1mFkDM7Z289"
"95777333nvvvfe6O51OJ/ff/z9cZmQBbPbOStrJniGAqsgfP358Hz8iHv8a3/01il9j+Wu8/DXqX6P6NX761/jJXyOn3xr6rKJPX/8a7a+R/RqLX2P1azyln/j9NX3f/hrpr/GOPi2pRfNrfPZrfPRrzOmzllo9+jXu0n/NrzGlT3JqkdHvY/pZ0CeA39D/z6nlmP6u6PO7/Pc5f5/TXyvFIqe/W4YEbC7537u/xhX9nNjP5J2GPv86I7hLWB/9Gr/xr5HQWNJf47H39mvvc/nu819jTdBm9Pmn9O8+wZj9GvcJk/NfY/vX2OH/dnu/Pfw19ui3/V/jHrU8p/f26Z179Nk+9b5PMO96UMPeXhH85a/xlj7f4Xbu7267nKhwRD1KK/krbCNjzhnze/Tfp4TXQ/r3gP7bJ8z26O0d+x/guDccbe5GqPP4a9L96Nf4fwA=</newVersionStampStr>"
"<chunkSize>2097152</chunkSize>"
"</PreSaveProjectResponse>"
"</soap:Body>"
"</soap:Envelope>";
lr_save_string(xml_input, "XML_Input_Param");
lr_output_message(lr_eval_string("{XML_Input_Param}"));
lr_xml_get_values("XML={XML_Input_Param}",
"ValueParam=OutputParam",
"Query=//newVersionStampStr",
LAST);
lr_output_message(lr_eval_string("Query result = {OutputParam}"));
/***************** Log messages **************************/
Starting iteration 1.
Starting action Action.
Action.c(20): <?xml version="1.0" encoding="utf-8"?><soap:Envelope xmlns:soap="http://schemas.xmlso...soap/envelope/" xmlns:xsi="http://www.w3.org/20...chema-instance" xmlns:xsd="http://www.w3.org/20...ProjectResponse xmlns="http://schemas.micro.../soap:Envelope>
Action.c(23): "lr_xml_get_values" succeeded, 1 match processed
Action.c(28): Query result = 7b0HYBxJliUmL23Ke39K9UrX4HShCIBgEyTYkEAQ7MGIzeaS7B1pRyMpqyqBymVWZV1mFkDM7Z28995777333nvvvfe6O51OJ/ff/z9cZmQBbPbOStrJniGAqsgfP358Hz8iHv8a3/01il9j+Wu8/DXqX6P6NX761/jJXyOn3xr6rKJPX/8a7a+R/RqLX2P1azyln/j9NX3f/hrpr/GOPi2pRfNrfPZrfPRrzOmzllo9+jXu0n/NrzGlT3JqkdHvY/pZ0CeA39D/z6nlmP6u6PO7/Pc5f5/TXyvFIqe/W4YEbC7537u/xhX9nNjP5J2GPv86I7hLWB/9Gr/xr5HQWNJf47H39mvvc/nu819jTdBm9Pmn9O8+wZj9GvcJk/NfY/vX2OH/dnu/Pfw19ui3/V/jHrU8p/f26Z179Nk+9b5PMO96UMPeXhH85a/xlj7f4Xbu7267nKhwRD1KK/krbCNjzhnze/Tfp4TXQ/r3gP7bJ8z26O0d+x/guDccbe5GqPP4a9L96Nf4fwA=
Ending action Action.
У меня, например, всё получается:
char *xml_input="<?xml version=\"1.0\" encoding=\"utf-8\"?>"
"<soap:Envelope xmlns:soap=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xmlns:xsd=\"http://www.w3.org/2001/XMLSchema\">"
"<soap:Body>"
"<PreSaveProjectResponse xmlns=\"http://schemas.microsoft.com/office/project/server/webservices/WinProj/\">"
"<projGuid>6d4ad5bf-0001-0001-0092-435f64d324e4</projGuid>"
"<jobGuid>6d4ad5ba-0001-0001-0092-435f64d324e3</jobGuid>"
"<newVersionStampStr>7b0HYBxJliUmL23Ke39K9UrX4HShCIBgEyTYkEAQ7MGIzeaS7B1pRyMpqyqBymVWZV1mFkDM7Z289"
"95777333nvvvfe6O51OJ/ff/z9cZmQBbPbOStrJniGAqsgfP358Hz8iHv8a3/01il9j+Wu8/DXqX6P6NX761/jJXyOn3xr6rKJPX/8a7a+R/RqLX2P1azyln/j9NX3f/hrpr/GOPi2pRfNrfPZrfPRrzOmzllo9+jXu0n/NrzGlT3JqkdHvY/pZ0CeA39D/z6nlmP6u6PO7/Pc5f5/TXyvFIqe/W4YEbC7537u/xhX9nNjP5J2GPv86I7hLWB/9Gr/xr5HQWNJf47H39mvvc/nu819jTdBm9Pmn9O8+wZj9GvcJk/NfY/vX2OH/dnu/Pfw19ui3/V/jHrU8p/f26Z179Nk+9b5PMO96UMPeXhH85a/xlj7f4Xbu7267nKhwRD1KK/krbCNjzhnze/Tfp4TXQ/r3gP7bJ8z26O0d+x/guDccbe5GqPP4a9L96Nf4fwA=</newVersionStampStr>"
"<chunkSize>2097152</chunkSize>"
"</PreSaveProjectResponse>"
"</soap:Body>"
"</soap:Envelope>";
lr_save_string(xml_input, "XML_Input_Param");
lr_output_message(lr_eval_string("{XML_Input_Param}"));
lr_xml_get_values("XML={XML_Input_Param}",
"ValueParam=OutputParam",
"Query=//newVersionStampStr",
LAST);
lr_output_message(lr_eval_string("Query result = {OutputParam}"));
/***************** Log messages **************************/
Starting iteration 1.
Starting action Action.
Action.c(20): <?xml version="1.0" encoding="utf-8"?><soap:Envelope xmlns:soap="http://schemas.xmlso...soap/envelope/" xmlns:xsi="http://www.w3.org/20...chema-instance" xmlns:xsd="http://www.w3.org/20...ProjectResponse xmlns="http://schemas.micro.../soap:Envelope>
Action.c(23): "lr_xml_get_values" succeeded, 1 match processed
Action.c(28): Query result = 7b0HYBxJliUmL23Ke39K9UrX4HShCIBgEyTYkEAQ7MGIzeaS7B1pRyMpqyqBymVWZV1mFkDM7Z28995777333nvvvfe6O51OJ/ff/z9cZmQBbPbOStrJniGAqsgfP358Hz8iHv8a3/01il9j+Wu8/DXqX6P6NX761/jJXyOn3xr6rKJPX/8a7a+R/RqLX2P1azyln/j9NX3f/hrpr/GOPi2pRfNrfPZrfPRrzOmzllo9+jXu0n/NrzGlT3JqkdHvY/pZ0CeA39D/z6nlmP6u6PO7/Pc5f5/TXyvFIqe/W4YEbC7537u/xhX9nNjP5J2GPv86I7hLWB/9Gr/xr5HQWNJf47H39mvvc/nu819jTdBm9Pmn9O8+wZj9GvcJk/NfY/vX2OH/dnu/Pfw19ui3/V/jHrU8p/f26Z179Nk+9b5PMO96UMPeXhH85a/xlj7f4Xbu7267nKhwRD1KK/krbCNjzhnze/Tfp4TXQ/r3gP7bJ8z26O0d+x/guDccbe5GqPP4a9L96Nf4fwA=
Ending action Action.
#4
Отправлено 20 февраля 2009 - 08:47
Спасибо друзья, оказалось что из-за протокола COM\DCOM который тоже был включен на всякий случай поменялись скобки для параметров, т.е. по умолчанию они всегда {}, а у меня они стали <>.
Сейчас поменял руками настройку и все заработало.
К вопросу о Web_reg_save_param
если будет такой набор команд:
web_reg_save_param
soap_request
web_url
то в web_reg_save_param сработает только на команде web_url, при этом команда soap_request проигнорируется, вот такая фигня...
Сейчас поменял руками настройку и все заработало.
К вопросу о Web_reg_save_param
если будет такой набор команд:
web_reg_save_param
soap_request
web_url
то в web_reg_save_param сработает только на команде web_url, при этом команда soap_request проигнорируется, вот такая фигня...
Количество пользователей, читающих эту тему: 0
0 пользователей, 0 гостей, 0 анонимных