Thanks for you response. I rephrase the question: I have a web application where a user uploads a shapefile and this needs to be inserted into a postgis table that has the same fields (in append mode). Shapefile and table don't necessarily have the same name. There is a manner to execute this task via rest api or importer api?
Thanks Giuseppe Il giorno mer 11 mag 2022 alle ore 09:31 Jody Garnett < jody.garn...@gmail.com> ha scritto: > I tried using the importer user interface using a shapefile, and while I > can adjust the name of the layer being created, the result still has the > native name unchanged. > > So I think you are looking change to the code, it would be a nice change > allowing user to define the name of the table being imported. > -- > Jody Garnett > > > On May 10, 2022 at 12:14:37 AM, Giuseppe Falcone < > falcone.giuse...@gmail.com> wrote: > >> I use importer rest api. >> So: >> step 1: POST /geoserver/rest/imports (specifying target workspace and >> target datastore) to obtain an importID >> step2: POST /geoserver/rest/imports/<importID>/tasks (passing zip file >> into body) to obtain a taskID (zip is uploaded into geoserver data dir and >> is unzipped) >> step3: PUT /geoserver/rest/imports/<importID>/tasks/<taskID>/target >> to reset the target store for given taskID >> step4: POST /geoserver/rest/imports/<importID> to execute import >> >> This sequence of operations create a table named as passed shapefile into >> given workspace/datastore; >> if a table with same name already exists, created table is renamed >> appending number. >> >> If between step2 and step3 I execute PUT >> geoserver/rest/imports/<importID>/tasks/<taskID> >> passing >> { >> "layer": { >> "name": "layer1", >> "title": "layer1" >> } >> } >> I could rename layer on geoserver with a different name than that of the >> table. >> >> If between step2 and step3 I execute PUT >> geoserver/rest/imports/<importID>/tasks/<taskID> >> passing >> { >> "task": { >> "updateMode": "APPEND" >> } >> } >> I could append data into existing table (named as uploaded shapefile) >> >> I can't find a way to insert data from uploaded shapefile shape.shp into >> a table which is called tableA (with same fields obviously) >> >> It's possible? >> Thanks >> >> Giuseppe >> >> >> >> >> Il giorno mar 10 mag 2022 alle ore 06:33 Jody Garnett < >> jody.garn...@gmail.com> ha scritto: >> >>> You may also consider using the resource rest api to upload the file, >>> and the the importer rest api in ingest (it offers greater control as Ian >>> suggests). >>> >>> The upload you found determines a unique table name based on the >>> provided content, so for your shapefile this is based on the filename. >>> >>> The file is here >>> https://github.com/geoserver/geoserver/blob/main/src/restconfig/src/main/java/org/geoserver/rest/catalog/DataStoreFileController.java >>> if >>> you wish to troubleshoot. >>> >>> // does the feature type already exist in the target? >>> try { >>> targetDataStore.getSchema(featureTypeName); >>> } catch (Exception e) { >>> LOGGER.info( >>> featureTypeName >>> + " does not exist in data store >>> " >>> + storeName >>> + ". Attempting to create it"); >>> >>> // schema does not exist, create it by first >>> creating an instance >>> // of the source datastore and copying over its >>> schema >>> >>> targetDataStore.createSchema(sourceDataStore.getSchema(featureTypeName)); >>> sourceDataStore.getSchema(featureTypeName); >>> } >>> >>> -- >>> Jody Garnett >>> >>> >>> On May 9, 2022 at 10:34:22 AM, Giuseppe Falcone < >>> falcone.giuse...@gmail.com> wrote: >>> >>>> Hi >>>> thanks for the response. >>>> I'm building a web application that must have this function. >>>> From browser user upload a shapefile e I put into a db table. >>>> I think REST API are perfect for this purpose. >>>> >>>> Giuseppe >>>> >>>> Il giorno lun 9 mag 2022 alle ore 19:22 Ian Turton <ijtur...@gmail.com> >>>> ha scritto: >>>> >>>>> I'm not sure that you need to involve geoserver in this, Ogr2ogr would >>>>> be quicker and easier to append a shapefile to a database. The GeoServer >>>>> rest api is for creating data stores and layers etc not individual data >>>>> management. >>>>> >>>>> Alternatively you might be able to use the importer extension to do >>>>> this but I've not used that in anger >>>>> >>>>> >>>>> Ian >>>>> >>>>> On Mon, 9 May 2022, 17:25 Giuseppe Falcone, < >>>>> falcone.giuse...@gmail.com> wrote: >>>>> >>>>>> Hi to all >>>>>> I want with geoserver REST API put a shapefile into an existing >>>>>> postgis table. >>>>>> I know how to load a shapefile into a postgis database, but I don't >>>>>> know how I could indicate a specific table in which append data. >>>>>> I Have a shapefile named tableA.shp; it's possible put it's data into >>>>>> a postgis table named tableB? >>>>>> Thanks a lot >>>>>> >>>>>> Giuseppe >>>>>> >>>>>> _______________________________________________ >>>>>> Geoserver-users mailing list >>>>>> >>>>>> Please make sure you read the following two resources before posting >>>>>> to this list: >>>>>> - Earning your support instead of buying it, but Ian Turton: >>>>>> http://www.ianturton.com/talks/foss4g.html#/ >>>>>> - The GeoServer user list posting guidelines: >>>>>> http://geoserver.org/comm/userlist-guidelines.html >>>>>> >>>>>> If you want to request a feature or an improvement, also see this: >>>>>> https://github.com/geoserver/geoserver/wiki/Successfully-requesting-and-integrating-new-features-and-improvements-in-GeoServer >>>>>> >>>>>> >>>>>> Geoserver-users@lists.sourceforge.net >>>>>> https://lists.sourceforge.net/lists/listinfo/geoserver-users >>>>>> >>>>> _______________________________________________ >>>> Geoserver-users mailing list >>>> >>>> Please make sure you read the following two resources before posting to >>>> this list: >>>> - Earning your support instead of buying it, but Ian Turton: >>>> http://www.ianturton.com/talks/foss4g.html#/ >>>> - The GeoServer user list posting guidelines: >>>> http://geoserver.org/comm/userlist-guidelines.html >>>> >>>> If you want to request a feature or an improvement, also see this: >>>> https://github.com/geoserver/geoserver/wiki/Successfully-requesting-and-integrating-new-features-and-improvements-in-GeoServer >>>> >>>> >>>> Geoserver-users@lists.sourceforge.net >>>> https://lists.sourceforge.net/lists/listinfo/geoserver-users >>>> >>>
_______________________________________________ Geoserver-users mailing list Please make sure you read the following two resources before posting to this list: - Earning your support instead of buying it, but Ian Turton: http://www.ianturton.com/talks/foss4g.html#/ - The GeoServer user list posting guidelines: http://geoserver.org/comm/userlist-guidelines.html If you want to request a feature or an improvement, also see this: https://github.com/geoserver/geoserver/wiki/Successfully-requesting-and-integrating-new-features-and-improvements-in-GeoServer Geoserver-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/geoserver-users