isscript Element

Support server-side scripts for scriptlets and inline script expressions, using ${ }syntax.

Syntax

<isscript>
  ... 
</isscript>

Purpose

The script expressions are supported everywhere expressions are supported, including in tags and inline.

These are the top-level variables available to scriptlets:

Variable Description See Also
session The current internal Salesforce B2C Commerce session dw.system.Session
request The current internal B2C Commerce request dw.system.Request
pdict The current Pipeline Dictionary dw.system.PipelineDictionary
out PrintWriter for the HTML page dw.io.Printwriter

Variables set in the template script context are one of two types with respect to their scope:

Variable Scope
Page scope

These are either well-known variables set by the template at run time or those defined in the scriptlet.

Variables of this scope are available, once set, through template execution context and can be referenced from multiple scriptlets or expressions in the template or its local includes.

Tag scope

Variables of this type are defined within certain tags. For example, <isloop... status="safe"/> defines variable safe of type.

Tag scoped variables are available, once declared, in the tag context only.

Example


<isscript>
        var user = pdict.User;
	  var fullName = user.firstName + " " + user.lastName;
</isscript>

Multiple script snippets in one file share the same execution context:


<isscript>
        var user = pdict.User;
</isscript>
...
<isscript>
	var fullName = user.firstName + " " + user.lastName;
</isscript>
<isprint value="${fullName}" />