Bug 64209 - Issue with the form selection on Tririga application with Jmeter proxy recording
Summary: Issue with the form selection on Tririga application with Jmeter proxy recording
Status: NEEDINFO
Alias: None
Product: JMeter
Classification: Unclassified
Component: Main (show other bugs)
Version: 5.2.1
Hardware: PC All
: P2 normal (vote)
Target Milestone: ---
Assignee: JMeter issues mailing list
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2020-03-09 16:29 UTC by jatinder
Modified: 2020-04-27 12:07 UTC (History)
2 users (show)



Attachments
Jmeter successful Request Snapshots (740.47 KB, application/vnd.openxmlformats-officedocument.wordprocessingml.document)
2020-03-09 17:00 UTC, jatinder
Details
Jmeter Failed Request Snapshots (700.02 KB, application/vnd.openxmlformats-officedocument.wordprocessingml.document)
2020-03-09 17:01 UTC, jatinder
Details
Problem Description and Error snapshot (308.83 KB, application/vnd.openxmlformats-officedocument.wordprocessingml.document)
2020-03-09 17:03 UTC, jatinder
Details
Sucessful request first time selection in recording (281.06 KB, image/png)
2020-03-09 21:03 UTC, jatinder
Details
Sucessful request second time selection in recording (282.14 KB, image/png)
2020-03-09 21:04 UTC, jatinder
Details
Sucessful 2nd request first time selection in recording (281.65 KB, image/png)
2020-03-09 21:05 UTC, jatinder
Details
Sucessful 2nd request second time selection in recording (280.69 KB, image/png)
2020-03-09 21:05 UTC, jatinder
Details

Note You need to log in before you can comment on or make changes to this bug.
Description jatinder 2020-03-09 16:29:11 UTC
Issue description –
When trying to record https web traffic from Tririga web pages using Jmeter Proxy recording, we see that redirection urls are not constructed properly thus server responding back with a 404-Not Found response.
We do not see this issue while recording the application in Fiddler, LoadRunner, Silk performer or any other tools at our disposal.
We also notice that for the first selection on the form, the redirect happens correctly, and the selection options are displayed but from second selection onwards, we start seeing the issue no matter which page we select or which field on the page. If we stop recording after first selection and then start again, we would be able to do one more selection and so on. 

First selection on the form
Success - 

List of requests for Success.
POST https://xxxx.xxxx.com/trivpt1/html/en/default/actionHandler/actionDelegate.jsp

POST https://xxxx.xxxx.com/trivpt1/html/en/default/actionHandler/actionProcessor.jsp

GET https://xxxx.xxxx.com/trivpt1/html/en/default/common/openWithHeaders.jsp?winName=/trivpt1/html/en/default/reportTemplate/viewPageReport.jsp?propertyId=208133&projectId=1&refSpecTypeId=10002093&passThrough=false&reportTemplId=143615&reportName=cstCountry%20-%20Find%20-%20Country%20for%20Documentum%20System%20Country&altGuiListId=-1&ffCnt=1&ffn1=triNameTX&ffv1=&smartField=1&associatedId=225581648&manager=1&parentSOSubCategoryId=1&selectType=single&tempSpecId=727193449844299074&olv=1

GET https://xxxx.xxxx.com/trivpt1/html/en/default/common/frameHdn.html

GET https://xxxx.xxxx.com/trivpt1/html/en/default/common/loading.html

GET https://xxxx.xxxx.com/trivpt1/html/en/default/common/header.jsp

GET https://xxxx.xxxx.com/trivpt1/html/en/default/js/templateScripts.jsp

GET https://xxxx.xxxx.com/trivpt1/html/en/default/common/openWithObjectMain.jsp?winName=/trivpt1/html/en/default/reportTemplate/viewPageReport.jsp?propertyId=208133&projectId=1&refSpecTypeId=10002093&passThrough=false&reportTemplId=143615&reportName=cstCountry%20-%20Find%20-%20Country%20for%20Documentum%20System%20Country&altGuiListId=-1&ffCnt=1&ffn1=triNameTX&ffv1=&smartField=1&associatedId=225581648&manager=1&parentSOSubCategoryId=1&selectType=single&tempSpecId=727193449844299074&olv=1

GET https://xxxx.xxxx.com/trivpt1/html/en/default/js/templateScripts.jsp

POST https://xxxx.xxxx.com/trivpt1/html/en/default/reportTemplate/viewPageReport.jsp
POST data:
propertyId=208133&projectId=1&refSpecTypeId=10002093&passThrough=false&reportTemplId=143615&reportName=cstCountry+-+Find+-+Country+for+Documentum+System+Country&altGuiListId=-1&ffCnt=1&ffn1=triNameTX&ffv1=&smartField=1&associatedId=225581648&manager=1&parentSOSubCategoryId=1&selectType=single&tempSpecId=727193449844299074&olv=1&bookmarkable=false&MGRiODZhYTk5NGZj=Vq-RF8cPq1GQG6-X_LWVwlisS9B61eNI
GET https://xxxx.xxxx.com/trivpt1/html/en/default/common/activityCheck.jsp


Failure - Second time trying to select same field on same form in same session results in 404 - Not Found. Requests are different when selecting same field twice and second time it fails.
 

POST https://xxxx.xxxx.com/trivpt1/html/en/default/actionHandler/actionProcessor.jsp

GET https://xxxx.xxxx.com/trivpt1/html/en/default/common/openWithHeaders.jsp?winName=%2Ftrivpt1%2Fhtml%2Fen%2Fdefault%2FreportTemplate%2FviewPageReport.jsp%3FpropertyId%3D208133&projectId=1&refSpecTypeId=10002093&passThrough=false&reportTemplId=143615&reportName=cstCountry+-+Find+-+Country+for+Documentum+System+Country&altGuiListId=-1&ffCnt=1&ffn1=triNameTX&ffv1=&smartField=1&associatedId=225581648&manager=1&parentSOSubCategoryId=1&selectType=single&tempSpecId=727193449844299074&olv=1

GET https://xxxx.xxxx.com/trivpt1/html/en/default/common/loading.html

GET https://xxxx.xxxx.com/trivpt1/html/en/default/common/frameHdn.html

GET https://xxxx.xxxx.com/trivpt1/html/en/default/js/templateScripts.jsp

GET https://xxxx.xxxx.com/trivpt1/html/en/default/common/openWithObjectMain.jsp?winName=%2Ftrivpt1%2Fhtml%2Fen%2Fdefault%2FreportTemplate%2FviewPageReport.jsp%3FpropertyId%3D208133&projectId=1&refSpecTypeId=10002093&passThrough=false&reportTemplId=143615&reportName=cstCountry+-+Find+-+Country+for+Documentum+System+Country&altGuiListId=-1&ffCnt=1&ffn1=triNameTX&ffv1=&smartField=1&associatedId=225581648&manager=1&parentSOSubCategoryId=1&selectType=single&tempSpecId=727193449844299074&olv=1

GET https://xxxx.xxxx.com/trivpt1/html/en/default/js/templateScripts.jsp

POST https://xxxx.xxxx.com/trivpt1/html/en/default/common/%2Ftrivpt1%2Fhtml%2Fen%2Fdefault%2FreportTemplate%2FviewPageReport.jsp%3FpropertyId%3D208133&projectId=1&refSpecTypeId=10002093&passThrough=false&reportTemplId=143615&reportName=cstCountry+-+Find+-+Country+for+Documentum+System+Country&altGuiListId=-1&ffCnt=1&ffn1=triNameTX&ffv1=&smartField=1&associatedId=225581648&manager=1&parentSOSubCategoryId=1&selectType=single&tempSpecId=727193449844299074&olv=1&bookmarkable=false

POST data:
MGRiODZhYTk5NGZj=Vq-RF8cPq1GQG6-X_LWVwlisS9B61eNI
Comment 1 jatinder 2020-03-09 17:00:44 UTC
Created attachment 37079 [details]
Jmeter successful Request Snapshots
Comment 2 jatinder 2020-03-09 17:01:20 UTC
Created attachment 37080 [details]
Jmeter Failed Request Snapshots
Comment 3 jatinder 2020-03-09 17:03:52 UTC
Created attachment 37081 [details]
Problem Description and Error snapshot
Comment 4 Felix Schumacher 2020-03-09 17:45:43 UTC
Thanks for the report. To help you, we probably need more information.

Could you provide the version of JMeter, Java, Browser and OS you used?

Are there any error messages in the jmeter.log file?

Is the browser giving any error messages in its developer console (e.g., press F12 on Firefox)?

Is there a publicly available site, that we can repeat the recording?
Comment 5 jatinder 2020-03-09 18:48:36 UTC
Versions - 

OS - Windows Version 10.0.17763 Build 17763

Jmeter
Jmeter version 5.2.1 ( we used lower versions as well and see same issue in 5.0, 4.0 and below).

Chrome
Version - Chrome Version 79.0.3945.117 (Official Build) (64-bit)
Version - Mozilla (27.0.1)
We see the issue in chrome, Mozilla and IE as well.

Error in Jmeter.log file ?
We do not see any entries in the Jmeter.log file when we observe this issue during recording. 

Error - In the chrome developer tools as well, we see the same error 404 - Not found. Other than that we do not see any errors.

Not Found
The requested URL /trivpt1/html/en/default/common//trivpt1/html/en/default/reportTemplate/viewPageReport.jsp?propertyId=208133&projectId=1&refSpecTypeId=10002093&passThrough=false&reportTemplId=143615&reportName=cstCountry+-+Find+-+Country+for+Documentum+System+Country&altGuiListId=-1&ffCnt=1&ffn1=triNameTX&ffv1=&smartField=1&associatedId=225581658&manager=1&parentSOSubCategoryId=1&selectType=single&tempSpecId=727193454119219075&olv=1&bookmarkable=false was not found on this server.

On the chrome developer tools, we see following error

<html><head>
<title>404 Not Found</title>
</head><body>
<h1>Not Found</h1>
<p>The requested URL /trivpt1/html/en/default/common//trivpt1/html/en/default/reportTemplate/viewPageReport.jsp?propertyId=208133&amp;projectId=1&amp;refSpecTypeId=10002093&amp;passThrough=false&amp;reportTemplId=143615&amp;reportName=cstCountry+-+Find+-+Country+for+Documentum+System+Country&amp;altGuiListId=-1&amp;ffCnt=1&amp;ffn1=triNameTX&amp;ffv1=&amp;smartField=1&amp;associatedId=225581658&amp;manager=1&amp;parentSOSubCategoryId=1&amp;selectType=single&amp;tempSpecId=727193454119219075&amp;olv=1&amp;bookmarkable=false was not found on this server.</p>
<hr>
<address>IBM_HTTP_Server at xxxx.xxxx.com Port 8443</address>
</body></html>

Request URL: https://xxxx.xxxx.com/trivpt1/html/en/default/common/%2Ftrivpt1%2Fhtml%2Fen%2Fdefault%2FreportTemplate%2FviewPageReport.jsp%3FpropertyId%3D208133&projectId=1&refSpecTypeId=10002093&passThrough=false&reportTemplId=143615&reportName=cstCountry+-+Find+-+Country+for+Documentum+System+Country&altGuiListId=-1&ffCnt=1&ffn1=triNameTX&ffv1=&smartField=1&associatedId=225581658&manager=1&parentSOSubCategoryId=1&selectType=single&tempSpecId=727193454119219075&olv=1&bookmarkable=false
Request Method: POST
Status Code: 404 Not Found
Remote Address: [::1]:8888
Referrer Policy: no-referrer-when-downgrade


This application is not exposed to external users and thus cannot be accessed outside our network.
Comment 7 jatinder 2020-03-09 21:00:22 UTC
Here is my understanding from what is happening
1. On clicking the search scope button for the first time, the url invoked is *actionProcessor.jsp and this is same for first time, second time and so on.
2. Next request *openWithHeaders.jsp is the second request in after redirection. For the successful selection for first time, we do not see any of the parameters being URL encoded. But after first time selection, second time onwards, we do see that WinName and reportName fields do have URL Encode option checked. 
3. there are few pages inbetween like *frameHdn.html, *loading.html, *header.jsp, *Scripts.jsp that do bring more informaiton on the page.
4. Next request *openwithObjectMain.jsp request in successful request have winName not having %2F characters but in the failed requests winName have %2F characters and  reportName do not have %2F encoding characters thus at this point the two requests are completely different.
5. Final request which is correctly shown as *viewPageReport.jsp in successful request but it is an invalid request in failed selection request

Expected - 
559 /trivpt1/html/en/default/reportTemplate/viewPageReport.jsp

parameters - 
propertyId	208133	false	text/plain	true
projectId	1	false	text/plain	true
refSpecTypeId	10002093	false	text/plain	true
passThrough	false	false	text/plain	true
reportTemplId	143615	false	text/plain	true
reportName	cstCountry+-+Find+-+Country+for+Documentum+System+Country	false	text/plain	true
altGuiListId	-1	false	text/plain	true
ffCnt	1	false	text/plain	true
ffn1	triNameTX	false	text/plain	true
ffv1		false	text/plain	true
smartField	1	false	text/plain	true
associatedId	225581648	false	text/plain	true
manager	1	false	text/plain	true
parentSOSubCategoryId	1	false	text/plain	true
selectType	single	false	text/plain	true
tempSpecId	727193449844299074	false	text/plain	true
olv	1	false	text/plain	true
bookmarkable	false	false	text/plain	true
MGRiODZhYTk5NGZj	Vq-RF8cPq1GQG6-X_LWVwlisS9B61eNI	false	text/plain	true


Response  -  HTTP 200

Actual - 
570 /trivpt1/html/en/default/common/%2Ftrivpt1%2Fhtml%2Fen%2Fdefault%2FreportTemplate%2FviewPageReport.jsp%3FpropertyId%3D208133&projectId=1&refSpecTypeId=10002093&passThrough=false&reportTemplId=143615&reportName=cstCountry+-+Find+-+Country+for+Documentum+System+Country&altGuiListId=-1&ffCnt=1&ffn1=triNameTX&ffv1=&smartField=1&associatedId=225581648&manager=1&parentSOSubCategoryId=1&selectType=single&tempSpecId=727193449844299074&olv=1&bookmarkable=false

Response - HTTP 404

Ultimately, I think while parsing some of the these requests, Jmeter decides to change how it understands the request and parameters and what parameters are to be url encoded. For the first request is does correctly and then for second request it does it differently then how it did for the first time. This creates requests which are not understood to server.
Comment 8 jatinder 2020-03-09 21:03:31 UTC
Created attachment 37082 [details]
Sucessful request first time selection in recording
Comment 9 jatinder 2020-03-09 21:04:23 UTC
Created attachment 37083 [details]
Sucessful request second time selection in recording
Comment 10 jatinder 2020-03-09 21:05:02 UTC
Created attachment 37084 [details]
Sucessful 2nd request first time selection in recording
Comment 11 jatinder 2020-03-09 21:05:39 UTC
Created attachment 37085 [details]
Sucessful 2nd request second time selection in recording
Comment 12 jatinder 2020-03-30 18:25:07 UTC
Provided the information as requested.
Comment 13 Philippe Mouawad 2020-04-27 11:53:07 UTC
Unfornately, analysing issue is not easy without live access to the application.

Would this be feasible ?