Mercurial > dive4elements > river
annotate flys-client/src/main/java/de/intevation/flys/client/server/MapInfoServiceImpl.java @ 3497:88feb3347aa5
Implement a ProxyServlet
Implement a ProxyServlet to be able to restrict the access to the
mapserver too. All queries to the provided map services should go throught
this new ProxyServlet. Currently the ProxyServlet can only handle HTTP GET
requests.
flys-client/trunk@5221 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author | Bjoern Ricks <bjoern.ricks@intevation.de> |
---|---|
date | Thu, 16 Aug 2012 14:42:36 +0000 |
parents | bc06a671ef60 |
children | 02cf2b1dff84 |
rev | line source |
---|---|
828
910b03de6857
Added a service to get some basic spatial information used for map creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
1 package de.intevation.flys.client.server; |
910b03de6857
Added a service to get some basic spatial information used for map creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
2 |
910b03de6857
Added a service to get some basic spatial information used for map creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
3 import org.w3c.dom.Document; |
910b03de6857
Added a service to get some basic spatial information used for map creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
4 import org.w3c.dom.Element; |
910b03de6857
Added a service to get some basic spatial information used for map creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
5 |
1367
ab8eb2f544f2
Replaced stdout and stderr logging with log4j loggers in server classes.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
828
diff
changeset
|
6 import org.apache.log4j.Logger; |
ab8eb2f544f2
Replaced stdout and stderr logging with log4j loggers in server classes.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
828
diff
changeset
|
7 |
828
910b03de6857
Added a service to get some basic spatial information used for map creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
8 import com.google.gwt.user.server.rpc.RemoteServiceServlet; |
910b03de6857
Added a service to get some basic spatial information used for map creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
9 |
910b03de6857
Added a service to get some basic spatial information used for map creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
10 import de.intevation.artifacts.common.utils.XMLUtils; |
910b03de6857
Added a service to get some basic spatial information used for map creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
11 import de.intevation.artifacts.common.utils.XMLUtils.ElementCreator; |
910b03de6857
Added a service to get some basic spatial information used for map creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
12 |
910b03de6857
Added a service to get some basic spatial information used for map creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
13 import de.intevation.artifacts.httpclient.exceptions.ConnectionException; |
910b03de6857
Added a service to get some basic spatial information used for map creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
14 import de.intevation.artifacts.httpclient.http.HttpClient; |
910b03de6857
Added a service to get some basic spatial information used for map creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
15 import de.intevation.artifacts.httpclient.http.HttpClientImpl; |
910b03de6857
Added a service to get some basic spatial information used for map creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
16 |
910b03de6857
Added a service to get some basic spatial information used for map creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
17 import de.intevation.flys.client.shared.exceptions.ServerException; |
910b03de6857
Added a service to get some basic spatial information used for map creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
18 import de.intevation.flys.client.shared.model.BBox; |
910b03de6857
Added a service to get some basic spatial information used for map creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
19 import de.intevation.flys.client.shared.model.MapInfo; |
910b03de6857
Added a service to get some basic spatial information used for map creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
20 |
910b03de6857
Added a service to get some basic spatial information used for map creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
21 import de.intevation.flys.client.client.services.MapInfoService; |
910b03de6857
Added a service to get some basic spatial information used for map creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
22 |
910b03de6857
Added a service to get some basic spatial information used for map creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
23 |
910b03de6857
Added a service to get some basic spatial information used for map creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
24 /** |
910b03de6857
Added a service to get some basic spatial information used for map creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
25 * This service fetches a document that contains meta information for a specific |
910b03de6857
Added a service to get some basic spatial information used for map creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
26 * chart. |
910b03de6857
Added a service to get some basic spatial information used for map creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
27 * |
910b03de6857
Added a service to get some basic spatial information used for map creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
28 * @author <a href="mailto:ingo.weinzierl@intevation.de">Ingo Weinzierl</a> |
910b03de6857
Added a service to get some basic spatial information used for map creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
29 */ |
910b03de6857
Added a service to get some basic spatial information used for map creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
30 public class MapInfoServiceImpl |
910b03de6857
Added a service to get some basic spatial information used for map creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
31 extends RemoteServiceServlet |
910b03de6857
Added a service to get some basic spatial information used for map creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
32 implements MapInfoService |
910b03de6857
Added a service to get some basic spatial information used for map creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
33 { |
1367
ab8eb2f544f2
Replaced stdout and stderr logging with log4j loggers in server classes.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
828
diff
changeset
|
34 private static final Logger logger = |
ab8eb2f544f2
Replaced stdout and stderr logging with log4j loggers in server classes.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
828
diff
changeset
|
35 Logger.getLogger(MapInfoServiceImpl.class); |
ab8eb2f544f2
Replaced stdout and stderr logging with log4j loggers in server classes.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
828
diff
changeset
|
36 |
ab8eb2f544f2
Replaced stdout and stderr logging with log4j loggers in server classes.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
828
diff
changeset
|
37 |
828
910b03de6857
Added a service to get some basic spatial information used for map creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
38 public static final String XPATH_RIVER = |
910b03de6857
Added a service to get some basic spatial information used for map creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
39 "/mapinfo/river/@name"; |
910b03de6857
Added a service to get some basic spatial information used for map creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
40 |
910b03de6857
Added a service to get some basic spatial information used for map creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
41 public static final String XPATH_SRID = |
910b03de6857
Added a service to get some basic spatial information used for map creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
42 "/mapinfo/river/srid/@value"; |
910b03de6857
Added a service to get some basic spatial information used for map creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
43 |
910b03de6857
Added a service to get some basic spatial information used for map creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
44 public static final String XPATH_BBOX = |
910b03de6857
Added a service to get some basic spatial information used for map creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
45 "/mapinfo/river/bbox/@value"; |
910b03de6857
Added a service to get some basic spatial information used for map creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
46 |
910b03de6857
Added a service to get some basic spatial information used for map creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
47 public static final String XPATH_RIVER_WMS = |
910b03de6857
Added a service to get some basic spatial information used for map creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
48 "/mapinfo/river/river-wms/@url"; |
910b03de6857
Added a service to get some basic spatial information used for map creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
49 |
910b03de6857
Added a service to get some basic spatial information used for map creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
50 public static final String XPATH_WMS_URL = |
910b03de6857
Added a service to get some basic spatial information used for map creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
51 "/mapinfo/river/background-wms/@url"; |
910b03de6857
Added a service to get some basic spatial information used for map creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
52 |
910b03de6857
Added a service to get some basic spatial information used for map creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
53 public static final String XPATH_WMS_LAYERS = |
910b03de6857
Added a service to get some basic spatial information used for map creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
54 "/mapinfo/river/background-wms/@layers"; |
910b03de6857
Added a service to get some basic spatial information used for map creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
55 |
910b03de6857
Added a service to get some basic spatial information used for map creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
56 public static final String ERROR_NO_MAPINFO_FOUND = |
910b03de6857
Added a service to get some basic spatial information used for map creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
57 "mapinfo_service_no_result"; |
910b03de6857
Added a service to get some basic spatial information used for map creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
58 |
910b03de6857
Added a service to get some basic spatial information used for map creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
59 |
1425
bc06a671ef60
Removed the URL parameter from service calls. The service
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1367
diff
changeset
|
60 public MapInfo getMapInfo(String locale, String river) |
828
910b03de6857
Added a service to get some basic spatial information used for map creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
61 throws ServerException |
910b03de6857
Added a service to get some basic spatial information used for map creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
62 { |
1367
ab8eb2f544f2
Replaced stdout and stderr logging with log4j loggers in server classes.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
828
diff
changeset
|
63 logger.info("MapInfoServiceImpl.getMapInfo"); |
828
910b03de6857
Added a service to get some basic spatial information used for map creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
64 |
1425
bc06a671ef60
Removed the URL parameter from service calls. The service
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1367
diff
changeset
|
65 String url = getServletContext().getInitParameter("server-url"); |
bc06a671ef60
Removed the URL parameter from service calls. The service
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1367
diff
changeset
|
66 |
828
910b03de6857
Added a service to get some basic spatial information used for map creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
67 Document request = getRequestDocument(river);; |
910b03de6857
Added a service to get some basic spatial information used for map creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
68 |
910b03de6857
Added a service to get some basic spatial information used for map creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
69 HttpClient client = new HttpClientImpl(url, locale); |
910b03de6857
Added a service to get some basic spatial information used for map creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
70 |
910b03de6857
Added a service to get some basic spatial information used for map creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
71 try { |
1367
ab8eb2f544f2
Replaced stdout and stderr logging with log4j loggers in server classes.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
828
diff
changeset
|
72 logger.debug("MapInfoServiceImpl.callService"); |
828
910b03de6857
Added a service to get some basic spatial information used for map creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
73 Document result = client.callService(url, "mapinfo", request); |
910b03de6857
Added a service to get some basic spatial information used for map creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
74 |
910b03de6857
Added a service to get some basic spatial information used for map creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
75 if (result == null) { |
1367
ab8eb2f544f2
Replaced stdout and stderr logging with log4j loggers in server classes.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
828
diff
changeset
|
76 logger.warn("MapInfo service returned no result."); |
828
910b03de6857
Added a service to get some basic spatial information used for map creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
77 throw new ServerException(ERROR_NO_MAPINFO_FOUND); |
910b03de6857
Added a service to get some basic spatial information used for map creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
78 } |
910b03de6857
Added a service to get some basic spatial information used for map creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
79 |
910b03de6857
Added a service to get some basic spatial information used for map creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
80 return getMapInfo(result); |
910b03de6857
Added a service to get some basic spatial information used for map creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
81 } |
910b03de6857
Added a service to get some basic spatial information used for map creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
82 catch (ConnectionException ce) { |
1367
ab8eb2f544f2
Replaced stdout and stderr logging with log4j loggers in server classes.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
828
diff
changeset
|
83 logger.error(ce, ce); |
828
910b03de6857
Added a service to get some basic spatial information used for map creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
84 } |
910b03de6857
Added a service to get some basic spatial information used for map creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
85 |
910b03de6857
Added a service to get some basic spatial information used for map creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
86 throw new ServerException(ERROR_NO_MAPINFO_FOUND); |
910b03de6857
Added a service to get some basic spatial information used for map creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
87 } |
910b03de6857
Added a service to get some basic spatial information used for map creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
88 |
910b03de6857
Added a service to get some basic spatial information used for map creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
89 |
910b03de6857
Added a service to get some basic spatial information used for map creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
90 public static Document getRequestDocument(String rivername) { |
1367
ab8eb2f544f2
Replaced stdout and stderr logging with log4j loggers in server classes.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
828
diff
changeset
|
91 logger.debug("MapInfoServiceImpl.getRequestDocument"); |
828
910b03de6857
Added a service to get some basic spatial information used for map creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
92 |
910b03de6857
Added a service to get some basic spatial information used for map creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
93 Document request = XMLUtils.newDocument(); |
910b03de6857
Added a service to get some basic spatial information used for map creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
94 ElementCreator cr = new ElementCreator(request, null, null); |
910b03de6857
Added a service to get some basic spatial information used for map creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
95 |
910b03de6857
Added a service to get some basic spatial information used for map creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
96 Element root = cr.create("mapinfo"); |
910b03de6857
Added a service to get some basic spatial information used for map creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
97 Element river = cr.create("river"); |
910b03de6857
Added a service to get some basic spatial information used for map creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
98 |
910b03de6857
Added a service to get some basic spatial information used for map creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
99 river.setTextContent(rivername); |
910b03de6857
Added a service to get some basic spatial information used for map creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
100 |
910b03de6857
Added a service to get some basic spatial information used for map creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
101 request.appendChild(root); |
910b03de6857
Added a service to get some basic spatial information used for map creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
102 root.appendChild(river); |
910b03de6857
Added a service to get some basic spatial information used for map creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
103 |
910b03de6857
Added a service to get some basic spatial information used for map creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
104 return request; |
910b03de6857
Added a service to get some basic spatial information used for map creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
105 } |
910b03de6857
Added a service to get some basic spatial information used for map creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
106 |
910b03de6857
Added a service to get some basic spatial information used for map creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
107 |
910b03de6857
Added a service to get some basic spatial information used for map creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
108 public static MapInfo getMapInfo(Document result) { |
1367
ab8eb2f544f2
Replaced stdout and stderr logging with log4j loggers in server classes.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
828
diff
changeset
|
109 logger.debug("MapInfoServiceImpl.getMapInfo"); |
828
910b03de6857
Added a service to get some basic spatial information used for map creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
110 |
910b03de6857
Added a service to get some basic spatial information used for map creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
111 String river = XMLUtils.xpathString(result, XPATH_RIVER, null); |
910b03de6857
Added a service to get some basic spatial information used for map creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
112 String sridStr = XMLUtils.xpathString(result, XPATH_SRID, null); |
910b03de6857
Added a service to get some basic spatial information used for map creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
113 String bboxS = XMLUtils.xpathString(result, XPATH_BBOX, null); |
910b03de6857
Added a service to get some basic spatial information used for map creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
114 BBox bbox = BBox.getBBoxFromString(bboxS); |
910b03de6857
Added a service to get some basic spatial information used for map creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
115 |
910b03de6857
Added a service to get some basic spatial information used for map creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
116 String riverWMS = XMLUtils.xpathString(result, XPATH_RIVER_WMS, null); |
910b03de6857
Added a service to get some basic spatial information used for map creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
117 String wmsURL = XMLUtils.xpathString(result, XPATH_WMS_URL, null); |
910b03de6857
Added a service to get some basic spatial information used for map creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
118 String wmsLayers = XMLUtils.xpathString(result, XPATH_WMS_LAYERS, null); |
910b03de6857
Added a service to get some basic spatial information used for map creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
119 |
910b03de6857
Added a service to get some basic spatial information used for map creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
120 int srid = 4326; |
910b03de6857
Added a service to get some basic spatial information used for map creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
121 |
910b03de6857
Added a service to get some basic spatial information used for map creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
122 try { |
910b03de6857
Added a service to get some basic spatial information used for map creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
123 srid = Integer.parseInt(sridStr); |
910b03de6857
Added a service to get some basic spatial information used for map creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
124 } |
910b03de6857
Added a service to get some basic spatial information used for map creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
125 catch (NumberFormatException nfe) { |
910b03de6857
Added a service to get some basic spatial information used for map creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
126 // do nothing |
910b03de6857
Added a service to get some basic spatial information used for map creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
127 } |
910b03de6857
Added a service to get some basic spatial information used for map creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
128 |
910b03de6857
Added a service to get some basic spatial information used for map creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
129 return new MapInfo(river, srid, bbox, riverWMS, wmsURL, wmsLayers); |
910b03de6857
Added a service to get some basic spatial information used for map creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
130 } |
910b03de6857
Added a service to get some basic spatial information used for map creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
131 } |
910b03de6857
Added a service to get some basic spatial information used for map creation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
132 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 : |