虽然 mxd 显示数据,但 WMS 层为空
我使用 ArcGIS Server 来提供数据库中的点地图。当我在 AGS 中创建并发布 mxd 作为 WMS 服务时,一切看起来都很好。但过了一会儿,第二天或者什么的——地图上什么也没显示。对该层的 WMSServer 的每个请求都返回空。在 ArcMap 中打开 mxd 显示了预期的正确数据,只有 WMS 调用有错误。
可能是什么问题?
细节: 我创建一个 mxd 文件,并从非空间数据库向其中添加数据。要创建图层,我右键单击数据源并选择“显示 XY 数据...”,然后从数据中选择 X 和 Y 列。
在 AGS Manager 中,我选择“添加新服务”并指向该 mxd 文件,使用其中的所有默认设置。我还尝试了更简单的“发布GIS资源”并得到了相同的结果。
I use ArcGIS Server to serve a map of points from a database. When I create and publish the mxd as a WMS service in AGS everything looks fine. But after a while, the day after or something - the map shows nothing. Every request to the WMSServer for that layer comes back empty. Opening the mxd in ArcMap shows the correct data as expected, only the WMS calls are faulty.
What could be the problem?
Details:
I create an mxd file, and add data to it from a non-spatial database. To create the layers I right-click on the data source and select "Display XY data..." and select the X and Y columns from the data.
In AGS Manager I select "Add new service" and point to that mxd file, using all default settings from that. I have also tried the simpler "Publish GIS resource" and got the same results.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
看来是我在 mxd 文件中设置数据连接的方式导致了问题。 ArcGIS 服务器使用系统帐户来运行所有服务(在我们的实例中为“ArcGISWS”),并且该帐户无权访问我在 mxd 中引用的所有数据。更改为使用 ArcGISWS 帐户设置的 mxd,一切都按预期进行。我想任何人执行此操作的解决方案都是使用预期帐户(ArcGISWS)登录到ArcGIS Server并创建mxd,在这种情况下,数据访问的所有问题都将在ArcMap中显而易见,并且用户可以解决这些问题发布服务之前出现的问题。
至少,这就是我所推荐的。 :-)
地图最初工作的奇怪行为背后的原因一定是连接缓存或其他东西,因此当 AGS 在夜间回收连接或池时,该连接被删除,留下 ArcGISWS 帐户来执行连接,由于缺乏权限而无法实现。
希望我可以帮助某人尝试解决方案。
It appears as it was the way I set up the data connections in the mxd file that caused the problem. ArcGIS server uses a system account to run all services ("ArcGISWS" in our instance), and that account didn't have access to all data that I referenced in the mxd. Changing to an mxd that was set up using the ArcGISWS account, everything works as expected. I guess that the solution for anyone doing this is to log in to the ArcGIS Server with the intended account (ArcGISWS) and create the mxd, in that case all problems with data access will be obvious already in ArcMap, and the user can solve those issues before publishing the service.
At least, that is what I'll recommend. :-)
The reason behind the strange behaviour of the map working at first must have been a connection cache or something, so when the AGS recycled the connections or pools during the night, that connection was removed, leaving the ArcGISWS account to do the connection, which it couldn't due to lack of permissions.
Hope I can help someone with this attempt of a solution.