Take the 2-minute tour ×
Geographic Information Systems Stack Exchange is a question and answer site for cartographers, geographers and GIS professionals. It's 100% free, no registration required.

Is it possible and/or feasible for an Oracle trigger to periodically update ArcSDE via a REST geoprocessing service?

Does anyone have any experience with such a thing?

The reason for this is that I have an Oracle database that is separate from the SDE database, and there are number of business rules that we want to run first, before inserting the geometry into SDE.

So the basic workflow would be:
1. Point features via ArcGIS Server via ArcSDE loaded onto web map
2. User moves point or edits attributes
3. Edits to points first get written to Oracle, then, via trigger to ArcSDE

share|improve this question
add comment

2 Answers 2

Oracle database can access web-based services (incl. REST) via built-in UTL_HTTP package.
You formulate & set-up the request, send it and receive & process the response.

I don't have any experience with the package, but your workflow seems to be doable.

Update
The code could be like this:

DECLARE
  req   utl_http.req;
  resp  utl_http.resp;
  name  VARCHAR2(256);
  value VARCHAR2(1024);
BEGIN

  utl_http.set_proxy('proxy.my-company.com', 'corp.my-company.com');    

  req := utl_http.begin_request('http://www.my-company.com/rest/process');
  utl_http.set_header(req, 'User-Agent', 'Mozilla/4.0');
  resp := utl_http.get_response(req);
  LOOP
    utl_http.read_line(resp, value, TRUE);
    dbms_output.put_line(value);
  END LOOP;
  utl_http.end_response(resp);
EXCEPTION
  WHEN utl_http.end_of_body THEN
    utl_http.end_response(resp);
END;

You just wrap this into you trigger.

share|improve this answer
add comment

Have you considered using ArcGIS Feature Services?

share|improve this answer
1  
Hmmm... not sure how that would help exactly? –  yalestar Jan 9 '13 at 16:00
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.