POST
|
That did the trick, thank you. I zipped up ngdbc.jar, uploaded it to ArcGis server through /admin/upload Registered it under data/relational Then I was able to make the connections in Insights
... View more
05-01-2020
02:26 PM
|
1
|
0
|
1309
|
POST
|
Thank you so much! That is a great lead. I did not register the JDBC drivers and I did not know about the desktop version. I will try both and report back.
... View more
04-24-2020
07:05 AM
|
0
|
0
|
1309
|
POST
|
I'm trying to get Insights set up in our portal and I'm having trouble getting the db connections to work. I can't seem to find any logs or any detailed error messages. All I get is "New connections are not supported". I have registered the sde connection with ArcGis Server. Portal can see it. ArcGis Pro can use it but I can't get past the first screen in Insights. Any thoughts are much appreciated.
... View more
04-16-2020
10:29 AM
|
0
|
4
|
1458
|
POST
|
Doh - just read this: "Install Postman on your computer so you can create, inspect, and debug HTTP requests." This isn't a library is it ; ( I just saw a vid about a lightweight Esri specific rest lib somewhere - was I imagining?
... View more
04-25-2019
12:29 PM
|
0
|
1
|
491
|
POST
|
Where the heck is it? I can't seem to find a Download/Nuget/Git Repo anywhere. What am I missing? I was hoping to take it for a quick spin with a little C# web service I'm creating.
... View more
04-25-2019
12:26 PM
|
0
|
2
|
588
|
POST
|
Ya, that is not really clear. It's Object Oriented JS - So some objects inherit all the properties and methods of its base class and it's parents base class, and so on. So.... Way way back is Accessor. [Accessor | API Reference | ArcGIS API for JavaScript 4.7 ] This gives each class the ability to create a copy of its code, with that copy you can overwrite any method you wish. I needed to change the symbology to Any Color/Size/Outline the user wanted - So I createSubclass and overwrote its "getSymbol" method. I'm thinking you can do the same but instead of changing color and style, you could insert some CSS to or an animated SVG. Either way, you could place a hook on it that you could use the DOM to look for later after render. community.esri.com/thread/192639-custom-simplerenderer-js-43 Hope that helps
... View more
05-22-2018
06:43 AM
|
1
|
1
|
1908
|
POST
|
You might try subclassing the PictureMarkerSymbol, you might be able to change the class or animations there. I need to make a custom renderer that would display any symbol. This was my solution. Custom SimpleRenderer JS 4.3
... View more
05-16-2018
06:06 AM
|
0
|
3
|
1908
|
POST
|
1. Navigate to https://[YourHost]:7443/arcgis/sharing/ 2. Login 3. Click on the “Org ID:” link 4. Click “Servers” 5. Click your server 6. Click “UnRegister Server” I was then able to re-federate w/o issues.
... View more
03-15-2018
06:24 AM
|
3
|
1
|
1499
|
POST
|
We had the self-signed certs expire on an Azure VM created with CloudBuilder. I've gone through all the steps with generating, exporting, adding to the Trusted CA and updating to use the new certs on both Portal and ArcGis Server. Portal is stuck in this weird 1/2 way federated state. I can't un-federate and I can't seem to fix the current federation. Steps so far: --- Arc Gis Server - Set security to GIS_SERVER+ [I did this early on in an attempt to get logged in and now I can seem to set the "Portal Properties" section correctly to switch it back to Portal Auth] - Removed all old SSL Certs - Generate new cert - Update to use new cert - Export new cert - Add cert to Trusted CA -- I can login SSL --- IIS - Removed old cert - Create new self signed cert - Bind to 443 -- I can see https -- Portal - Set ssl cert to "portal" - Remove old certs - Generate new portal cert - update to use new portal cert - export new portal cert - add new portal cert to trusted CA -- I can login SSL -- Portal | Federation | Servers | Validate ==> ArcGIS Server services URL 'https://xyz.eastus2.cloudapp.azure.com/arcgis' cannot be validated against 'https://xyz.eastus2.cloudapp.azure.com/arcgis/rest/info'. If the service URL is a proxy URL verify it is accessible to clients. Error: The server at 'https://xyz.xyyxxyy.cx.internal.cloudapp.net:6443/arcgis/admin/info' returned an error. Invalid token. Any help is much appreciated.
... View more
03-12-2018
11:16 PM
|
0
|
2
|
3158
|
POST
|
I've seen the "Failed to create layer from service". This usually occurs for me when I forget to allow access from my Print Server to the ArcGis Server. The Print Job get sent to our GP Printing service on Box A, and the ArcGis Rest services are on Box B - Internally Box A spins up a map and connects to Box B, often Box A cannot see Box B using the Public address in the map specifications. You can test this quickly by logging on the Box A using the GPService's/ArcGis NT(the NT creds, not the ArcGis Server creds) login creds and trying to hit your rest services with a Browser.
... View more
03-07-2018
12:24 PM
|
0
|
0
|
725
|
POST
|
We really need to see the error, but.... We had issues with printing due to the size of the WebMapToJson string combined with a GET call to the server. GET has a character limit and when we added "too much" stuff, it broke. Our solution was to switch the call to a POST.
... View more
03-07-2018
12:19 PM
|
0
|
0
|
725
|
POST
|
I've been enjoying TypeScript and have been using it more and more in our projects. I've had to look up how to add a TS class to my projects several times now so I thought I'd place it here. There are two key things that I keep forgetting. 1) It must be compiled in the correct format: "compilerOptions": {
"target": "es5",
"module": "amd",
"moduleResolution": "node"
},
and you must create your class correctly with the export on the last line. import EsriView = require("esri/views/MapView");
class EventCreatorModule {
public mapView:EsriView;
constructor() {
};
}
export = EventCreatorModule;
Note: The following will NOT work // THIS WILL FAIL
import EsriView = require("esri/views/MapView");
export class EventCreatorModule {
public mapView:EsriView;
constructor() {
};
}
// THIS WILL FAIL This is my boilerplate \tsconfig.json {
"compilerOptions": {
"target": "es5",
"module": "amd",
"moduleResolution": "node",
"noImplicitAny": true,
"removeComments": false,
"preserveConstEnums": true,
"sourceMap": true,
"jsx": "react",
"jsxFactory": "tsx",
"experimentalDecorators": true,
"suppressImplicitAnyIndexErrors": true
},
"include": [
"Scripts/**/*"
],
"exclude": [
]
} [Empty Class] class [MyClass] {
constructor() {
}
}
export = [MyClass];
... View more
02-23-2018
09:49 AM
|
0
|
0
|
537
|
POST
|
Some of the events are gone, but the hooks are still there. You can inherit the class and override some of the key functions. For example, I used a custom renderer to allow for any range of unique symbology. You could modify this to allow each symbol to do whatever you wanted. Add a timer to pulse, change color, size, rotation, add listeners to other events ie data changes, render a d3 svg. We used something like the code below to show a pie-graph for each points symbol. Be careful with this though, you will get one of these for each item displayed on your map. You must also clean up your objects and event handlers when your object is destroyed by the map. Hope it helps. https://community.esri.com/thread/192639-custom-simplerenderer-js-43 https://jsbin.com/doticip/4/edit?html,output var map = new Map({
basemap: "hybrid"
});
var view = new MapView({
container: "viewDiv",
map: map,
center: [-73.950, 40.702],
zoom: 11,
});
var CustomSymbolRenderer =
SimpleRenderer.createSubclass(SimpleRenderer,
{
getSymbol: function (prm1,prm2) {
var sym = this.inherited(arguments);
console.log(Math.floor(Math.random() * 255) + 1);
sym.color = new Color([
Math.floor(Math.random() * 255) + 1,
Math.floor(Math.random() * 255) + 1,
Math.floor(Math.random() * 255) + 1,
.5]);
this.set("symbol",sym.clone());
return sym;
}
});
var featureLayer = new FeatureLayer({
url: "https://services.arcgis.com/V6ZHFr6zdgNZuVG0/ArcGIS/rest/services/NYCDemographics1/FeatureServer/0"
, renderer: new CustomSymbolRenderer({
symbol: new SimpleFillSymbol({
color: "red",
outline: {
color: [128, 128, 128, 0.5],
width: "0.5px"
}
})
})
});
map.add(featureLayer);
... View more
02-12-2018
09:03 AM
|
1
|
0
|
830
|
POST
|
I learned something late last night that I thought some might find helpful. My client really liked the Attribute Table view widget I created for them, they just wanted one more thing. Filter by Extent. No problem I said at 4:00 pm, done that several times, 30 min tops. I code it up and all looks good until I notice that things on the screen are not on my list and things that are not on my screen are. 2 hours later I think to place a graphic on the screen where the bounding box is. And it was not at all where I thought it should be. The images below are two polygons, the first is the bounding box of the Views.Extent, the second is a bounding box created by using the ScreenToMap util. The first image is with roation=0, the second is with roation=120. Rotation = 0 Rotation = 120 My Solution: if (m.isFilterByExtentOn) {
let xmin = 0;
let ymin = 0;
let xmax = $('#viewDiv').width();
let ymax = $('#viewDiv').height() ;
let pt1 = mainMapView.toMap(xmin,ymin);
let pt2 = mainMapView.toMap(xmax,ymin);
let pt3 = mainMapView.toMap(xmax,ymax);
let pt4 = mainMapView.toMap(xmin,ymax);
let geom = new EsriPolygon({
hasZ: false,
hasM: false,
spatialReference: pt1.spatialReference,
rings: [[[pt1.x, pt1.y], [pt2.x, pt2.y], [pt3.x, pt3.y], [pt4.x, pt4.y], [pt1.x, pt1.y]]]
});
query.geometry = geom;
query.geometryType = "polygon";
query.spatialRelationship = 'intersects';
}
... View more
02-08-2018
12:38 PM
|
1
|
0
|
776
|
POST
|
If you have access to the ArcGis Servers a Server Object Interceptor (SOI) might work for you. We implemented a Feature Level security for a client. When the request for an edit/update/delete came in, we grabbed it, looked up the user to see if they had access to that feature, if so, we let the call go through, if not, we send back an error. It's an entirely different toolset than your using on the client side. A simpler option is to have two sets of Services, one for viewing and one for editing. Then lock the editable services down to just the groups you wish to have edit privileges. Another option is to set up a proxy - send your calls through the proxy, check security and pass or reject. Again, probably a different toolset than you might be used to. This solution also has the Client-Side only issues listed below. Your current option is not a bad one either. But with a client-side only solution is that you still will have a back door. The widget might be disabled, but the rest endpoint would still be active and open.
... View more
01-26-2018
07:32 AM
|
1
|
0
|
744
|
Title | Kudos | Posted |
---|---|---|
1 | 05-12-2014 01:47 PM | |
1 | 06-22-2017 08:13 AM | |
1 | 02-12-2018 09:03 AM | |
1 | 01-28-2016 03:55 PM | |
1 | 01-26-2018 07:32 AM |
Online Status |
Offline
|
Date Last Visited |
Thursday
|