I have Rest Service and I can see that service in browser . But when I want to use in QT/QML application in "ArcGISTiledMapServiceLayer" object ,give an error like below.How can I solve this problem or how can I use rest services like (..../MapServer or /FeatureServer). Example services are in arcgisonline like (http://services.arcgisonline.com/ArcGIS/rest/services/Canvas/World_Light_Gray_Base/MapServer) for example I want to use my own services , how can I use my own services in application without arcgisonline?
Thanks
Solved! Go to Solution.
KK-
ArcGISDynamicMapServiceLayer isn't the layer you want for editing. This type of layer is for retrieving images from a server, similar to ArcGISTiledMapServiceLayer. The difference between these 2 is that the dynamic layer can be dynamically changed on the server, whereas the tiled layer has pre-generated tiles stored on the server.
If you are editing, you want to use the FeatureLayer and the GeodatabaseFeatureServiceTable/GeodatabaseFeatureTable. In MVC speak, the GeodatabaseFeatureTable is your model and the FeatureLayer is your view. In order to switch from online to offline, switch the feature table on the FeatureLayer from the GeodatabaseFeatureServiceTable to GeodatabaseFeatureTable. The "Local geodatabase editing" sample should show this concept.
Thanks,
Luke
The code seems to look fine. Can you copy in the output from the console please? The only other things I noticed were you are still using 10.3 Beta, but we recommend using 10.2.5, which is a final release with the same capabilities. Also, you set up an extent. To simplify it (and make sure there aren't extent or spatial reference issues), can you make it so there is just a map with a tiled service in it, and nothing else?
Here is my extend in browser servis below:
And here is my output from the console :
Starting C:\Users\tkoka\Documents\build-MapServer-Desktop_Qt_5_4_1_MSVC2013_OpenGL_64bit-Debug\debug\MapServer.exe...
QML debugging is enabled. Only use this in a safe environment.
Initializing application
ArcGIS.Runtime.Plugin: void __cdecl ArcGISRuntimePlugin::registerTypes(const char *) ArcGIS.Runtime
ArcGIS.Runtime.Plugin: void __cdecl ArcGISRuntimePlugin::initializeEngine(class QQmlEngine *,const char *) ArcGIS.Runtime
ArcGIS.Runtime.Plugin: void __cdecl ArcGISRuntimePlugin::initializeLicense(void) Invalid clientId QVariant(QString, "") status 1
ArcGIS.Runtime.Plugin: void __cdecl ArcGISRuntimePlugin::initializeEngine(class QQmlEngine *,const char *) Setting global image provider QVariant(void*, 0x522f100)
Rendering engine : OpenGL
ArcGIS.Runtime.Map: void __cdecl QmlMap::classBegin(void)
ArcGIS.Runtime.Map: void __cdecl QmlMap::componentComplete(void)
ArcGIS.Runtime.Map: void __cdecl QmlMap::componentComplete(void) Adding 1 declared layer(s)
int __cdecl main(int,char *[]) ApplicationWindow_QMLTYPE_12(0x5785f70)
qt.network.ssl: QSslSocket: cannot resolve TLSv1_1_client_method
qt.network.ssl: QSslSocket: cannot resolve TLSv1_2_client_method
qt.network.ssl: QSslSocket: cannot resolve TLSv1_1_server_method
qt.network.ssl: QSslSocket: cannot resolve TLSv1_2_server_method
qt.network.ssl: QSslSocket: cannot resolve SSL_select_next_proto
qt.network.ssl: QSslSocket: cannot resolve SSL_CTX_set_next_proto_select_cb
qt.network.ssl: QSslSocket: cannot resolve SSL_get0_next_proto_negotiated
Hi KK,
Do you still have an issue after moving 10.2.5? Did you try to run your application in release?
You will need to refactor your code in order to work with the latest release.
Regards,
Jen Trieu | Product Eng.
Yes I have still an issue after moving 10.2.5
Here is my application below:
Here is my error below:
And my output console :
Starting C:\Users\tkoka\Documents\build-MAPServerApp-Desktop_Qt_5_4_0_MSVC2013_OpenGL_64bit-Debug\debug\MAPServerApp.exe...
QML debugging is enabled. Only use this in a safe environment.
Initializing application
ArcGIS.Runtime.Plugin: void __cdecl ArcGISRuntimePlugin::registerTypes(const char *) ArcGIS.Runtime
ArcGIS.Runtime.Plugin: void __cdecl ArcGISRuntimePlugin::initializeEngine(class QQmlEngine *,const char *) ArcGIS.Runtime
ArcGIS.Runtime.Plugin: void __cdecl ArcGISRuntimePlugin::initializeLicense(void) Invalid clientId QVariant(QString, "") status 1
ArcGIS.Runtime.Plugin: void __cdecl ArcGISRuntimePlugin::initializeEngine(class QQmlEngine *,const char *) Setting global image provider QVariant(void*, 0x51d22b0)
Rendering engine : OpenGL
ArcGIS.Runtime.Map: void __cdecl QmlMap::classBegin(void)
ArcGIS.Runtime.Map: void __cdecl QmlMap::componentComplete(void)
ArcGIS.Runtime.Map: void __cdecl QmlMap::componentComplete(void) Adding 1 declared layer(s)
int __cdecl main(int,char *[]) ApplicationWindow_QMLTYPE_12(0x5a28830)
QSslSocket: cannot resolve TLSv1_1_client_method
QSslSocket: cannot resolve TLSv1_2_client_method
QSslSocket: cannot resolve TLSv1_1_server_method
QSslSocket: cannot resolve TLSv1_2_server_method
QSslSocket: cannot resolve SSL_select_next_proto
QSslSocket: cannot resolve SSL_CTX_set_next_proto_select_cb
QSslSocket: cannot resolve SSL_get0_next_proto_negotiated
<RTC_ASSERTION>
Runtimecore Assertion Failed!
Condition: lods_size > 0C:\daily_d\rtc\runtimecore\map_renderer\include\map_renderer/tile_layer.h(87)
</RTC_ASSERTION>
The program has unexpectedly finished.
C:\Users\tkoka\Documents\build-MAPServerApp-Desktop_Qt_5_4_0_MSVC2013_OpenGL_64bit-Debug\debug\MAPServerApp.exe crashed
Starting C:\Users\tkoka\Documents\build-MAPServerApp-Desktop_Qt_5_4_0_MSVC2013_OpenGL_64bit-Debug\debug\MAPServerApp.exe...
QML debugging is enabled. Only use this in a safe environment.
Initializing application
ArcGIS.Runtime.Plugin: void __cdecl ArcGISRuntimePlugin::registerTypes(const char *) ArcGIS.Runtime
ArcGIS.Runtime.Plugin: void __cdecl ArcGISRuntimePlugin::initializeEngine(class QQmlEngine *,const char *) ArcGIS.Runtime
ArcGIS.Runtime.Plugin: void __cdecl ArcGISRuntimePlugin::initializeLicense(void) Invalid clientId QVariant(QString, "") status 1
ArcGIS.Runtime.Plugin: void __cdecl ArcGISRuntimePlugin::initializeEngine(class QQmlEngine *,const char *) Setting global image provider QVariant(void*, 0x4968180)
Rendering engine : OpenGL
ArcGIS.Runtime.Map: void __cdecl QmlMap::classBegin(void)
ArcGIS.Runtime.Map: void __cdecl QmlMap::componentComplete(void)
ArcGIS.Runtime.Map: void __cdecl QmlMap::componentComplete(void) Adding 1 declared layer(s)
int __cdecl main(int,char *[]) ApplicationWindow_QMLTYPE_12(0x4fd82d0)
QSslSocket: cannot resolve TLSv1_1_client_method
QSslSocket: cannot resolve TLSv1_2_client_method
QSslSocket: cannot resolve TLSv1_1_server_method
QSslSocket: cannot resolve TLSv1_2_server_method
QSslSocket: cannot resolve SSL_select_next_proto
QSslSocket: cannot resolve SSL_CTX_set_next_proto_select_cb
QSslSocket: cannot resolve SSL_get0_next_proto_negotiated
<RTC_ASSERTION>
Runtimecore Assertion Failed!
Condition: lods_size > 0C:\daily_d\rtc\runtimecore\map_renderer\include\map_renderer/tile_layer.h(87)
</RTC_ASSERTION>
QWaitCondition: Destroyed while threads are still waiting
C:\Users\tkoka\Documents\build-MAPServerApp-Desktop_Qt_5_4_0_MSVC2013_OpenGL_64bit-Debug\debug\MAPServerApp.exe exited with code 3
Starting C:\Users\tkoka\Documents\build-MAPServerApp-Desktop_Qt_5_4_0_MSVC2013_OpenGL_64bit-Debug\debug\MAPServerApp.exe...
QML debugging is enabled. Only use this in a safe environment.
Initializing application
ArcGIS.Runtime.Plugin: void __cdecl ArcGISRuntimePlugin::registerTypes(const char *) ArcGIS.Runtime
ArcGIS.Runtime.Plugin: void __cdecl ArcGISRuntimePlugin::initializeEngine(class QQmlEngine *,const char *) ArcGIS.Runtime
ArcGIS.Runtime.Plugin: void __cdecl ArcGISRuntimePlugin::initializeLicense(void) Invalid clientId QVariant(QString, "") status 1
ArcGIS.Runtime.Plugin: void __cdecl ArcGISRuntimePlugin::initializeEngine(class QQmlEngine *,const char *) Setting global image provider QVariant(void*, 0x353d7f0)
Rendering engine : OpenGL
ArcGIS.Runtime.Map: void __cdecl QmlMap::classBegin(void)
ArcGIS.Runtime.Map: void __cdecl QmlMap::componentComplete(void)
ArcGIS.Runtime.Map: void __cdecl QmlMap::componentComplete(void) Adding 1 declared layer(s)
int __cdecl main(int,char *[]) ApplicationWindow_QMLTYPE_12(0x3d47330)
QSslSocket: cannot resolve TLSv1_1_client_method
QSslSocket: cannot resolve TLSv1_2_client_method
QSslSocket: cannot resolve TLSv1_1_server_method
QSslSocket: cannot resolve TLSv1_2_server_method
QSslSocket: cannot resolve SSL_select_next_proto
QSslSocket: cannot resolve SSL_CTX_set_next_proto_select_cb
QSslSocket: cannot resolve SSL_get0_next_proto_negotiated
<RTC_ASSERTION>
Runtimecore Assertion Failed!
Condition: lods_size > 0C:\daily_d\rtc\runtimecore\map_renderer\include\map_renderer/tile_layer.h(87)
</RTC_ASSERTION>
The program has unexpectedly finished.
C:\Users\tkoka\Documents\build-MAPServerApp-Desktop_Qt_5_4_0_MSVC2013_OpenGL_64bit-Debug\debug\MAPServerApp.exe crashed
Starting C:\Users\tkoka\Documents\build-MAPServerApp-Desktop_Qt_5_4_0_MSVC2013_OpenGL_64bit-Debug\debug\MAPServerApp.exe...
QML debugging is enabled. Only use this in a safe environment.
Initializing application
ArcGIS.Runtime.Plugin: void __cdecl ArcGISRuntimePlugin::registerTypes(const char *) ArcGIS.Runtime
ArcGIS.Runtime.Plugin: void __cdecl ArcGISRuntimePlugin::initializeEngine(class QQmlEngine *,const char *) ArcGIS.Runtime
ArcGIS.Runtime.Plugin: void __cdecl ArcGISRuntimePlugin::initializeLicense(void) Invalid clientId QVariant(QString, "") status 1
ArcGIS.Runtime.Plugin: void __cdecl ArcGISRuntimePlugin::initializeEngine(class QQmlEngine *,const char *) Setting global image provider QVariant(void*, 0x3714db0)
Rendering engine : OpenGL
ArcGIS.Runtime.Map: void __cdecl QmlMap::classBegin(void)
ArcGIS.Runtime.Map: void __cdecl QmlMap::componentComplete(void)
ArcGIS.Runtime.Map: void __cdecl QmlMap::componentComplete(void) Adding 1 declared layer(s)
int __cdecl main(int,char *[]) ApplicationWindow_QMLTYPE_12(0x469f4a0)
QSslSocket: cannot resolve TLSv1_1_client_method
QSslSocket: cannot resolve TLSv1_2_client_method
QSslSocket: cannot resolve TLSv1_1_server_method
QSslSocket: cannot resolve TLSv1_2_server_method
QSslSocket: cannot resolve SSL_select_next_proto
QSslSocket: cannot resolve SSL_CTX_set_next_proto_select_cb
QSslSocket: cannot resolve SSL_get0_next_proto_negotiated
<RTC_ASSERTION>
Runtimecore Assertion Failed!
Condition: lods_size > 0C:\daily_d\rtc\runtimecore\map_renderer\include\map_renderer/tile_layer.h(87)
</RTC_ASSERTION>
The program has unexpectedly finished.
C:\Users\tkoka\Documents\build-MAPServerApp-Desktop_Qt_5_4_0_MSVC2013_OpenGL_64bit-Debug\debug\MAPServerApp.exe crashed
Thanks
KK,
Is it possible to share your service with us? It looks like there is an assertion thrown relating to something in the Levels of detail in the service. If you cannot let us use the actual service, can you please send a screenshot of the TileInfo on your service?
Thanks,
Luke
Lucas ,
The problem solved when I use url into "ArcGISDynamicMapServiceLayer" but I want to do offline editing using my service in "Local geodatabase editing" sample.Can I do with "ArcGISDynamicMapServiceLayer" ?
Thansk.
KK-
ArcGISDynamicMapServiceLayer isn't the layer you want for editing. This type of layer is for retrieving images from a server, similar to ArcGISTiledMapServiceLayer. The difference between these 2 is that the dynamic layer can be dynamically changed on the server, whereas the tiled layer has pre-generated tiles stored on the server.
If you are editing, you want to use the FeatureLayer and the GeodatabaseFeatureServiceTable/GeodatabaseFeatureTable. In MVC speak, the GeodatabaseFeatureTable is your model and the FeatureLayer is your view. In order to switch from online to offline, switch the feature table on the FeatureLayer from the GeodatabaseFeatureServiceTable to GeodatabaseFeatureTable. The "Local geodatabase editing" sample should show this concept.
Thanks,
Luke