StringWriter scriptWriter = new StringWriter();
try {
factory.writeOrderedJavaScript(scriptWriter);
} catch (IOException e) {
throw new ProtocolException("Error rendering JavaScript.", e);
} catch (OrderException e) {
throw new ProtocolException("Cyclic dependency found between widgets.");
}
String script = scriptWriter.toString();
// Now, if script is not empty, render it into the page.
if (script.length() > 0) {
// Open <script> element
com.volantis.mcs.protocols.ScriptAttributes scriptAttributes =
new com.volantis.mcs.protocols.ScriptAttributes();
scriptAttributes.setType("text/javascript");
protocol.writeOpenScript(scriptAttributes);
try {
protocol.getContentWriter().write(script);
} catch (IOException e) {
throw new ProtocolException("Error rendering JavaScript.", e);
}
// Close script element.
protocol.writeCloseScript(scriptAttributes);
}