This page last changed on Jul 05, 2007 by cholmes.
![](./icons/emoticons/information.gif) | GeoServer 1.5.2 Required
GeoRSS support for GeoServer is only present in 1.5.2 and beyond (1.6.0-beta1). |
GeoServer supports GeoRSS as an output format allowing you to serve features as an RSS feed.
Quickstart
Google Maps
Yahoo Maps
Microsoft Virtual Earth
QuickStart
If you are using a web browser which can render rss feeds simply visit the url http://localhost:8080/geoserver/wms/reflect?layers=states&format=rss in your browser. This is assuming a local GeoServer instance is running with an out of the box configuration. You should see the following result:
![](../80306/browser.png)
Ajax Map Mashups
![](./icons/emoticons/forbidden.gif) | Internet Visible GeoServer Required
Your GeoServer instance must be visible from the internet, IE. localhost will not work. |
Google Maps
How to create a Google Maps mashup with a GeoRSS overlay produced by GeoServer.
- Obtain a Google Maps API Key from Google.
- Create an html file called gmaps.html:
<!DOCTYPE html PUBLIC "-
"http:>
<html xmlns="http:>
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8"/>
<title>Google Maps JavaScript API Example</title>
<script src="http:
type="text/javascript"></script>
<script type="text/javascript">
function load() {
if (GBrowserIsCompatible()) {
var map = new GMap2(document.getElementById("map"));
map.addControl(new GLargeMapControl());
map.setCenter(new GLatLng(40,-98), 4);
var geoXml = new GGeoXml("<INSERT GEOSERVER URL HERE>/geoserver/wms/reflect?layers=states&format=rss");
map.addOverlay(geoXml);
}
}
</script>
</head>
<body onload="load()" onunload="GUnload()">
<div id="map" style="width: 800px; height: 600px"></div>
</body>
</html>
A few important points to note:
- The version of the google maps api must be 2.x, and not just 2
- You must insert your specific maps api key, and geoserver base url
- Visit gmaps.html in your web browser. You should see the following
![](../80306/gmaps.png)
Yahoo Maps
How to create a Yahoo! Maps mashup with a GeoRSS overlay produced by GeoServer.
- Obtain a Yahoo Maps Application ID from Yahoo.
- Create an html file called ymaps.html:
html>
<head>
<title>Yahoo! Maps GeoRSS Overlay Example</title>
<script src="http: type="text/javascript"></script>
<script type="text/javascript" language="JavaScript">
function StartYMap() {
var map = new YMap(document.getElementById('ymap'));
map.addPanControl();
map.addZoomShort();
function doStart(eventObj) {
var defaultEventObject = eventObj;
}
function doEnd(eventObj) {
var defaultEventObject = eventObj;
map.smoothMoveByXY(new YCoordPoint(10,50));
}
YEvent.Capture(map,EventsList.onStartGeoRSS, function(eventObj) { doStart(eventObj); });
YEvent.Capture(map,EventsList.onEndGeoRSS, function(eventObj) { doEnd(eventObj); });
map.addOverlay(new YGeoRSS('http: }
window.onload = StartYMap;
</script>
</head>
<body>
<div id="ymap" style="width: 800px; height: 600px; left:2px; top:2px"></div>
</body>
</html>
A few important points to note:
- The version of the yahoo maps api must be 3.0
- You must insert your specific application id, and geoserver base url
- Visit ymaps.html in your web browser. You should see the following
![](../80306/ymaps.png)
Microsoft Virtual Earth
![](./icons/emoticons/forbidden.gif) | Non Internet Explorer Users
GeoRSS overlays are only supported in Internet Explorer, versions greater then 5.5. |
How to create a Microsoft Virtual Earth mashup with a GeoRSS overlay produced by GeoServer.
![](./icons/emoticons/forbidden.gif) |
To access a GeoRSS feed from Microsoft Virtual Earth the file (ve.html) must be accessed from a Web Server, IE. It will not work if run from local disk. |
- Create an html file called ve.html.
<html>
<head>
<script src="http:></script>
<script>
var map;
function OnPageLoad()
{
map = new VEMap('map');
map.LoadMap();
var veLayerSpec = new VELayerSpecification();
veLayerSpec.Type = VELayerType.GeoRSS;
veLayerSpec.ID = 'Hazards';
veLayerSpec.LayerSource = 'http: veLayerSpec.Method = 'get';
map.AddLayer(veLayerSpec);
}
</script>
</head>
<body onload="OnPageLoad();">
<div id="map" style="position:relative;width:800px;height:600px;"></div>
</body>
</html>
A few important points to note:
- You must insert your specific maps api key, and geoserver base url
- Visit ve.html in your web browser. You should see the following
![](../80306/ve.png)
|