AnsweredAssumed Answered

Accessing Non-SDE datasource with an SOE

Question asked by m.rieke on Oct 22, 2014

Hi all,

 

is there a way to access and query the underlying datasource of a service that is non in the SDE schema? I have been developing a Java-based SOE which does some querying using the MapServer's DataAccess:

 

        IMapServer3 ms = (IMapServer3) getMapServerDataAccess();

        String mapName = ms.getDefaultMapName();

        IMapServerDataAccess mapServerDataAccess = sos.getMapServerDataAccess();

        Object dataSource= mapServerDataAccess.getDataSource(mapName, 0);

        FeatureClass fc = new FeatureClass(dataSource);

        workspace = new Workspace(fc.getWorkspace());

 

This works well if the registered datasource is an SDE database. But when I do this with a non-SDE (using DBO), I receive a different implementation of IWorkspace (in fact an SqlWorkspace object, instead of an IWorkspaceProxy). It throws an AutomationException ("not implemented") for

 

        workspace.createQueryDef()

 

calls.

 

Can I work around this issue? Is there an alternative way to query database data (SqlWorkspace does not seem to have methods for this purpose)?

 

Thanks and kind regards,

Matthes

Outcomes