JavaScript Scriptlet Example

<%javascript // // Defer this page // if(conversation.query.get('defer') == 'true') if(conversation.defer()) conversation.stop() // // Cache this page // caching.duration = 5000 // // Calling Java // print('

This page was dynamically generated at ' + java.lang.System.currentTimeMillis() + '

') // // An example of a function // function printAdapter(adapter) { %>

Adapter: <%= adapter.attributes.get('name') %> version <%= adapter.attributes.get('version') %>
Language: <%= adapter.attributes.get('language.name') %> version <%= adapter.attributes.get('language.version') %>
Tags: <% var tags = adapter.attributes.get('tags').toArray() for(var i = 0; i < tags.length; i++) { print(tags[i]) if(i < tags.length - 1) { print(', ') } } %>

<% } %>

Language used:

<% printAdapter(executable.context.adapter) %>

Available languages:

<% var adapters = executable.manager.adapters.toArray() for(var i = 0; i < adapters.length; i++) { printAdapter(adapters[i]) } %>

The "id" attribute in the URL query is:

<%= conversation.query.get('id') || '' %>

A few tests:

<% // // Including a document // // This is identical to: // // document.include('/triple/javascript/') // %> <%& '/triple/javascript/' %> <% for(var i = 0; i < 10; i++) { %> A multiple of three: <% printTriple(i) %>
<% } %>