We have an application that is making bulk requests to NAServer enabled on the map service. To tune and optimize the performance, we plan to consolidate all requests in a single request that should be handled by an SOE that would internally use NAServer for all the requests. So far I have been unable to find the path to acquire INAServer(2)`s reference from ServerObjectHelper that is passed in the init() method of SOE. Has anybody tried this before, or does the SOE need to load NA capabilities by accessing the actual MXD?
IMapServer3 ms = (IMapServer3) this.soHelper.getServerObject();
IServerObjectExtensionManager soeManager = new IServerObjectExtensionManagerProxy(ms);
IServerObjectExtension soe = soeManager.findExtensionByTypeName("NAServer"); // this is null ....tried Network Analyst, NA, NA_Server, NA_Extension
INAServer2 naServer = (INAServer2)soe ; // this is NULL