1

I'm developping an web-application using opengeo server. The data is stored into a PostGIS database, and some tables contains non-spatial data (that is related to the geographical data).

Is there a way to access the data in the non-spatial tables (to populate Ext.data.Store) and modify it?

I've tried many things from now, but none of them have succeed.

  • To read the data, I have for example set up a WFS layer, and then a WFS store in the web application. It gives me a read access, but no write access. Even if I get the record from the store, modify it, mark it as dirty and commit the changes, I see that the message that is sent to the server does not contain any modification (no updated records) - maybe because the store is not designed to work without layer.
  • The REST api does not provide access to the data.

An option could be to use web frameworks, but in that case, which ones are the best to use with Opengeo? I prefer to avoid this solution because it would require to manage an other server application (and it will complicate the management of the creditentials, since authentication is required to access the data).

Thanks!

  • Are you talking about a gxp.data.WFSFeatureStore? This is meant to be used with a gxp.data.FeatureManager, and that is meant to be used with a WMS layer. If you don't want to use a layer, use a GeoExt.data.FeatureStore. This is e.g. explained in workshops.opengeo.org/geoext/wfs. – ahocevar Jun 27 '13 at 9:25
  • Thanks for your answer. I tried different combinations. The GeoExt.data.FeatureStore (read access only), but also creating a plug in to have a gxp.plugins.FeatureManager and then using a gxp.grid.FeatureGrid (with a WMS-layer then, I added a spatial column for the test). In the last case, the grid is populated with the right values, but impossible to change them. I guess it is related to authentication, but I don't find a lot of documentation that explains how to handle it. – Renaud Jun 27 '13 at 13:42
  • A little complement to my previous comment: when I said that the GeoExt.dataFeatureStore only allow a read-access, the detail is rather: the changes are 'recorded' as long as I don't commit them (and the cell is the grid is marked as dirty, but the record itself no). When I commit them (using protocol.commit(...)) and I look at the message that is sent to the server (using the dev inspector of the browser), it looks like the sent XML do not contain any updated value. Of course, when the grid is updated, it contains the old values. – Renaud Jun 27 '13 at 14:02
  • And in the case of the gxp.grid.featureGrid: cell editing is not allowed. That's why I think it is related to authentication: I guess that the store is marked as non-editable, because the credentials are not sent properly. – Renaud Jun 27 '13 at 14:13
  • In the GeoExt case, the browser should challenge you for credentials when you commit, so that should work transparently. As you can see in the tutorial I linked above, there is some hand work to do to mark the records and the features dirty. I'd really recommend working through that tutorial. It should not matter whether your features have geometries or not. – ahocevar Jun 28 '13 at 16:18

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.