IDEA
|
While this is an old idea, I think it is even more relevant today. While photos typically used to smaller than 1 MB years ago, it is now not unusual for a photo to be several MB. What's more, some users tend to record video's rather than taking pictures. And I recently learned the hard way that video's >100 MB do not give a good performance 😥. This is a real world scenario that I think should be properly supported by Esri. Now, I am using PostgreSQL, not SQL Server, so I can't use a filestream. So I'd like to see a way of storing (large) attachment on a filesystem, independent of the actual database being used. This should of course be totally transparent to client software
... View more
01-03-2024
03:26 AM
|
0
|
0
|
99
|
POST
|
I'm building a library that uploads certain items to ArcGIS Portal or ArcGIS Online using addItem. I found out that if the title contains either < or >, the title is stripped after that character. This is not just a display issue, I checked using the ArcGIS Assistant, and can confirm that the actual title of the item is modified My first thought was that I had to escape the form parameters in the POST request, and replace < with %3C etc, but that didn't fix it. Eventually it turned out that changing < to < and > to > does fix the issue, but this is strange because we are not in an HTML or XML context. However, this made me wonder, which other special characters do I need to escape? I'm now using the .NET method HttpUtility.HtmlEncode() which encodes &<>\ (Note, I already found out that a + in a title is completely impossible due to an almost two year old bug)
... View more
12-13-2023
06:52 AM
|
0
|
0
|
333
|
POST
|
Hi@sxw_eaglegis Do you also know if there are restrictions on accessing FeatureServices by an AppID? I published a featureservice from an Enterprise geodatabase to our portal, but can only query it when I use a token created for a user, not for an app. (The response is "Invalid Token"). The app and the FeatureService have the same owner. I also noticed that it is possible for an app to access hosted featurelayers on arcgis.com, so it looks like there are some differences there.
... View more
09-08-2023
03:42 AM
|
0
|
0
|
292
|
POST
|
Did you read the article I linked to? It will tell you exactly what to do
... View more
09-06-2023
11:56 PM
|
0
|
0
|
333
|
POST
|
Could you be a bit more specific about what exactly does not work? For instance, is the Drop event called at all? That said, I think you need to initiate drag-drop in the MouseMove event first. See here for an example (it is for .NET Framework, but Core will probably be very similar)
... View more
09-06-2023
11:40 PM
|
0
|
2
|
604
|
POST
|
Thanks, I replaced that line with var creds = await AuthenticationManager.Current.GenerateCredentialAsync(
new Uri("https://example.com/portal"),
challengeRequest.GenerateTokenOptions); But now the program throws an exception 'OAuth-Client-id must be set before trying to generate an OAuth token'. I think this is because the runtime is trying to lookup a serverInfo for the /portal URL rather than /arcgis. After adding a new serverinfo for /portal with the same clientid and secret to the AuthenticationManager, GenerateCredentials works, but it returns a credentials object for /portal, not /arcgis. I also tried to return a new Credentials object for the correct /arcgis URl, but that doesn't seem to be accepted either. //return creds;
return new OAuthTokenCredential(new Uri("https://example.com/arcgis/rest"), creds.Token)
{
ExpirationDate = creds.ExpirationDate,
GenerateTokenOptions = creds.GenerateTokenOptions
}; My CreateCredentialAsync method is called three times, before finally giving up.
... View more
09-06-2023
05:59 AM
|
0
|
0
|
236
|
POST
|
I'm trying to access a protected feature service using the Maps SDK version 200.2, and would like to use an application login to do so. My basic flow so far is this: AuthenticationManager.Current.ChallengeHandler = new AppChallengeHandler();
var table = new ServiceFeatureTable(new Uri("https://example.com/arcgis/rest/services/Test/FeatureServer/0"));
await table.LoadAsync(); and internal class AppChallengeHandler : IChallengeHandler
{
public async Task<Credential> CreateCredentialAsync(CredentialRequestInfo requestInfo)
{
var challengeRequest = new CredentialRequestInfo
{
GenerateTokenOptions = new GenerateTokenOptions
{
TokenAuthenticationType = TokenAuthenticationType.OAuthClientCredentials,
},
ServiceUri = new Uri("https://example.com/portal"),
};
var serverInfo = AuthenticationManager.Current.FindServerInfo(
new Uri("https://example.com/arcgis/rest"));
serverInfo.OAuthClientInfo = new OAuthClientInfo(
CLIENTID,
new Uri("https://example.com"),
CLIENTSECRET);
serverInfo.TokenAuthenticationType = TokenAuthenticationType.OAuthClientCredentials;
var creds = await AuthenticationManager.Current.GetCredentialAsync(challengeRequest, false);
if (creds == null)
{
throw new Exception("Not authorized");
}
return creds;
}
} The call to LoadAsync triggers CreateCredentialsAsync, at which time a serverInfo object for the service is added to the AuthenticationManager. However, the code just stops at GetCredentialsAsync, no exception, nothing in the output window of Visual Studio, no request to be seen in Fiddler. Does anyone know how to do this?
... View more
09-06-2023
03:57 AM
|
0
|
2
|
303
|
POST
|
I noticed that when I use an app login (with client ID and secret), there are some limitations, as compared to a user login. Where can I find documentation of these limitations? Examples: Can only access items in ArcGIS that are owned by the user that created the app Cannot share items Cannot search groups (?) more?
... View more
07-25-2023
07:28 AM
|
1
|
2
|
465
|
POST
|
Thanks for your response, it's good to see I'm not the only one having this problem. In the environment I'm working on, only AD users are allowed to login, so unfortunately a built-in user is not an option for me. Please keep us informed if tech supports finds a solution!
... View more
03-08-2023
11:16 PM
|
0
|
0
|
1920
|
POST
|
I'm trying to login in ArcGIS Enterprise, using a fairly standard call: gis = GIS(portalUrl, user, pass) This used to work, but now I get an error: 2023-03-07 10:08:59,110 - DEBUG - Connecting to portal: example.com 2023-03-07 10:08:59,114 - DEBUG - Starting new HTTPS connection (1): example.com:443 2023-03-07 10:09:00,029 - DEBUG - https://example.com:443 "GET /portal/info?f=json HTTP/1.1" 500 7058 2023-03-07 10:09:00,035 - DEBUG - https://example.com:443 "GET /portal/rest/info?f=json HTTP/1.1" 500 7058 2023-03-07 10:09:00,042 - DEBUG - https://example.com:443 "GET /portal/sharing/rest/info?f=json HTTP/1.1" 200 139 2023-03-07 10:09:00,048 - DEBUG - https://example.com:443 "GET /portal/rest/services?f=json HTTP/1.1" 500 7058 2023-03-07 10:09:00,157 - ERROR - Please ensure gssapi is installed 2023-03-07 10:09:00,171 - DEBUG - Traceback (most recent call last): File "D:\Program Files\ArcGIS\Pro\bin\Python\envs\arcgispro-py3\lib\site-packages\arcgis\auth\_auth\_winauth.py", line 75, in __init__ creds = gssapi.raw.acquire_cred_with_password( File "gssapi\raw\ext_password.pyx", line 75, in gssapi.raw.ext_password.acquire_cred_with_password gssapi.raw.exceptions.BadNameError: Major (131072): An invalid name was supplied, Minor (2529639136): Configuration file does not specify default realm During handling of the above exception, another exception occurred: Traceback (most recent call last): File "D:\Data\MOR\Migratie\Download-wf5.py", line 45, in <module> main() File "D:\Data\MOR\Migratie\Download-wf5.py", line 33, in main gis = GIS(settings.ARCGIS_PORTAL_URL, settings.ARCGIS_USER, settings.ARCGIS_PASS) File "D:\Program Files\ArcGIS\Pro\bin\Python\envs\arcgispro-py3\lib\site-packages\arcgis\gis\__init__.py", line 585, in __init__ raise e File "D:\Program Files\ArcGIS\Pro\bin\Python\envs\arcgispro-py3\lib\site-packages\arcgis\gis\__init__.py", line 524, in __init__ self._portal = _portalpy.Portal( File "D:\Program Files\ArcGIS\Pro\bin\Python\envs\arcgispro-py3\lib\site-packages\arcgis\gis\_impl\_portalpy.py", line 205, in __init__ self.con = Connection( File "D:\Program Files\ArcGIS\Pro\bin\Python\envs\arcgispro-py3\lib\site-packages\arcgis\gis\_impl\_con\_connection.py", line 344, in __init__ self._create_session() File "D:\Program Files\ArcGIS\Pro\bin\Python\envs\arcgispro-py3\lib\site-packages\arcgis\gis\_impl\_con\_connection.py", line 691, in _create_session self._session.auth = EsriWindowsAuth( File "D:\Program Files\ArcGIS\Pro\bin\Python\envs\arcgispro-py3\lib\site-packages\arcgis\auth\_auth\_winauth.py", line 84, in __init__ raise Exception("Please ensure gssapi is installed") Exception: Please ensure gssapi is installed A few things to notice: Some requests to the portal return HTTP 500 The first error is Configuration file does not specify default realm . Which configuration file could this be referring to? The second error is Please ensure gssapi is installed This is on a client's environment, so I'm not sure if anything relevant has changed recently. One thing that did change is an upgrade to ArcGIS Pro from 3.0 to 3.1.
... View more
03-07-2023
01:17 AM
|
0
|
15
|
2557
|
POST
|
In Pro, I can add some geodatabase functionality to many-to-many relationship classes, e.g. editor tracking, global ID's and archiving. This will add the appropriate fields to the intermediate (or 'junction') table. When I do this, I can, for instance, add the intermediate table to a featureservice, to take it offline. How can I do this using arcpy?
... View more
02-09-2023
08:17 AM
|
0
|
1
|
232
|
POST
|
For the curious: When adding the (many to many) relationshipclass to the map, it will actually add the intermediate table. This can be published, so that one can manually add records to that table.
... View more
02-09-2023
07:19 AM
|
0
|
0
|
187
|
POST
|
@MarkBockenhauer, yes that seems the obvious solution, why didn't I think of that? Now I need to find out how to automate generating 50 vector tile packages... I'm not much of a Python developer 😉
... View more
02-07-2023
12:10 AM
|
0
|
0
|
224
|
POST
|
Hi, I have a mobile application where users, beside a normal basemap, use about 50 layers with more or less static reference data from a feature service. The total size of the data is not very big, roughly 50MB I noticed that the number of layers has a large impact on startup time for the app, and also when synchronizing to go offline. My first idea was to create a tiled vector package, and add it to a local mmpk which already contains a topographical basemap, and aerial photography. This actually works really well performance wise, but when doing this, users can no longer turn individual layers on and off because basemaps are shown as a single layer. I also thought about using a local file geodatabase, but I don't see an easy way to apply symbology in the app. Or is there a concept similar to layerfiles in ArcGIS runtime? I haven't found anything yet. What would be the best way to go about this?
... View more
02-03-2023
07:15 AM
|
0
|
2
|
259
|
POST
|
How can I add records to a many-to-many relationshipclass in ArcGIS Server using the REST interface? For a one-to-many relationship it's easy, as you can just grab the foreign key from the source table, and use that to insert (or update) records in the destination. However, with many-to-many, we would need to add a record to the junction (or 'intermediate') table. I can't seem to find any information about this.
... View more
01-31-2023
07:34 AM
|
0
|
1
|
261
|
Title | Kudos | Posted |
---|---|---|
1 | 10-02-2019 07:47 AM | |
1 | 07-25-2023 07:28 AM | |
1 | 12-06-2019 12:29 AM | |
1 | 12-09-2022 02:43 AM | |
3 | 03-16-2021 02:50 AM |
Online Status |
Offline
|
Date Last Visited |
Tuesday
|