Hot answers tagged

5

AWS is a set of virtualized hardware that looks like a computer to you and others. GeoServer is a piece of software that converts spatial data into web maps, it can run on an AWS instance.


5

If you need to visualize WMS and WMTS are the protocols to use. WFS is meant to transfer raw data with full geometries and attributes, which a client software (not a human) can then either visualize on its own (try for example QGis as a WFS client), analyze and eventually edit, saving back the changes via the WFS Transaction call. OGC in general provides ...


4

1) Add a new geometry column: ALTER TABLE mytable ADD COLUMN geom geometry(Point, 4326); 2) Update the new column with the geometry from your long and lat columns: UPDATE mytable SET geom = ST_SetSRID(ST_MakePoint(long, lat), 4326);


3

You can also switch off WFS-T for your service by going to the WMS menu page (Services->WMS) and changing the service level from Complete to Basic.


3

There are multiple ways of achieving this: Use Geoserver's Service Security Connect to the PostGIS table with a user who only has Read-Only access on the Table. Ideally you should do both.


3

You can use the security subsystem to disallow writes on a specific set of layers: http://geoserver.geo-solutions.it/edu/en/security/layer_level.html http://docs.geoserver.org/stable/en/user/security/layer.html


3

You are right that metatiles alone do not prevent cutting the symbols. In the picture below with 3x3 metatiles the inner star symbol will not be cut but the outer will because it is on the border of the metatile. With symbols you can get a perfect result by using "gutter" parameter with a value that is bigger than half of the size of the biggest symbol. ...


3

You can not find an EPSG code, because the data provider does not use any of the CRS registered at EPSG for Idaho. Alternatively, you can run gdalsrsinfo on the .prj file to get the proj.4 string: +proj=tmerc +lat_0=42 +lon_0=-114 +k=0.9996 +x_0=2500000 +y_0=1200000 +ellps=GRS80 +units=m +no_defs You would have to create a custom CRS from that, or use ...


3

I would check this one which we have helped creating.


3

Based on my reading of this question you should be able to do: name = "layer_name" workspace = "my_workspace" cat = Catalog(location, user,pass) resource = cat.get_resource(name, workspace=workspace) if type(resource) is geoserver.resource.Coverage: ... elif type(resource) is geoserver.resource.FeatureType: ... Or possibly: if isinstance(resource, ...


3

If you already have a GeoServer WMS service, then the most straightforward way is to use the getFeatureInfo capabilities of the WMS protocol. See https://github.com/heigeo/leaflet.wms and http://docs.geoserver.org/latest/en/user/services/wms/reference.html#wms-getfeatureinfo


2

You probably reach the length limit of http GET with a big WKT string. Consider the use of POST Request. More info na doc do geoserver: http://docs.geoserver.org/latest/en/user/services/wfs/reference.html And here: Sending xml post request to geoserver WMS example from Anita's blog: https://anitagraser.com/2010/06/09/getmap-from-geoserver-using-http-post


2

It seems to me that you could just add the features to the local layer as well as sending them to PostGIS. I'd comment further but the key part of the code is missing from your question. As an aside why not use the WFS-T functionality built in to GeoServer instead of reinventing it using PHP?


2

It is returned in every WFS request response the GeoServer makes - for example search in the WFS GetCapabilities response for topp and you will find lines like: <FeatureType xmlns:topp="http://www.openplans.org/topp"> You will also need to know the nameSpace URI for the features you are querying when making a WFS request: <wfs:GetFeature service=...


2

I found the simplest way to restrict the maxZoom levels for a XYZ layer was to override the getNumZoomLevels method: function zoomChanged() { var coor_from = new OpenLayers.Projection("EPSG:4326"); var coor_to = new OpenLayers.Projection("EPSG:900913"); var level = map.getZoom(); var center = map.getCenter() ...


2

May be you can change the styles in your published layers. layer(Menu on the left)---> select you published layers--->select publish --->Default Style--->change to polygon


2

The most likely issue is projections - OpenLayers sets the projection of the map to match the projection of the base layer. Google and Bing will (always) use epsg:3857 while the OSM server you have chosen is a WMS server and if you check the GetCapabilities you will see it can serve maps in the following projections: <SRS>EPSG:900913</SRS> <...


2

What you need is a Dynamic Symbolizer - then you can create resources like this if you have a simple concatenation: <ExternalGraphic> <OnlineResource xlink:type="simple" xlink:href="http://mysite.com/tn_${STATE_ABBR}.jpg"/> <Format>image/jpeg</Format> </ExternalGraphic> or like this if you need a more ...


2

No, it's not possible at the moment, geometries are generalized, reprojected, rescaled to screen in place for performance reasons, by the time this function is evaluated it's too late. The code would have to be modified to perform these evaluations before the geometry is modified. It's possible, not immediate to do in general (if done, it would have to ...


2

You can create these files anywhere that you do have write permission and then move them. You could use some GeoTools code to construct the image pyramid as a user that does have write permission.


2

If you read the strReplace documentation you will see that it is a thin wrapper around the Java replace method and provides a link to the Pattern Rules. This means that your function: strReplace(iconPath,'.','/',true) will replace every character (a . matches any character) in iconPath with a / - clearly not what you want. I would try something like: $(...


2

Does the data get reprojected? Typically when I reproject raster to a different coordinate system I get black edges like that, because the raster file itself is rectangular, but the area covered by the reprojected data isn't. The black parts are areas of 'nodata'. If it's an issue of the look of the thing, perhaps you can make nodata transparent or white?


2

In the imagemosaic setting (in the layer page), try setting "output transparent color" to black


1

You need to PUT an updated FeatureType document with the new bounding box set in it. So your workflow is something like: curl -v -u admin:geoserver -H 'Accept: text/xml' \ -XGET http://localhost:8080/geoserver/rest/workspaces/topp/datastores/states_shapefile/featuretypes/states.xml Then edit the Bounding box to your new value and delete the lat/lon ...


1

You'll find the parameter on the feature type resource: http://docs.geoserver.org/latest/en/user/rest/api/featuretypes.html#recalculate


1

Nowadays GeoServer releases are automated in our build server and the instructions do not get into the details of building an installer, but this old guide from the times when things were done by hand might provide you instructions on how to get an installer done: https://github.com/geoserver/geoserver-history/blob/master/doc/en/developer/source/release-...


1

I don't think it's possible to use a shapefile as-is. If the file is local to GeoServer (you tagged it, I assume that's what you are using), you can try to use a "file:///path/to/zipped/shapefile.zip" reference. If the file is remote, you will have to zip it and add it to the request as a base64 encoded payload, or reference to it via HTTP (if you can zip ...


1

The solution was actually pretty easy ! All I had to do is set "projection: new OpenLayers.Projection("EPSG:3857")" in the MapPanel section. ... map: { numZoomLevels: 25, controls: controls, projection: new OpenLayers.Projection("EPSG:3857") }, ...


1

Has been answered on the geoserver-users mailing list, it's a bug in env usage inside raster symbolizer happening when multiple layers are requested: http://osgeo-org.1560.x6.nabble.com/Variable-substitution-not-working-if-multiple-layers-are-provided-in-WMS-call-td5271011.html The env function works otherwise fine (against one or more vector layers, or ...


1

The obvious way to do it is to calculate the lengths of all the lines and store it as an attribute before loading the data into GeoServer.



Only top voted, non community-wiki answers of a minimum length are eligible