Object reference error thrown while selecting the WebServiceDataSource for creating a table in Telerik Report Designer - telerik-reporting

I am new to Telerk Report Designer.
I have created a WebServiceDataSourcewith the name 'webServiceDataSource1', using an api and authorization token in the header. While creating the data source, it displayed the data preview correctly. But when I tried to create a table with that data source, an object reference error is thrown.
I created another WebServiceDataSource with the name 'DemoWebServiceDataSource' without any authorization token for testing purpose. It worked without any issues. But my requirement is to add the service using authorization token.
Screenshots attached.

Try to add the same value (Bearer key) on the "Configure request parameters" screen in the Value and Design-Time Value fields, currently your Design-Time Value is empty and most probably this causes the issue.
Alternatively, in this blog post the API key is send as a request parameter with Name apiKey, Type Query and Value and Design-Time Value both equal to your API Key (Header Authorization is not used).
Here is one more example for a Google API with key parameter.

Related

How to edit the readonly field in Jmeter 5.2.1?

I have recorded a script for the help desk ticket and inside that ticket one field "operation" is read-only and it's dependent on other fields.
now, I want to fill the data in the "operation" field, but due to read-only validation and dependent on other fields, the script failed.
In addition, I already tried to pass values(false value replaced with value) via script but it failed. for example:
Search -> "prodid":false,
replace all -> with "prodid":123,
Kindly suggest how to pass values or ids in the read-only selection field.
If you're talking about HTML readonly attribute - JMeter doesn't care about it, JMeter acts on HTTP protocol level.
If you can follow your test steps using a real browser without issues and cannot using JMeter most probably your attempt to replay the script fails due to missing or improperly implemented correlation, start from adding HTTP Cookie Manager to your test plan and inspecting requests details for any dynamic values, if they are there - they're a subject to correlation, you will need to extract the values from the previous response using a suitable JMeter Post-Processor(s) and replace recorded hard-coded values with the JMeter Variable(s) from the Post-Processor(s)

Can I import required QueryString parameters as QueryString parameters rather than Template Parameters in APIM?

We are generating an OpenApi definition using Swagger/Swashbuckle. This definition is then imported into Azure API Management.
We have some querystring parameters on get requests that we have marked as required. Our validation ensures the querystring parameters are present and valid, otherwise we return a 400 Bad Request with details of which parameters are invalid/missing. The relevant part of the OpenAPI definition is below. Two querystring parameters (marked as required) and one path parameter (marked as required).
My problem is the way the OpenApi definition is converted into APIM operations.
The required querystring parameters are added as template parameters and they are added to the operation url. This means if they are not provided, APIM cannot match the request to an operation and we return a 404 to the caller rather than the helpful 400 that the backend would return.
I can't add easily add empty values into the querystring. I can't do that in the inbound policy of the operation as it doesn't match the operation. Doing it in the global inbound policy would mean I had to identify the operation myself (this is just one of many). Similarly, while I can return a 400 bad request in the onerror policy, I can't easily tell the caller what was wrong with the request.
I think it's built into the import process. When I changed the template parameters to query parameters in the portal and exported, the OpenApi definition was practically identical. When I reimported the exported template, the same thing happened. I also tried going via Wadl which looked more promising but I couldn't reimport that template.
Is there any way to move template query string parameters to be query string parameters? Any other options?
At the moment (since 2018) there is the bug in Azure APIM API import. Link.
It's status under review. We tried to raise this directly to Microsoft, but there was no solution provided from their side.

No Traces in Azure API Response

The Flag Ocp-Apim-Tracehas been set to true.
The API Response displays this information under the Trace Tab:
Trace location was not specified in the response or trace log is not
available.
Yet no traces are available. How does one resolve this?
To enable trace, you need to include "Ocp-Apim-Trace" and "Ocp-Apim-Subscription-Key" in request header.
If the API does not require subscription, you can still get admin subscription key in developer portal. This enforces that only admin can get tracing log. To get admin subscription key if you are an admin, go to Developer Portal -> Profile -> find your target API and copy the key.
The Ocp-Apim-Trace feature enables you to specify whether or not APIM should generate a trace file on blob storage.
Setting the header to 'true' within Postman for example, will give you back a HTTP Header in the response called Ocp-Apim-Trace-Location.
This will contain the URL to your trace file, which you can open in any browser.
You might want to install a plugin/extension to be able to format JSON files properly in order to make it easy to read.
Just setting the flag Ocp-Apim-Trace to true will not suffice.
One needs to set the subscription key as well as per this doc.
https://learn.microsoft.com/en-us/azure/api-management/api-management-advanced-policies#Trace
So, for API's which do not have a subscription key, not sure how one can get the traces

JMeter: failed POST method (JSON body and filtering in path)

I'm trying (without success) to create data in JMeter (POST method) using JSON body data and only one way of access through API: access key (no login credentials or other details for server).
The access key only works in PATH (tried in header, no luck) and besides that, filters are required in path to call the exact services I need (please see screenshot 1)
Here are a couple of screenshots (data was edited, sensitive info)
1
HTTP Request
2
Header Manager
In Results Tree I get 301 Moved Permanently.
Is there a way to add those filters, keep the JSON body data + access token in path and get a 200/201 Created? :)
Found the issue for "301 Moved Permanently" after Post method was used:
Should have specified in Protocol "https" not http :(

Appgyver - Unable to load resource's data model - dreamfactory API

I have this json feed.
I am unable to load this into Appgyver
I have set the following required settings:
- parameter app_name with the correct value
- added the reuired header X-DREAMFACTORY-APPLICATION-NAME
I always get the Oops, Unable to load resource's data model. error
Anyone who has a clue?
I am not very familiar with AppGyver, but I know it's been used with DreamFactory successfully by others. You have not provided enough information, but I will attempt to give you troubleshooting steps from the DreamFactory side.
First, are you definitely authenticating and passing a valid X-DreamFactory-Session-Token header? I can tell that you don't have guest access enabled (to make calls without authentication) because when I navigate to your link I receive a 401 with "There is no valid session for the current request."
Second, what is the call you're making from AppGyver? Is it a GET to simply list resources of a DB called vlaamse_vinyl, or what?
Finally, if you are passing X-DreamFactory-Application-Name in addition to the URI parameter ?app_name=vlaamse_vinyl this is redundant. Perhaps that is preventing your call from succeeding.