<%
//Retrieving the Server list from dispatcher
Collection<Server> svr = (Collection<Server>)request.getAttribute("stuff");
ArrayList<String> serverIds = new ArrayList<String>();
for(Server i : svr )
serverIds.add(i.getId());
String [] svrIds = new String[svr.size()];
serverIds.toArray(svrIds);
%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<script type="text/javascript">
var instanceIds = new Array(<%=svrIds%>);
//test somethings in there
alert(instanceIds[0]);
</script>
</head>
</html>
<% //Retrieving the Server list from dispatcher Collection<Server> svr = (Collection<Server>)request.getAttribute(stuff); ArrayList<String> serverIds =
Share
If you want to use Java code to write the code for a Javascript data structure, probably the simplest way to do it is to use a JSON library for Java. A JSON string can be interpreted as Javascript code.
If you want to use JSON.simple, then there are examples here of how to generate the JSON string:
http://code.google.com/p/json-simple/wiki/EncodingExamples
In your code, you should be able to do something like this:
You shouldn’t need to convert your ArrayList to a Java array. Note that this function is sensitive to what type you pass into it; an array actually won’t work in this instance.
Also, to do this you will need to install the JSON.simple JAR file and import
org.json.simple.JSONValuein your JSP.