B2B Commerce Developer Demo
B2B Commerce Developer Demo
B2B-Commerce-Developer Exam
Salesforce Developer
www.certsland.com
Questions & Answers PDF Page 2
Version:10.1
Question: 1
A. Executing dynamic SOQL inside a without sharing class with a bind variable
fromPageReference.getParameters().
B. Executing dynamic SOQL inside a without sharing class with a bind variable from theUserInfo class.
C. Executing dynamic SOQL inside a without sharing class with a bind variable
fromPageReference.getCookies().
D. Executing dynamic SOQL inside a without sharing class with a bind variable
fromcc_RemoteActionContentex class.
E. Executing dynamic SOQL inside a without sharing class with a bind variable
fromccAPI.CURRENT_VERSION.
Answer: A,C,D
Explanation:
Executing dynamic SOQL inside a without sharing class with a bind variable from
PageReference.getParameters(), PageReference.getCookies(), or cc_RemoteActionContext class will
open up a major security hole because these sources of input are not sanitized and can be
manipulated by malicious users to inject SOQL queries that bypass the sharing rules and access data
that they are not supposed to see. For example, a user can modify the URL parameters or cookies to
include a SOQL query that returns sensitive data from the database. To prevent this, it is
recommended to use static SOQL or escape the bind variables before executing dynamic SOQL.
Question: 2
The ccrz.cc_hk_UserInterface apex class, HTMLHead Include Begin and HTML Head Include End
Cloudcraze Page Include sections allow additional content to be added to the HTML <head> tag.
What are two reasons that is it preferred to use the ccrz.cc_hk_UserInterface extension over the
Cloudcraze Page Include sections? (2 answers)
www.certsland.com
Questions & Answers PDF Page 3
Answer: A,D
Explanation:
The ccrz.cc_hk_UserInterface apex class is preferred over the HTMLHead Include Begin and HTML
Head Include End Cloudcraze Page Include sections because Salesforce apex:include is wrapped in
<span> tags, which are not valid inside the HTML <head> tag. This can cause rendering issues or
unexpected behavior in some browsers. The ccrz.cc_hk_UserInterface extension allows adding
content to the HTML <head> tag without using apex:include.
Question: 3
The ccUtil apex class in Salesforce B2B Commerce provides numerous utility
functions that can be leveraged in subscriber classes.
What are two ways to check the input or return data of the Global API's? (2 answers)
Answer: A,D
Explanation:
The ccUtil apex class provides two methods to check the input or return data of the Global API’s:
ccrz.ccUtil.isNotEmpty(Map<String, Object>) and ccrz.ccUtil.isEmpty(Map<String, Object>). These
methods return true if the map is not null and contains at least one entry, or if the map is null or
empty, respectively. Similarly, ccrz.ccUtil.isNotEmpty(List<Object>) and
ccrz.ccUtil.isEmpty(List<Object>) return true if the list is not null and contains at least one element,
or if the list is null or empty, respectively. These methods are useful for validating the input
parameters or the output results of the Global API’s.
Question: 4
The ccUtil apex class in Salesforce B2B Commerce provides numerous utility
functions that can be leveraged in subscriber classes. Which command will return the
value in the given Map if found or a default value in the event that the Map is null,
empty, or an object is not found for that key?
Answer: B
Explanation:
www.certsland.com
Questions & Answers PDF Page 4
The ccrz.ccUtil.defVal (Map<String.Object> mp, String key, Object ob) method will return the value in
the given Map if found or a default value in the event that the Map is null, empty, or an object is not
found for that key. This method is useful for providing fallback values for configuration settings or
input parameters that may be missing or invalid. Salesforce Reference: B2B Commerce and D2C
Commerce Developer Guide, ccUtil Class
Question: 5
Answer: B
Explanation:
This approach effectively removes the payment page from the list of allowed pages, ensuring it is not
displayed during the checkout process.
Reference: Salesforce B2B Commerce documentation on checkout process customization and
configuration settings, specifically focusing on payment page handling and the pmt.whitelist setting.
The pmt.whitelist configuration setting in Salesforce B2B Commerce is used to manage the
Visualforce pages that support all payment types on the storefront1. If you want to prevent an
existing payment page from being shown on the checkout payment page, one way to do it is to
remove the value matching the page name from the pmt.whitelist configuration setting. After doing
this, you would need to rebuild and activate a new Configuration cache for the changes to take
effect1. Please note that this information is based on the Salesforce B2B Commerce documentation
and best practices1.
Question: 6
A Developer created a custom field that a project wants to expose on a given page.
How does the Developer ensure that the field is available to display on a given page?
A. Override the Service Class that the page uses and update the ServiceManagementin CCAdmin for
the given storefront to use this new Service Class.
B. Override the Logic Class that the page uses and update the Service Management inCCAdmin for
the given storefront to use this new Service Class
C. Create a new Service Classthat the page uses and update the Service Managementin CCAdmin for
the given storefront to use this new Service Class
www.certsland.com
Questions & Answers PDF Page 5
D. Create a new Logic Class that the page uses and update the Service Managementin CCAdmin for
the given storefront to use this new Service Class
Answer: A
Explanation:
To ensure that a custom field is available to display on a given page, the Developer needs to override
the Service Class that the page uses and update the Service Management in CCAdmin for the given
storefront to use this new Service Class. The Service Class is responsible for retrieving and setting
data for a given page. The Logic Class is responsible for implementing business logic and validation
rules for a given page. Creating a new Service Class or Logic Class is not necessary, as overriding an
existing one can achieve the same result. Salesforce Reference: B2B Commerce and D2C Commerce
Developer Guide, Service Classes, Logic Classes
Question: 7
A developer is trying to troubleshoot why a field is not displaying on the Product Detail Page. What
should be typed in the Developer Tools Console in the browser to view the fields available for the
Product Detail Page?
A. CCRZ.productSearchView
B. CCRZ.cartView
C. CCRZ.productDetailModel
D. CCRZ.productDetailView
Answer: C
Explanation:
To view the fields available for the Product Detail Page, the developer should type
CCRZ.productDetailModel in the Developer Tools Console in the browser. This will display the
product detail model object, which contains the product data and attributes that are rendered on the
page. The other options are either not valid or not relevant for the Product Detail Page.
Question: 8
For which two reasons is it preferable to extend the Salesforce B2B Commerce remote invocation
object instead of using the standard Salesforce remote action invocation manager (2 answers)
A. A standard remote action will not have access to Salesforce B2B Commerce objects.
B. The APEX method called by the remote action will be passed as a Salesforce B2B Commerce
context object.
C. Salesforce B2B Commerce includes do not support standard SalesForce remote actions.
D. The Salesforce B2B Commerce logger cannot be utilized in standard remote actions
Answer: B,D
Explanation:
www.certsland.com
Questions & Answers PDF Page 6
It is preferable to extend the Salesforce B2B Commerce remote invocation object instead of using the
standard Salesforce remote action invocation manager for two reasons:
The APEX method called by the remote action will be passed as a Salesforce B2B Commerce context
object, which contains useful information such as the current user, cart, storefront, and configuration
settings. This can simplify the development and testing of the remote action.
The Salesforce B2B Commerce logger can be utilized in the remote action, which allows logging
messages and errors to the debug log or to a custom object. This can facilitate debugging and
troubleshooting of the remote action.
Question: 9
How are variables bound when services use the ccSercviceDao classto execute queries?
A. Global variables
B. Apex local variables
C. String substitution
D. Apex class variables
Answer: C
Explanation:
When services use the ccServiceDao class to execute queries, variables are bound by string
substitution. This means that the query string contains placeholders for variables that are replaced by
their values at runtime. For example, ccrz.ccServiceDao.getQuery('SELECT Id FROM Account WHERE
Name = :name') will replace :name with the value of the name variable.
Question: 10
A. APIs callback with specific versions specified; the user must know which version number to use.
B. Copy and paste of specific code is "built-in"
C. Extensions and overridden APIs don't support-related upgrades.
D. The "delegate" allows inherited method calls access to the most recentlyspecified service version
Answer: D
Explanation:
Version related upgrades are passed on to subscriber API extensions/overrides by using the
“delegate” keyword, which allows inherited method calls access to the most recently specified
service version. For example, delegate.getCart() will invoke the getCart() method of the latest service
version that is available for the current storefront. This way, extensions and overrides can leverage
the new features and enhancements of the upgraded service versions without modifying their code.
www.certsland.com
Thank You for trying B2B-Commerce-Developer PDF Demo
https://www.certsland.com/b2b-commerce-developer-dumps/
[Limited Time Offer] Use Coupon " SAVE20 " for extra 20%
discount on the purchase of PDF file. Test your
B2B-Commerce-Developer preparation with actual exam questions
www.certsland.com