I want pass array of markes to javascript on jsp page to show them on google map. In servlet I load array of markers from database, but I don't know how to pass them to javascript. Thi is my servlet
protected void doGet(HttpServletRequest request, HttpServletResponse response) `throws ServletException, IOException {
// TODO Auto-generated method stub`
PlaceDao placeDao = new PlaceDao();
ArrayList<Place> pList = new ArrayList<Place>();
try {
pList = placeDao.readData();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
Marker marker = new Marker();
ArrayList<Marker> mList = new ArrayList<Marker>();
for (int i = 0; i < pList.size(); ++i)
{
marker.setLatitude(pList.get(i).getLatitude());
marker.setLongitude(pList.get(i).getLongitude());
mList.add(marker);
}
request.setAttribute("marker", mList);
request.getRequestDispatcher("pages/location.jsp").forward(request, response);
}`
and my jsp page
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Insert title here</title>
<script src="http://maps.googleapis.com/maps/api/js">
</script>
<script>
var myCenter = new google.maps.LatLng(51.508742, -0.120850);
function initialize() {
var mapProp = {
center : myCenter,
zoom : 5,
mapTypeId : google.maps.MapTypeId.ROADMAP
};
var map = new google.maps.Map(document.getElementById("googleMap"),
mapProp);
var marker = new google.maps.Marker({
position : myCenter,
});
marker.setMap(map);
}
google.maps.event.addDomListener(window, 'load', initialize);
</script>
</head>
<body>
<div id="googleMap" style="width: 500px; height: 380px;"></div>
</body>
</html>
So instead of var myCenter = new google.maps.LatLng(51.508742, -0.120850);
I want pass my array. I think that could be done with JSON but I don't sure and don't know how.
Thanks for any help!