Providing multiple endpoints on a feature service

788
4
11-22-2011 05:04 AM
JonathanBailey
Occasional Contributor III
I'm trying to design a feature service that will be consumed by multiple clients: some of them will be ArcGIS clients like an Engine application, and others will be non-ArcGIS clients that support open formats like WFS or KML.

My initial thought was to define an ArcGIS Server feature service that provided the various endpoints for the different clients (including providing native support for ArcGIS clients). However, my customer wishes to remain "independent" of ArcGIS Server for the non-ArcGIS clients.

This could be accomplished by providing 2 implementations of the service: one feature service hosted in ArcGIS Server, and another generic web service hosted by IIS or Apache that provides the open end points. However, I would strongly prefer not to provide 2 implementations of the same service just to get the different endpoints.

Are there any good patterns for achieving these design goals? Any suggestions on how to approach this?

Thanks,

Jon.
0 Kudos
4 Replies
DippanShukle
New Contributor
Jon
I think the safest approach would be to implement as two services. I don't believe you could do it on the same service with the different endpoints. What is the desire to remain agnostic from ArcGIS Server if you are serving WMS/WFS and KML clients? It seems like overcomplicating what could be done very simply.

The benefit of hosting it in IIS or Apache separately is some failover, if you are using a different SOC and SOM server than the server hosting the WFS/WMS implementation, even if ArcGIS server goes down, your other clients still are running.

Dippan
0 Kudos
JonathanBailey
Occasional Contributor III
Hi Dippan,

Thanks for your thoughts on this.

Isn't it possible to create the different endpoints by specifying multiple capabilities for the service (Feature Access, KML, WFS)? Then you access the same service via different URLs that each give you a different capability / protocol.

I agree that not just providing the WFS and KML capabilities via ArcGIS Server does complicate the architecture. I think that the reasons are more ideological than pragmatic.

Good point on failover -- I'll have to mull that one over a bit.

Thanks,

Jon.
0 Kudos
DippanShukle
New Contributor
But doesn't arcgis regenerate the WSDL each time you make any change to the service and would it get rid of your other endpoints?  Not sure about this but it would make sense so that if you do change the service (i.e. add KML to it), it would regen the WSDL and the endpoints and what would happen in the event that someone added KML to the service in Server Manager?

Again, not sure about this but just some random thoughts that came to mind.

Dippan
0 Kudos
JonathanBailey
Occasional Contributor III
Hi Dippan,

You're right -- if the service is edited, I believe that the endpoints will be regenerated. I'm not too concerned about this -- the service definitions won't change frequently (if at all) in the target system.

Thanks,

Jon.
0 Kudos