POST
|
So with this solution I have to locally store the domain information on the mobile device and have to release an update when the domain values are updated. So its not a good solution. It seems like there's another way to get domains from REST service, but its available from Arcgis 10.5, so I have to update my feature service. Its the query domains service but I haven't tried yet: Query Domains (Feature Service)—ArcGIS REST API: Services Directory | ArcGIS for Developers
... View more
04-06-2018
08:53 PM
|
0
|
2
|
1343
|
POST
|
I've defined sub types for my feature class and some fields have different domain values for each sub type. And I've exposed it as a feature service and trying to get domain and its values for each different sub type. But when I get domain (AGSCodedValueDomain) from field (AGSField) it returns same domain for each sub type. So I've tried to get domain from sub type (AGSFeatureType) but it returns AGSInheritedDomain, which I couldn't figure out how to get coded values. Arcgis feature service version: 10.4.1 SDK version 100.2.1 Language: Swift
... View more
04-05-2018
07:57 PM
|
0
|
5
|
1922
|
POST
|
Is there any appropriate way to check if token is valid?
... View more
05-30-2017
10:35 PM
|
0
|
0
|
1271
|
POST
|
I've found out another thing that If we configure tokenServiceUrl for userCredentials and when the token expires it tries to get another token. But I don't know what url to use for tokenServiceUrl. It throws following exception when I configure url: http://xxx.xxx.xxx.xxx:6080/arcgis/tokens/ SEVERE: null
com.esri.core.io.EsriSecurityException: Invalid request <br>Usage: http://xxx.xxx.xxx.xxx:6080/arcgis/tokens?request=gettoken&username=username&password=password&<br>Usage: http://xxx.xxx.xxx.xxx:6080/arcgis/tokens/generateToken?username=username&password=password&<br>Usage: http://xxx.xxx.xxx.xxx:6080/arcgis/tokens/gettoken.html<br>
at com.esri.core.internal.io.handler.c.c(Unknown Source)
at com.esri.core.internal.io.handler.c.a(Unknown Source)
at com.esri.core.internal.io.handler.c.a(Unknown Source)
at com.esri.core.internal.io.handler.a.a(Unknown Source)
at com.esri.core.internal.io.handler.a.b(Unknown Source)
at com.esri.core.internal.tasks.ags.p.a(Unknown Source)
at com.esri.core.geodatabase.GeodatabaseFeatureServiceTable.a(Unknown Source)
at com.esri.core.geodatabase.GeodatabaseFeatureServiceTable.a(Unknown Source)
at com.esri.core.geodatabase.GeodatabaseFeatureServiceTable$8.a(Unknown Source)
at com.esri.core.geodatabase.GeodatabaseFeatureServiceTable$8.call(Unknown Source)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:745)
... View more
05-25-2017
04:52 AM
|
0
|
0
|
1271
|
POST
|
I've write small code to generate tokens and use that token instead of username and password and it seems working better. I generate tokens for 8 hours and store in database. When next time user logs in I check the current token and if expired I generate new one. public class FeatureServiceTokenService {
private static final Logger LOGGER = Logger.getLogger(ArcgisTokenService.class.getName());
private final RestTemplate restTemplate;
private final ObjectMapper objectMapper = new ObjectMapper();
public FeatureServiceTokenService() {
List<HttpMessageConverter<?>> messageConverters = new ArrayList<>();
messageConverters.add(new StringHttpMessageConverter());
messageConverters.add(new FormHttpMessageConverter());
//messageConverters.add(new MappingJackson2HttpMessageConverter());
restTemplate = new RestTemplate();
restTemplate.setMessageConverters(messageConverters);
}
public TokenData generateToken(String username, String password, int expireMinutes) {
LOGGER.log(Level.INFO, "Generating token for {0} minutes", expireMinutes);
TokenData tokenData = null;
try {
// post params
MultiValueMap<String, String> postParams = new LinkedMultiValueMap<>();
postParams.add("username", username);
postParams.add("password", password);
postParams.add("client", RequestConstants.CLIENT_TYPE_REQUEST_IP);
postParams.add("expiration", "" + expireMinutes);
postParams.add("f", RequestConstants.FORMAT_JSON);
ResponseEntity<String> response = restTemplate.postForEntity("http://xxx.xxx.xxx.xxx:6080/arcgis/tokens/", postParams, String.class);
LOGGER.log(Level.INFO, "Token response: {0}", response);
if (response.getStatusCode() == HttpStatus.OK) {
tokenData = objectMapper.readValue(response.getBody(), TokenData.class);
}
} catch (IOException | RestClientException e) {
LOGGER.log(Level.SEVERE, null, e);
}
return tokenData;
}
}
And supply the token by: userCredentials = new UserCredentials();
userCredentials.setTokenServiceUrl(astConfig.ARCGIS_SERVICE_TOKEN_SERVICE_URL);
userCredentials.setAuthenticationType(UserCredentials.AuthenticationType.TOKEN);
userCredentials.setUserToken(tokenData.getToken(), tokenData.getExpires(), "http://xxx.xxx.xxx.xxx:6080/arcgis/tokens/");
... View more
05-25-2017
04:31 AM
|
0
|
0
|
1271
|
POST
|
Maybe I should use token based authentication, generate token that has long expiry time for my needs. And if token expired, acquire new token. Acquiring ArcGIS tokens—Documentation (10.3 and 10.3.1) | ArcGIS for Server
... View more
05-25-2017
01:01 AM
|
0
|
0
|
1271
|
POST
|
I've double checked the username and password on the feature service web interface (https://x.x.x.x:6443/arcgis/rest/services/xxx/xxx/xxx/33) It works just fine.
... View more
05-25-2017
12:41 AM
|
0
|
0
|
1271
|
POST
|
I'm using Arcgis Java SDK 10.2.4 and developing desktop application. During development we're using feature services without any authentication and now we're secured them with username and password. But secured feature layer access is denied sometimes, says "Unauthorized access to a secure service" even though password is correct. We're able to login through web with the same username and password and query features works. We're creating user credentials following code: UserCredentials userCredentials = new UserCredentials();
userCredentials.setUserAccount(defaultArcgisUsername, defaultArcgisPassword);
final GeodatabaseFeatureServiceTable fsTable = new GeodatabaseFeatureServiceTable(layerData.getFullUrl(), userCredentials, layerData.getLayerIndex()); Our feature service is running with self signed certificate and we've set custom trust store which has the feature service certificate. Any things to check?
... View more
05-24-2017
04:59 AM
|
0
|
7
|
2258
|
POST
|
After doing further testing my hard-coded values not working correctly either. I'm seeing that it compares the double values differently or there's different problem or a bug. Even though I add breaks it founds incorrect renderer. I've tested with only 2 break and the date "2016-12-20 00:00:00" (1482163200000) finds color green from following break: ClassBreaksRenderer renderer = new ClassBreaksRenderer(getMarkerSymbol(geometryType, new Color(30, 109, 237)), field); // default color = blue renderer.addBreak(0, 117999234L, getMarkerSymbol(geometryType, new Color(22, 183, 22))); // green renderer.addBreak(1179992346809L, 1493568000000L, getMarkerSymbol(geometryType, new Color(244, 240, 4))); // yellow 1482163200000 should rendered in yellow but it rendered green where break min and max are 0 and 117999234. But "2016-12-20 00:00:00" (1482163200000) is greater than range 117999234 and is between 1179992346809 and 1493568000000,
... View more
05-24-2017
12:07 AM
|
0
|
0
|
952
|
POST
|
I found out the problem. When I add breaks with hard-coded values it works correctly. ClassBreaksRenderer renderer = new ClassBreaksRenderer(getMarkerSymbol(featureLayer.getGeometryType(), new Color(30, 109, 237)), "InstallationDate");
renderer.addBreak(0, 233238209948d, getMarkerSymbol(featureLayer.getGeometryType(), new Color(22, 183, 22)));
renderer.addBreak(233238209949d, 391001009948d, getMarkerSymbol(featureLayer.getGeometryType(), new Color(144, 244, 4)));
renderer.addBreak(391001009949d, 548763809948d, getMarkerSymbol(featureLayer.getGeometryType(), new Color(192, 244, 4)));
renderer.addBreak(548763809949d, 706616609948d, getMarkerSymbol(featureLayer.getGeometryType(), new Color(244, 240, 4)));
renderer.addBreak(706616609949d, 864383009948d, getMarkerSymbol(featureLayer.getGeometryType(), new Color(244, 208, 4)));
renderer.addBreak(864383009949d, 1022149409948d, getMarkerSymbol(featureLayer.getGeometryType(), new Color(244, 156, 4)));
renderer.addBreak(1022149409949d, 1179919409948d, getMarkerSymbol(featureLayer.getGeometryType(), new Color(224, 86, 13)));
renderer.addBreak(1179919409949d, 1495535009948d, getMarkerSymbol(featureLayer.getGeometryType(), new Color(224, 30, 13)));
When I generate values and add using for loop it doesn't work correctly. I double checked the values in array list. ClassBreaksRenderer renderer = new ClassBreaksRenderer(getMarkerSymbol(featureLayer.getGeometryType(), new Color(30, 109, 237)), "InstallationDate");
for (AgeRangeData ageRangeData : ageRangeList) {
System.out.println(ageRangeData.getAge() + " - " + ageRangeData.getMin() + " - " + ageRangeData.getMax() + " - " + ageToColorMap.get(ageRangeData.getAge()));
renderer.addBreak(ageRangeData.getMin(), ageRangeData.getMax(), getMarkerSymbol(featureLayer.getGeometryType(), ageToColorMap.get(ageRangeData.getAge())));
} It's so weird. I prepare ageRangeList using following method: private void generateRenderers() {
ageRangeList = new ArrayList<>();
Date _now = new Date();
for (Integer age : ageToColorMap.keySet()) {
Integer nextAge = ageToColorMap.ceilingKey(age + 1);
double endTimestamp = new Long(DateUtils.add(_now, -age, 0, 0).getTime() - 1).doubleValue();
double startTimestamp;
if (nextAge != null) {
startTimestamp = new Long(DateUtils.add(_now, -nextAge, 0, 0).getTime()).doubleValue();
} else {
startTimestamp = new Long(new Date(0).getTime()).doubleValue();
}
//System.out.println(df.format(startTimestamp) + " - " + df.format(endTimestamp));
ageRangeList.add(new AgeRangeData(age, startTimestamp, endTimestamp));
}
Collections.sort(ageRangeList, new Comparator<AgeRangeData>() {
@Override
public int compare(AgeRangeData o1, AgeRangeData o2) {
if (o1.getMin() > o2.getMin()) {
return 1;
} else if (o1.getMin() < o2.getMin()) {
return -1;
} else {
return 0;
}
}
});
} AgeRangeData is just a simple POJO class. public class AgeRangeData {
private final int age;
private final double min;
private final double max;
public AgeRangeData(int age, double min, double max) {
this.age = age;
this.min = min;
this.max = max;
}
public int getAge() {
return age;
}
public double getMin() {
return min;
}
public double getMax() {
return max;
}
}
... View more
05-23-2017
03:59 AM
|
0
|
0
|
952
|
POST
|
I'm using ClassBreaksRenderer on Date field. I prepare ageToColorMap where I store ages and its display color and iterate it to create breaks for ClassBreakRenderer. The problem is it chose the wrong color, 2015-11-25 00:00:00 (1448380800000) should be green but its displayed as red as on following screenshot: Here's the age to color map: ageToColorMap.put(0, new Color(22, 183, 22)); // 0-10 green
ageToColorMap.put(10, new Color(144, 244, 4)); // 10-15
ageToColorMap.put(15, new Color(192, 244, 4)); // 15-20
ageToColorMap.put(20, new Color(244, 240, 4)); // 20-25
ageToColorMap.put(25, new Color(244, 208, 4)); // 25-30
ageToColorMap.put(30, new Color(244, 156, 4)); // 30-35, yellow
ageToColorMap.put(35, new Color(224, 86, 13)); // 35-40
ageToColorMap.put(40, new Color(224, 30, 13)); // 40+ red So the actual Breaks are: Aging Timestamps Color 0-10 1179806346212 - 1495421946211 java.awt.Color[r=22,g=183,b=22] 10-15 1022036346212 - 1179806346211 java.awt.Color[r=144,g=244,b=4] 15-20 864269946212 - 1022036346211 java.awt.Color[r=192,g=244,b=4] 20-25 706503546212 - 864269946211 java.awt.Color[r=244,g=240,b=4] 25-30 548650746212 - 706503546211 java.awt.Color[r=244,g=208,b=4] 30-35 390887946212 - 548650746211 java.awt.Color[r=244,g=156,b=4] 35-40 233125146212 - 390887946211 java.awt.Color[r=224,g=86,b=13] 40+ 0 - 233125146211 java.awt.Color[r=224,g=30,b=13] Here's my code to create ClassBreaksRenderer: private ClassBreaksRenderer getClassBreaksRenderer(String selectedField, Geometry.Type geometryType) {
ClassBreaksRenderer classBreaksRenderer = new ClassBreaksRenderer(getMarkerSymbol(geometryType, new Color(30, 109, 237)), selectedField);
Date _now = new Date();
for (Integer age : ageToColorMap.keySet()) {
Integer nextAge = ageToColorMap.ceilingKey(age + 1);
double endTimestamp = DateUtils.add(_now, -age, 0, 0).getTime() - 1;
double startTimestamp;
if (nextAge != null) {
startTimestamp = DateUtils.add(_now, -nextAge, 0, 0).getTime();
} else {
startTimestamp = new Date(0).getTime();
}
classBreaksRenderer.addBreak(startTimestamp, endTimestamp, getMarkerSymbol(geometryType, ageToColorMap.get(age)));
}
return classBreaksRenderer;
} I call this after feature service table is initialized: final GeodatabaseFeatureServiceTable fsTable = new GeodatabaseFeatureServiceTable(layerData.getFullUrl(), arcgisSdkConfigurator.getUserCredentials(), layerData.getLayerIndex());
fsTable.initialize(new CallbackListener<GeodatabaseFeatureServiceTable.Status>() {
@Override
public void onCallback(GeodatabaseFeatureServiceTable.Status status) {
if (status == GeodatabaseFeatureServiceTable.Status.INITIALIZED) {
// prepare out fields
List<String> attributeList = AstFeatureNameUtil.extractAttributeList(layerData.getIdentifierPattern());
attributeList.add("InstallationDate");
String[] attributes = new String[attributeList.size()];
attributeList.toArray(attributes);
fsTable.setOutFields(attributes);
final FeatureLayer featureLayer = new FeatureLayer(fsTable);
featureLayer.initializeAsync(); // need?
featureLayer.addLayerInitializeCompleteListener(new LayerInitializeCompleteListener() {
@Override
public void layerInitializeComplete(LayerInitializeCompleteEvent lice) {
Renderer renderer = getClassBreaksRenderer("InstallationDate", featureLayer.getGeometryType());
featureLayer.setRenderer(renderer);
jMap.getLayers().add(featureLayer);
jMap.addMapOverlay(new DeviceAgingFeatureMapOverlay(jMap, featureLayer));
jLayerTree.refresh();
}
});
}
}
@Override
public void onError(Throwable e) {
LOGGER.log(Level.SEVERE, null, e);
makeBusy(false);
}
}); getMarkerSymbol is simple method to get symbol for each geometry type with given color: private Symbol getMarkerSymbol(Geometry.Type geometryType, Color color) {
switch (geometryType) {
case POLYLINE:
case LINE:
return new SimpleLineSymbol(color, 2, SimpleLineSymbol.Style.SOLID);
case POLYGON:
case ENVELOPE:
return new SimpleFillSymbol(color);
case MULTIPOINT:
case POINT:
default:
return new SimpleMarkerSymbol(color, 10, SimpleMarkerSymbol.Style.CIRCLE);
}
}
... View more
05-21-2017
08:11 PM
|
0
|
0
|
952
|
POST
|
I'm trying to implement custom renderer to display device aging in different colors. For example: 0-10 years > green 10-15 years > yellow 15+ years > red My feature has installed date attribute which we use to calculate its age. I've tried using ClassBreaksRenderer but its returning wrong color for age when we show the feature on map, when we test getSymbol(feature) method it returns correct color. I don't know if its a bug or I'm doing something wrong. So I've implemented my own renderer by extending BaseRenderer but its getSymbol(feature) method is not called. Only getType() is called. Here's the source code of my custom renderer: import com.esri.core.geometry.Geometry;
import com.esri.core.map.Feature;
import com.esri.core.renderer.BaseRenderer;
import com.esri.core.symbol.SimpleFillSymbol;
import com.esri.core.symbol.SimpleLineSymbol;
import com.esri.core.symbol.SimpleMarkerSymbol;
import com.esri.core.symbol.Symbol;
import java.awt.Color;
import java.util.Date;
import java.util.TreeMap;
/**
*
* @author MethoD
*/
public class DeviceAgingRenderer extends BaseRenderer {
private final String attribute;
private final Geometry.Type geometryType;
private final TreeMap<Integer, Color> ageToColorMap;
public DeviceAgingRenderer(String attribute, Geometry.Type geometryType) {
this.attribute = attribute;
this.geometryType = geometryType;
//this.ageToColorMap = ageToColorMap;
ageToColorMap = new TreeMap<>();
ageToColorMap.put(-1, new Color(30, 109, 237)); // no data > blue
ageToColorMap.put(0, new Color(22, 183, 22)); // 0-10 > green
ageToColorMap.put(10, new Color(244, 156, 4)); // 10-15 > yellow
ageToColorMap.put(15, new Color(224, 30, 13)); // 15+ red
}
@Override
protected String getType() {
return "deviceAging";
}
@Override
public Symbol getSymbol(Feature feature) {
System.out.println("feature: " + feature); // not prninted and not called
int age = -1;
if (feature.getAttributeValue(attribute) != null) {
Long timestamp = (Long) feature.getAttributeValue(attribute);
age = getDiffYears(new Date(), new Date(timestamp));
}
Color color = ageToColorMap.floorEntry(age).getValue();
switch (geometryType) {
case POLYLINE:
case LINE:
return new SimpleLineSymbol(color, 2, SimpleLineSymbol.Style.SOLID);
case POLYGON:
case ENVELOPE:
return new SimpleFillSymbol(color);
case MULTIPOINT:
case POINT:
default:
return new SimpleMarkerSymbol(color, 5, SimpleMarkerSymbol.Style.CIRCLE);
}
}
public static int getDiffYears(Date end, Date start) {
Calendar c_start = getCalendar(start);
Calendar c_end = getCalendar(end);
int diff = c_end.get(Calendar.YEAR) - c_start.get(Calendar.YEAR);
if (c_start.get(Calendar.MONTH) > c_end.get(Calendar.MONTH)
|| (c_start.get(Calendar.MONTH) == c_end.get(Calendar.MONTH) && c_start.get(Calendar.DATE) > c_end.get(Calendar.DATE))) {
diff--;
}
return diff;
}
}
I'm adding my renderer as following. final GeodatabaseFeatureServiceTable fsTable = new GeodatabaseFeatureServiceTable(layerData.getFullUrl(), arcgisSdkConfigurator.getUserCredentials(), layerData.getLayerIndex());
fsTable.initialize(new CallbackListener<GeodatabaseFeatureServiceTable.Status>() {
@Override
public void onCallback(GeodatabaseFeatureServiceTable.Status status) {
if (status == GeodatabaseFeatureServiceTable.Status.INITIALIZED) {
// prepare out fields
List<String> attributeList = AstFeatureNameUtil.extractAttributeList(layerData.getIdentifierPattern());
attributeList.add("InstallationDate");
String[] attributes = new String[attributeList.size()];
attributeList.toArray(attributes);
fsTable.setOutFields(attributes);
final FeatureLayer featureLayer = new FeatureLayer(fsTable);
featureLayer.initializeAsync(); // need?
featureLayer.addLayerInitializeCompleteListener(new LayerInitializeCompleteListener() {
@Override
public void layerInitializeComplete(LayerInitializeCompleteEvent lice) {
//LOGGER.log(Level.INFO, "Found features: {0} - {1}", new Object[]{layerData.getLayerId(), fsTable.getNumberOfFeatures()});
//LOGGER.log(Level.INFO, "Layer initialized: {0}", lice.getID());
DeviceAgingRenderer renderer = new DeviceAgingRenderer("InstallationDate", featureLayer.getGeometryType());
//LOGGER.log(Level.INFO, "Renderer: {0}", renderer);
featureLayer.setRenderer(renderer);
jMap.getLayers().add(featureLayer);
jMap.addMapOverlay(new DeviceAgingFeatureMapOverlay(jMap, featureLayer));
jLayerTree.refresh();
}
});
}
}
@Override
public void onError(Throwable e) {
LOGGER.log(Level.SEVERE, null, e);
makeBusy(false);
}
});
... View more
05-18-2017
01:57 AM
|
0
|
4
|
1396
|
POST
|
How should I contact tech support? Go Esri Support Apps here and create a case? Or send email with the log and how to reproduce the issue? It also crashes immediately when I change max heap memory by J-Xmx argument. It was fine on 768MB, but when I increase to 1024M it crashes, after that even 768MB not working.
... View more
04-11-2017
09:46 PM
|
0
|
0
|
545
|
POST
|
I'm using Windows with JDK 1.8. I tried running with 32bit and 64bit JRE's and the result is nearly same. # # A fatal error has been detected by the Java Runtime Environment: # # EXCEPTION_ACCESS_VIOLATION (0xc0000005) at pc=0x4e44350b, pid=13136, tid=0x00000318 # # JRE version: Java(TM) SE Runtime Environment (8.0_112-b15) (build 1.8.0_112-b15) # Java VM: Java HotSpot(TM) Server VM (25.112-b15 mixed mode windows-x86 ) # Problematic frame: # C [runtimecore_java.dll+0xa350b] # # Failed to write core dump. Minidumps are not enabled by default on client versions of Windows # # If you would like to submit a bug report, please visit: # http://bugreport.java.com/bugreport/crash.jsp # The crash happened outside the Java Virtual Machine in native code. # See problematic frame for where to report the bug. # --------------- T H R E A D --------------- Current thread (0x470ee000): JavaThread "AWT-EventQueue-0" [_thread_in_native, id=792, stack(0x4a130000,0x4a530000)] siginfo: ExceptionCode=0xc0000005, reading address 0x00000008 Registers: EAX=0x00000004, EBX=0x4472573c, ECX=0x4a52d478, EDX=0x00000000 ESP=0x4a52d434, EBP=0x4a52d44c, ESI=0x4a52d478, EDI=0x53d3623c EIP=0x4e44350b, EFLAGS=0x00010202 Top of Stack: (sp=0x4a52d434) 0x4a52d434: 53d3623c 53d362d8 4472573c 00000000 0x4a52d444: 80000000 00000000 4a52d460 4e443415 0x4a52d454: 00000004 00000004 00000000 4a52d490 0x4a52d464: 4e9d03e3 4a52d478 3ae67eec 53d3623c 0x4a52d474: 53d362d8 00000000 00000000 00000000 0x4a52d484: 4a52d624 4ee39b48 ffffffff 4a52d4ac 0x4a52d494: 4e9cdb5b 4472573c 445db68c 4472573c 0x4a52d4a4: 4472573c 01d3623c 4a52d638 4e5a33a2 Instructions: (pc=0x4e44350b) 0x4e4434eb: cc cc cc cc cc 55 8b ec 8b 45 08 83 ec 0c 53 56 0x4e4434fb: 8b f1 57 c7 06 00 00 00 00 c7 46 04 00 00 00 00 0x4e44350b: 8b 78 04 8b 18 85 ff 74 1f 8b cf e8 35 88 f8 ff 0x4e44351b: 84 c0 74 14 57 53 8b ce e8 68 33 f7 ff 5f 8b c6 Register to memory mapping: EAX=0x00000004 is an unknown value EBX=0x4472573c is an unknown value ECX=0x4a52d478 is pointing into the stack for thread: 0x470ee000 EDX=0x00000000 is an unknown value ESP=0x4a52d434 is pointing into the stack for thread: 0x470ee000 EBP=0x4a52d44c is pointing into the stack for thread: 0x470ee000 ESI=0x4a52d478 is pointing into the stack for thread: 0x470ee000 EDI=0x53d3623c is an unknown value Stack: [0x4a130000,0x4a530000], sp=0x4a52d434, free space=4085k Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code) C [runtimecore_java.dll+0xa350b] C [runtimecore_java.dll+0xa3415] C [runtimecore_java.dll+0x6303e3] C [runtimecore_java.dll+0x62db5b] C [runtimecore_java.dll+0x2033a2] C [runtimecore_java.dll+0x1e8117] C [runtimecore_java.dll+0x92e74] C [runtimecore_java.dll+0x935e2] j com.esri.map.MapCore.nativeDrawMapDirectToBuffer(JII[I)V+0 j com.esri.map.MapCore.a(II[I)V+8 j com.esri.map.JMap.paintComponent(Ljava/awt/Graphics;)V+109 J 7307 C1 javax.swing.JComponent.paint(Ljava/awt/Graphics;)V (409 bytes) @ 0x040ec120 [0x040eae20+0x1300] j com.esri.map.JMap.paint(Ljava/awt/Graphics;)V+25 J 7309 C1 javax.swing.JComponent.paintChildren(Ljava/awt/Graphics;)V (669 bytes) @ 0x040e6894 [0x040e4140+0x2754] J 7307 C1 javax.swing.JComponent.paint(Ljava/awt/Graphics;)V (409 bytes) @ 0x040ec4dc [0x040eae20+0x16bc] J 7309 C1 javax.swing.JComponent.paintChildren(Ljava/awt/Graphics;)V (669 bytes) @ 0x040e6894 [0x040e4140+0x2754] J 7307 C1 javax.swing.JComponent.paint(Ljava/awt/Graphics;)V (409 bytes) @ 0x040ec4dc [0x040eae20+0x16bc] J 7309 C1 javax.swing.JComponent.paintChildren(Ljava/awt/Graphics;)V (669 bytes) @ 0x040e6894 [0x040e4140+0x2754] J 7307 C1 javax.swing.JComponent.paint(Ljava/awt/Graphics;)V (409 bytes) @ 0x040ec4dc [0x040eae20+0x16bc] j org.netbeans.swing.tabcontrol.TabbedContainer.paint(Ljava/awt/Graphics;)V+53 J 7309 C1 javax.swing.JComponent.paintChildren(Ljava/awt/Graphics;)V (669 bytes) @ 0x040e6894 [0x040e4140+0x2754] J 7307 C1 javax.swing.JComponent.paint(Ljava/awt/Graphics;)V (409 bytes) @ 0x040ec4dc [0x040eae20+0x16bc] J 7309 C1 javax.swing.JComponent.paintChildren(Ljava/awt/Graphics;)V (669 bytes) @ 0x040e6894 [0x040e4140+0x2754] J 7307 C1 javax.swing.JComponent.paint(Ljava/awt/Graphics;)V (409 bytes) @ 0x040ec4dc [0x040eae20+0x16bc] J 7309 C1 javax.swing.JComponent.paintChildren(Ljava/awt/Graphics;)V (669 bytes) @ 0x040e6894 [0x040e4140+0x2754] J 7307 C1 javax.swing.JComponent.paint(Ljava/awt/Graphics;)V (409 bytes) @ 0x040ec4dc [0x040eae20+0x16bc] J 7309 C1 javax.swing.JComponent.paintChildren(Ljava/awt/Graphics;)V (669 bytes) @ 0x040e6894 [0x040e4140+0x2754] J 7307 C1 javax.swing.JComponent.paint(Ljava/awt/Graphics;)V (409 bytes) @ 0x040ec4dc [0x040eae20+0x16bc] J 7309 C1 javax.swing.JComponent.paintChildren(Ljava/awt/Graphics;)V (669 bytes) @ 0x040e6894 [0x040e4140+0x2754] J 7307 C1 javax.swing.JComponent.paint(Ljava/awt/Graphics;)V (409 bytes) @ 0x040ec4dc [0x040eae20+0x16bc] J 7309 C1 javax.swing.JComponent.paintChildren(Ljava/awt/Graphics;)V (669 bytes) @ 0x040e6894 [0x040e4140+0x2754] J 7307 C1 javax.swing.JComponent.paint(Ljava/awt/Graphics;)V (409 bytes) @ 0x040ec4dc [0x040eae20+0x16bc] j javax.swing.JLayeredPane.paint(Ljava/awt/Graphics;)V+73 J 7309 C1 javax.swing.JComponent.paintChildren(Ljava/awt/Graphics;)V (669 bytes) @ 0x040e6894 [0x040e4140+0x2754] J 7307 C1 javax.swing.JComponent.paint(Ljava/awt/Graphics;)V (409 bytes) @ 0x040ec4dc [0x040eae20+0x16bc] j javax.swing.JComponent.paintToOffscreen(Ljava/awt/Graphics;IIIIII)V+41 j javax.swing.RepaintManager$PaintManager.paintDoubleBuffered(Ljavax/swing/JComponent;Ljava/awt/Image;Ljava/awt/Graphics;IIII)V+163 j javax.swing.RepaintManager$PaintManager.paint(Ljavax/swing/JComponent;Ljavax/swing/JComponent;Ljava/awt/Graphics;IIII)Z+116 j javax.swing.RepaintManager.paint(Ljavax/swing/JComponent;Ljavax/swing/JComponent;Ljava/awt/Graphics;IIII)V+51 j javax.swing.JComponent._paintImmediately(IIII)V+683 j javax.swing.JComponent.paintImmediately(IIII)V+138 j javax.swing.RepaintManager$4.run()Ljava/lang/Void;+81 j javax.swing.RepaintManager$4.run()Ljava/lang/Object;+1 v ~StubRoutines::call_stub V [jvm.dll+0x16f685] V [jvm.dll+0x242d8e] V [jvm.dll+0x16f71e] V [jvm.dll+0x117ecf] C [java.dll+0x102f] J 4919 C1 java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Ljava/security/PrivilegedAction;Ljava/security/AccessControlContext;Ljava/security/AccessControlContext;)Ljava/lang/Object; (22 bytes) @ 0x03ebf7c8 [0x03ebf440+0x388] j javax.swing.RepaintManager.paintDirtyRegions(Ljava/util/Map;)V+154 j javax.swing.RepaintManager.paintDirtyRegions()V+46 j javax.swing.RepaintManager.prePaintDirtyRegions()V+73 j javax.swing.RepaintManager.access$1200(Ljavax/swing/RepaintManager;)V+1 j javax.swing.RepaintManager$ProcessingRunnable.run()V+37 J 5854 C1 java.awt.event.InvocationEvent.dispatch()V (69 bytes) @ 0x03a4a710 [0x03a4a560+0x1b0] J 5947 C1 java.awt.EventQueue.dispatchEventImpl(Ljava/awt/AWTEvent;Ljava/lang/Object;)V (149 bytes) @ 0x03f3163c [0x03f30120+0x151c] J 5824 C1 java.awt.EventQueue$3.run()Ljava/lang/Void; (60 bytes) @ 0x03312638 [0x033124a0+0x198] J 5823 C1 java.awt.EventQueue$3.run()Ljava/lang/Object; (5 bytes) @ 0x0386c610 [0x0386c5a0+0x70] v ~StubRoutines::call_stub V [jvm.dll+0x16f685] V [jvm.dll+0x242d8e] V [jvm.dll+0x16f71e] V [jvm.dll+0x117ecf] C [java.dll+0x102f] J 5820 C1 java.awt.EventQueue.dispatchEvent(Ljava/awt/AWTEvent;)V (80 bytes) @ 0x03850858 [0x038500e0+0x778] J 5876 C1 org.netbeans.core.TimableEventQueue.dispatchEvent(Ljava/awt/AWTEvent;)V (43 bytes) @ 0x035abff0 [0x035abf20+0xd0] J 5826 C1 java.awt.EventDispatchThread.pumpOneEventForFilters(I)V (295 bytes) @ 0x03878b0c [0x03877360+0x17ac] j java.awt.EventDispatchThread.pumpEventsForFilter(ILjava/awt/Conditional;Ljava/awt/EventFilter;)V+35 j java.awt.EventDispatchThread.pumpEventsForHierarchy(ILjava/awt/Conditional;Ljava/awt/Component;)V+11 j java.awt.EventDispatchThread.pumpEvents(ILjava/awt/Conditional;)V+4 j java.awt.EventDispatchThread.pumpEvents(Ljava/awt/Conditional;)V+3 j java.awt.EventDispatchThread.run()V+9 v ~StubRoutines::call_stub V [jvm.dll+0x16f685] V [jvm.dll+0x242d8e] V [jvm.dll+0x16f71e] V [jvm.dll+0x16f8a6] V [jvm.dll+0x16f917] V [jvm.dll+0x10bf6f] V [jvm.dll+0x193eb0] V [jvm.dll+0x19473a] V [jvm.dll+0x1d9396] C [MSVCR100.dll+0x5c556] C [MSVCR100.dll+0x5c600] C [KERNEL32.DLL+0x162c4] C [ntdll.dll+0x60fd9] C [ntdll.dll+0x60fa4] C 0x00000000
... View more
03-27-2017
03:09 AM
|
0
|
0
|
545
|
POST
|
Try increasing JVM heap size like following: -J-Xss4m -J-Xms128m -J-Xmx768m
... View more
12-18-2016
06:22 PM
|
0
|
0
|
1051
|
Title | Kudos | Posted |
---|---|---|
2 | 10-20-2016 07:52 PM |
Online Status |
Offline
|
Date Last Visited |
11-11-2020
02:25 AM
|