-
ChatterFeed
-
0Best Answers
-
0Likes Received
-
0Likes Given
-
5Questions
-
2Replies
Getting Blank response when i return Array on continuation in Lightning component's Server side method
In my requirement, I have to make multiple callouts with the Lightning component's server-side page load method.
So here I have created multiple HTTP request(i.e: 20) objects and bind each 3 in different continuation instances(20/3 => 7).
So in under this solution, I have to return a List<Continuation> from Apex to the client-side server as a response JSON. But when I do so, I received a blank object, instead of a JSON object.
**Note:** For POC purpose when I did the same flow for a single request(without iterating the for loop) with a single continuation object I got the response correctly from the @AuraEnabled apex method to the client-side(lightning controller.js).
So here I have created multiple HTTP request(i.e: 20) objects and bind each 3 in different continuation instances(20/3 => 7).
So in under this solution, I have to return a List<Continuation> from Apex to the client-side server as a response JSON. But when I do so, I received a blank object, instead of a JSON object.
// Action method @AuraEnabled(continuation=true cacheable=true) public static List<continuation> startRequest() { Map<String,String> headers=new Map<String,String>(); String access_token = 'L90NMyHS2BcLSdtQ2iyJyr1MD5WdGjEt'; headers.put('Content-Type','application/x-www-form-urlencoded'); headers.put('Accept','application/json'); headers.put('Authorization','Bearer ' + access_token); List<String> folderList = new List<String>{'108947290168', '108950868379'}; List<continuation> lstCon = new List<continuation>(); // Create continuation. Argument is timeout in seconds. for(String objFol : folderList){ Continuation con = new Continuation(40); LONG_RUNNING_SERVICE_URL = LONG_RUNNING_SERVICE_URL+'objFol'; // Set callback method con.continuationMethod='processResponse'; // Set state // Create callout request HttpRequest req = new HttpRequest(); req.setMethod('GET'); req.setEndpoint(LONG_RUNNING_SERVICE_URL); system.debug('req--'+req); for(String ss : headers.keyset()){ req.setHeader(ss,headers.get(ss)); } // Add callout request to continuation String strteemp = con.addHttpRequest(req); con.state = strteemp; lstCon.add(con); } // Return the continuations return lstCon; } // Callback method @AuraEnabled(cacheable=true) public static Object processResponse(List<String> labels, Object state) { // Get the response by using the unique label List<String> lstRes = new List<String>(); for(String objStr : labels){ HttpResponse response = Continuation.getResponse(objStr); // Set the result variable String result = response.getBody(); lstRes.add(result); } return lstRes; }
**Note:** For POC purpose when I did the same flow for a single request(without iterating the for loop) with a single continuation object I got the response correctly from the @AuraEnabled apex method to the client-side(lightning controller.js).
-
- ADARSH SINGH 17
- April 04, 2020
- Like
- 0
- Continue reading or reply
Provide Filed Level Security using tooling api
I have created custom fields under an object using the tooling API in an apex class. but by default, there is no Field Level Permission assigned to any specific profile for those fields. So can anyone please let me know, is there any way to assign FLS while creating fields using tooling API?
Thanks,
Thanks,
-
- ADARSH SINGH 17
- September 04, 2019
- Like
- 0
- Continue reading or reply
Default instances URL to execute the Open CTI JavaScript library files(Interaction.js and Opencti_min.js)
As we are working on Salesforce OpenCTI tool in a managed package. I just got stuck to invoking Open CTI JavaScript library files(interaction.js and opencti_min.js) by using a default absolute URL.
As mentioned over Salesforce Document we use the following URL for different platform:
In Salesforce Classic: <script src="https://c.<yourInstance>.visual.force.com/support/api/46.0/interaction.js" type="text/javascript"></script>
In Lightning Experience:
<script src="https://c.<yourInstance>.visual.force.com/support/api/46.0/lightning/opencti_min.js" type="text/javascript"></script>
So, in above-mentioned URL what exact default <yourInstance> URL we have to use as absolute URL. So that we can use a single URL for all the customer's Salesforce instance.
As mentioned over Salesforce Document we use the following URL for different platform:
In Salesforce Classic: <script src="https://c.<yourInstance>.visual.force.com/support/api/46.0/interaction.js" type="text/javascript"></script>
In Lightning Experience:
<script src="https://c.<yourInstance>.visual.force.com/support/api/46.0/lightning/opencti_min.js" type="text/javascript"></script>
So, in above-mentioned URL what exact default <yourInstance> URL we have to use as absolute URL. So that we can use a single URL for all the customer's Salesforce instance.
-
- ADARSH SINGH 17
- August 05, 2019
- Like
- 0
- Continue reading or reply
Site URL for Connecting to MetaCI while implementing CumulucCI for Salesforce Projects
We are done with all cumulusCI configuration set up, Now we are using MetaCI CLI v0.1.4 to run these same builds against your project automatically on Heroku. We are successfully deploying a new MetaCI site on Heroku using free dyno resources.
Now we are stuck in "Adding the Repository to MetaCI" section during metaCI implementation and we have the following execution with an exception:
Note: We are using 'metaci repo add' or 'metaci repo list' command to adding the repository to metaCI.
Thank you,
Adarsh Singh
Now we are stuck in "Adding the Repository to MetaCI" section during metaCI implementation and we have the following execution with an exception:
Traceback (most recent call last): File "/home/adarsh/Desktop/test-dir/venv/bin/metaci", line 11, in sys.exit(main()) File "/home/adarsh/Desktop/test-dir/venv/local/lib/python2.7/site-packages/click/core.py", line 722, in call return self.main(*args, **kwargs) File "/home/adarsh/Desktop/test-dir/venv/local/lib/python2.7/site-packages/click/core.py", line 697, in main rv = self.invoke(ctx) File "/home/adarsh/Desktop/test-dir/venv/local/lib/python2.7/site-packages/click/core.py", line 1066, in invoke return _process_result(sub_ctx.command.invoke(sub_ctx)) File "/home/adarsh/Desktop/test-dir/venv/local/lib/python2.7/site-packages/click/core.py", line 1066, in invoke return _process_result(sub_ctx.command.invoke(sub_ctx)) File "/home/adarsh/Desktop/test-dir/venv/local/lib/python2.7/site-packages/click/core.py", line 895, in invoke return ctx.invoke(self.callback, **ctx.params) File "/home/adarsh/Desktop/test-dir/venv/local/lib/python2.7/site-packages/click/core.py", line 535, in invoke return callback(*args, **kwargs) File "/home/adarsh/Desktop/test-dir/venv/local/lib/python2.7/site-packages/metaci_cli/cli/config.py", line 150, in new_func return ctx.invoke(f, obj, *args[1:], **kwargs) File "/home/adarsh/Desktop/test-dir/venv/local/lib/python2.7/site-packages/click/core.py", line 535, in invoke return callback(*args, **kwargs) File "/home/adarsh/Desktop/test-dir/venv/local/lib/python2.7/site-packages/metaci_cli/cli/commands/repo.py", line 126, in repo_list res = api_client('repos', 'list', params=params) File "/home/adarsh/Desktop/test-dir/venv/local/lib/python2.7/site-packages/metaci_cli/metaci_api.py", line 27, in call resp = self.client.action(self.document, args, **kwargs) File "/home/adarsh/Desktop/test-dir/venv/local/lib/python2.7/site-packages/coreapi/client.py", line 163, in action link, link_ancestors = _lookup_link(document, keys) File "/home/adarsh/Desktop/test-dir/venv/local/lib/python2.7/site-packages/coreapi/client.py", line 38, in _lookup_link raise exceptions.LinkLookupError(msg % (index_string, repr(key).strip('u'))) coreapi.exceptions.LinkLookupError: Index ['repos']['list'] did not reference a link. Key 'repos' was not found.
Note: We are using 'metaci repo add' or 'metaci repo list' command to adding the repository to metaCI.
Thank you,
Adarsh Singh
-
- ADARSH SINGH 17
- November 28, 2018
- Like
- 0
- Continue reading or reply
Hi All, Can we validate and complete a trail-head challenge using Salesforce Dev hub Developer org?
Hi All, Can we validate and complete a trail-head challenge using Salesforce Dev hub Developer org?
-
- ADARSH SINGH 17
- April 11, 2018
- Like
- 0
- Continue reading or reply
Apex code to create(add) custom fields to the object dynamically using Metadata API.
Hi All,
I am new to Saleforce development. Please can any one guide me to sample apex code to create(add) custom fields to custom or standard objects dynamically using Salesforce Metadata API in my development org.
Thanks in advance.
- KMK
- June 29, 2011
- Like
- 0
- Continue reading or reply
How to get the email address of the logged in user?
I know i can do the following to get userid,firstname,lastname by using the static UserInfo class. But there is no method to get Email address. How do i get email address in a controller??
String userId = UserInfo.getUserId();
String firstName = UserInfo.getFirstName();
String lastName = UserInfo.getLastName();
I know i can do {!$User.Email} but that would only be in the visualforce pages.
How do I get the email address of the logged in user in controller.
- Surjendu
- March 05, 2008
- Like
- 0
- Continue reading or reply