- How to deploy new services?
A: See Quickly Publishing GIS Services , Introducing Services , Configuring Services
- When starting the iServer service, why don't recommend the using warning for appearing that the actual used UGO version is low?
A: The iServer service requires configuring UGO, namely SuperMap iOObjects Java, and the actual version of SuperMap iOObjects Java used by iServer cannot be lower than the version expected by iServer. By default, iServer uses its built-in SuperMap iObjects Java, located in the %SuperMap iServer_HOME%\support\Objectsjava\bin directory. You can view the SuperMap iObjects Java version information currently used by iServer by using "iserver.bat -v" in the %SuperMap iServer_HOME%\bin directory (Linux/Unix platforms use "./iserver.sh -v").
- What do you need to notice when update and upgrade SuperMap iObjects Java in iServer?
A: When updating the iObjects product package located in the %SuperMap iServer_HOME%\support\Objectsjava\bin directory, please also update the component JAR package in the %SuperMap iServer_HOME%\webapps\iserver\WEB-INF\lib directory, which starts with "com.supermap.". Please ensure that the component package versions for these two locations are consistent.
- When starting SuperMap iServer, why does the error "java.lang.UnsatisfiedLinkError: D:SuperMap\SuperMap Objects Java 6R\Bin\Wrapj600.dll: specified program not found" occur?
A: The possible reasons and solutions:
(1) JRE/JDK version is too low or incompatible. Please download and install JRE (version 1.8 and above) and set the environment variable, that is, set JAVA_SOME to the JDK directory (if JRE is installed, set JRE.HOME to the JRE directory).
- When starting the iServer service, why is there a port occupied error, leading to the failure of starting iServer service?
A: At present, SuperMap iServer is deployed in Tomcat, and the default port is 8090, 8015. If the port is occupied, SuperMap iServer will not be able to be started:
(1) If it is the case, exit the corresponding program and restart SuperMap iServer. Possible case: the update program of 360 anti-virus software.
(2) Modify the port number of Tomcat in SuperMap iServer. Then restart SuperMap iServer. The detailed method is: Modify the ports in %SuperMap iServer_HOME%/conf/server.xml, such as <Server port="8016" ……>、<Connector port="8091" …… redirectPort="8454" ……>.
- Why is the previous license inavailable when the version is updated to SuperMap iServer Java 6R(2012) SP2?
A: SuperMap iServer Java 6R(2102) SP2 use a new license manager. So you should the latest version of Manager and reconfigure it. See License Configuration Introduction.
- Do I need to purchase SuperMap iObjects Java 7C license when using SuperMap iServer 7C for extension development?
A: It is no need to purchase the license for SuperMap Objects Java 6R. But you need to know that the program can only be deployed in SuperMap iServer 7C.
- Why error "java.lang.OutOfMemoryError: unable to create new native thread" occurs when running iServer?
A: In SuperMap iServer, when creating a thread in the thread pool, a true physical thread is created in the operating system. On some machines with small memory, when the amount of published data is large and the amount of access is large, the memory space required for the operating system to create a physical thread will compete with the Java virtual machine heap due to handling high concurrency requests, resulting in thread creation failure (the maximum Java virtual machine memory allocated by iServer 32-bit installation package by default is 512M, and the maximum number of threads is 300). This can be solved through the following methods:
(1) Reduce the memory allocated to the Java virtual machine; modify the Java virtual machine parameters, for example, in the iServer package of the windows version, modify the JAVA_OPTS in %SuperMap iServer_HOME%/bin/catalina.bat, setting -Xmx512m is a smaller value;
(2) Reduce the number of active threads in the Tomcat connection pool; modify the %SuperMap iServer_HOME%/conf/server.xml. The <Executor/> node has a lower value for maxThreads.
- What are the reasons for the collapse of SuperMap iServer?
A: The possible reasons:
(1) The reason is that the file cache exceeds the memory size allowed for a process on AIX. The number of the data segments that a process is allowed to use limits the process memory size. The default number of data segments is one. Change the LDR_CNTRL environment variable to 8 to change the process memory size to 2GB (8*256MB=2GB):
export LDR_CNTRL=MAXDATA=0x80000000
(2) If you crash while using the map service, please check if the Kingsoft Antivirus software is installed and enabled on your device. Enabling Kingsoft Antivirus may cause the iServer service to crash.
(3) It is known that Tomcat version 7.0.29 can cause memory leaks, so switching to another Tomcat version, such as Tomcat 8.5. x, is sufficient.
- Why service can restart when SuperMap iServer closes in phantom shutdown?
A: When iServer service are exception, restart the server can make sure the iServer work properly. Automatic restart function is effective in the following situations:
- iServer Windows/Linux/AIX package start iServer in command line
- iServer war starts iServer in Tomcat container in the way of command line
Automatic restart function is not effective in the following situations:
- iServer starts on Window
- iServer war starts in non Tomcat
- The JDK/JRE path (specified by JAVA_HOME/JRE_HOME) contains parentheses
Note : SuperMap iServer can be shut down normally by executing shutdown.bat/sshutdown.sh (located in the 【SuperMap iServer installation directory】\bin) to end the service. Please refer to Starting/Stopping iServer for more information.
The <restartWhenCrash> parameter of <properties> node in System Configuration File(iserver-system.xml) is used to control whether to enable this function.
- When starting SuperMap iServer in the Windows service form in Tomcat or other Java Web containers started, how to place the log file?
A: When SuperMap iServer is started as a Windows service, for example, when it is deployed to Tomcat, in 【SuperMap IServer installation directory】\webapps\iserver\WEB-INF\iserver-log4j.properties file, the storage path of the log file is specified: log4j.appender.F.File=../logs/iserver.log, so the logs folder is placed in the directory above the service startup file (cmd.exe), that is, the log file is stored in C:\Windows\logs\.
In addition, the user can modify the above log4j.properties file, and change the specified relative path for storing log files into an absolute path, for example: log4j.appender.F.File=D:/Tomcat /logs/iserver.log.
- When starting SuperMap iEdge on windows, how to solve if "The APR based Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path" appears in console?
A: This message does not affect the iEdge service. You can copy the tcnative-1.dll dynamic library file from the 【SuperMap iEdge installation directory】\bin\x64 (or x86) directory to the 【SuperMap iEdge installation directory】\bin directory. It should be noted that the tcnative-1.dll dynamic library file in the x64 directory corresponds to the Windows x64 system, The tcnative-1.dll dynamic library file in the x86 directory corresponds to the Windows x86 system. Users need to copy the tcnative-1.dll dynamic library file in the corresponding directory to the bin directory according to their own operating system type.
- When stopping iserver, why the *.mdmp file created in bin takes up a lot of space?
A. When stopping iServer, use the shutdown.bat/sh instead of the Ctrl + C command.
- How to appoint the IP used by the iServer service if the OS where the iServer located configurates multiple IPs?
A: You can specify the IP used by iServer by modifying the - Disher_ip parameter in the Java virtual machine in Catalina. bat. Namely: Modify JAVA-POTS in %SuperMap iServer_HOME%/bin/catalina.bat, and set -Diserver_ip to an IP address that exists in the expected network card, such as:
set JAVA_OPTS=%JAVA_OPTS% -Xms256m -Xmx1536m -XX:MaxPermSize=192m -Xss512k -Diserver_ip=192.168.12.13
- Why does the installation progress bar show incomplete after running the install.sh to install iServer in AIX system?
A: The installation progress bar is incomplete because your AIX system does not have a graphical interface installed. This display effect does not affect the service startup of iServer, but for better use effect, it is recommended that you install the graphical interface before starting to use iServer.
- Why do these exceptions occur "java.lang.NoClassDefFoundError:javax/servlet/AsyncListener", "java.lang.ClassNotFoundException:javax/servlet/AsyncListener" when browsing services after deploying a SuperMap iServer 8C war package on Tomcat6?
A: The reason is that iServer uses the asynchronous request function of Servlet 3.0, while Tomcat 6 uses Servlet. 2.0, does not include this feature. The Solution is to upgrade the Servlet API in Tomcat from 2.0 to 3.0.
- After deploying iServer in the SUSE environment, the following error is reported: "mmap failed for CEN and END part of zip file ", How should it be resolved?
A: You can do this in three ways:
(1) Increase the physical memory of the machine or virtual machine where SUSE is located. The physical memory shall not be less than 6G.
(2) Reduce the maximum heap memory allocated to the JVM from 1.5 G to 1 G. To do this, open the 【SuperMap iServer installation directory】\bin\catalina.sh, modify JAVA_OPTS="$JAVA_OPTS -Xms256m -Xmx1536m -Xss512k" to JAVA_OPTS="$JAVA_OPTS -Xms256m -Xmx1024m -Xss256k".
(3) Downgrade the iServer built-in JRE to version 1.7.
- When starting the iServer multi-process, I get this warning message: "file name or extension name is too long", meanwhile the iServer can not run.
A: The reason is that the target path is too long when extracting the iServer. The solution is to reduce the level of the iServer installation directory or shorten the extracted folder name. For example, put the compressed product package in the root directory of the disk and then decompress it.
- Why is the UGO of the environment variable used when starting iServer instead of the UGO inside the iServer package?
A: When the path where the iServer product package is located contains the '&' symbol, the UGO of the environment variable is used when starting the iServer instead of the in the package.
- Starting iServer on Windows Server system crashes with error appcrash?
A: Put the java.exe and javaw.exe in the %iServerROOT%\support\jre\bin directory. Change file compatibility to Windows 8 and restart.
- SuperMap iServer startup error [SQLITE_BUSY] The database file is locked (database is locked)?
A: When SuperMap iServer is restarted before it is completely shut down, the SQLite library may be locked due to the SuperMap iServer daemon still residing. terms of settlement:
Linux environment:
Use the ps -ef | grep iserver command to view the SuperMap iServer process, then kill the process and restart SuperMap iServer.
Windows environment:
In the task manager, first end the Java process of SuperMap iServer, and then restart SuperMap iServer.
- When starting an iServer image in a Docker environment, the container log prompts "Unable to XX, insufficient permissions"?
A: Because the internal users of the container do not have root privileges, you need to add the following parameters to the Docker startup command to obtain root privileges:
--privileged=true
Such as:
docker run --name iserver1 -d -p 8090:8090 --privileged=true -v `pwd`/my_opts:/opt/iserverOPTs supermap/iserver
- How to configure and enable Tomcat soft connection (symbolic link)?
A: When you cannot access the soft connection resources through iServer, open the 【iServer installation path】/conf/context.xml file, add the following under the <Context> element:
<Resources allowLinking="true"/>
- How to solve the problem of configuration license not taking effect when changing different license types?
A: When changing to different license types, it is necessary to delete the content in <licenseMode>...</licenseMode> node and <license>...</license> node in the iserver-system.xml file (located in the 【SuperMap iServer installation directory】\webapps\iserver\WEB-INF directory), then restart iServer and configure the license again to take effect.
- How to switch from trial license to official network lock?
A: First, you need to make sure that there is a free formal license in the current license center and the current configuration machine can see the formal lock identification in the license center. Then locate the webapps\iserver\WEB-INF\iserver-system.xml and delete the licenseMode and license node, and restart the iServer.
- How to switch from trial license to web license?
A: Please confirm that there is no other license (formal license, trial license) on the machine where the iServer is located. If there is any other license, the other license will be used first. Then locate the webapps\iserver\WEB-INF\iserver-system.xml and delete the licenseMode and license node, and restart the iServer. Restart and then configure the license, select Web license, and fill in ws://ip:9183 (not http)
- How to delete a trial license that is installed locally for the first time?
A: Remove C:\Program Files (x86)\Common Files\SafeNet Sentinel\Sentinel LDK\installed\99235 and then restart or stop the licensing service.
- License by core cannot be configured?
A: iServer requires the number of CPU cores in the server to be no more than the limit set by iServer's core license. If the server has 36 cores, it cannot be used if the machine has 48 cores. However, if the machine has 36 cores, it can be used.
- How to configuartion service node extension module with unlimited core license?
A: After ensuring that the current environment is not licensed, start the iServer and enter the address of the master node in the initial license configuration page, for example, http://192.168.1.23:8090/iserver.
- How does the Web license configuartion service node extension module?
A: If there are no other licenses (official license, trial license) on the current iServer machine, simply enter the web license service address in the initialized license configuration page after startup to complete the configuration. If the current environment has official and trial licenses, add the following configuration in webapps\iserver\WEB-INF\iserver-system.xml and restart iServer.
<licenseMode>WebLicense</licenseMode>
<webLicenseSetting>
<url>ws://127.0.0.1:9183</url>
<enabledmodules>
<string>SERVICE_NODE_ADDITION</string>
</enabledmodules>
<masterServerAddress>http://192.168.1.23:8090/iserver/</masterServerAddress>
</webLicenseSetting>
- How to configure licenses across network segments for traditional hardware locks?
A: Access the http://IP:1947 through the browser of the current machine, enter the mortise lock license server IP and save it.
- How to remove the hardware lock license occupied by a machine?
A: There are two solutions. 1. Use the browser on the mortise lock server to access the http://IP:1947, where you can see the current hardware lock link status, and disconnect the machine expected to be unoccupied; 2. On the mortise lock server, disconnect the machine that you want to unseize through the Windows Desktop License Center.
- Why does this error occur when iServer service starts on Linux: "Unable to set localhost. This prevents creation of a GUID"?
A: When this occurs, configure the IP address corresponding to the host name in the /etc/hosts file, that is, map the host name to a specific IP address. If the last line below is added, the machine name is Linux-3z6l is mapped to 192.168.112.213.
# Syntax: # IP-Address Full-Qualified-Hostname Short-Hostname 127.0.0.1 localhost 192.168.112.213 linux-3z6l linux-3z6l
- When installing SuperMap License Center on Linux, the error "hasp_update failed with status 65" shows up. Why?
A: This error message can be ignored. When you install the license driver repeatedly, this error message will appear, indicating that the current computer has imported a 90-day trial license, and the normal use of the license will not be affected during the trial period. If you have passed the 90-day trial period, please contact sales to request a continuation of the trial or to make a formal purchase (short-term licenses are available through the online store).
- Why does restarting iServer fail when multiple processes are enabled in Linux systems?
A: It may be because the IP corresponding to the hostname of the system is not the same as the actual IP of the system, causing the multi process service to fail to start. When using a single machine with multiple processes, it is necessary to confirm that the IP corresponding to the hostname is consistent with the IP queried by ifconfig. If they are not consistent, modify the IP corresponding to the hostname in /etc/hosts to match the result of the ifconfig query, and then start iServer.
- In Linux system to run iServer as a normal user. After enabling the multi-process functions, iServer fails to restart to take it effect, and the console or log shows the error: java.lang.OutOfMemoryError:unable to create new native thread?
A: This is due to the limitation of resources used by ordinary users in the Linux operating system. Uch as the maximum allowable memory usage, the maximum number of processes or threads allowed to be enabled, and so on. You can view these resource restrictions through the ulimit - a command.
In multi-process mode, each Worker starts about 200 threads. This problem occurs when too many Workers are started in the iServer and the total number of threads approaches or reaches the number of threads that a normal user is allowed to enable.
Solution: As root, execute the ulimit -u 4133725 command to increase the maximum number of threads that a normal user is allowed to enable.
- How to configure the iServer war package deployed on the middleware to support cross-domain request?
A: The war package of SuperMap iServer is not enabled by default to support cross-domain requests. You can configure the config file of the middleware to support it. Here we take Wildfly as an example to introduce:
Add 2 new tags under the <subsystem xmlns="urn:jboss:domain:undertow:3.1"> tag in the 【WildFly root directory】\standalone\configuration\standalone.xml:
(1) Add <filter-ref name="Access-Control-Allow-Origin"/> under the <host name="default-host" alias="localhost"> tag;
(2) Add <response-header name="Access-Control-Allow-Origin" header-name="Access-Control-Allow-Origin" header-value="*"/> under the <filters> tag.
- When using the war package on Tomcat, does the console display garbled Chinese characters?
A: The reason is that the encoding method in the 【Tomcat path】\conf\logging.properties file conflicts with the encoding method of the iServer product package. You can comment out the code lines related to encoding in the loggerg.properties file or change the encoding method to GBK encoding.
Comment code lines:
#1catalina.org.apache.juli.AsyncFileHandler.encoding = UTF-8
Change the encoding to GBK:
1catalina.org.apache.juli.AsyncFileHandler.encoding = GBK
- Start iServer DataStore service on a Linux system, storage type chosed for tile or binary, then iServer DataStore fails to initialize. And the console shows "Tile or binary database configuration failed". What's the reason? How to solve?
A: The reason is:
When the storage type is selected as tile or binary, iServer DataStore will start the MongoDB database during initialization, and the/tmp/mangodb-27017.sock file will be used to start the MongoDB database. If another user has started MongoDB before, this file will be generated, and the owner of the file is the previous user, but the current user does not have permission to read and write the file. This will cause MongoDB startup failure, which in turn will lead to iServer DataStore initialization failure.
The specific solutions are as follows:
Check whether there is a mongodb-27017.sock file in the /tmp directory. If yes, confirm whether the owner of the file is the user who is currently starting iServer DataStore. If not, please contact the owner or root user of the file to delete the file and reinitialize iServer DataStore.
- Deploy the war package in Tomcat, when quickly publishing services through iServer Manager, the remote browsing function doesn't work properly and the system file directory can be displayed. How to solve this problem?
A: The reason is that the Tomcat package does not support the special character "|" in the URL path by default, while "|" appears in the URL of remote browsing related functions. The solution is to open the catalina.properties file in the conf folder under the root directory of Tomcat with a text editor, uncomment “tomcat.util.http.parser.HttpParser.requestTargetAllow=|” so that Tomcat allows URL paths with "|" to be processed.
- Deploy the war package in Tomcat, when accessing services, the console displays the exception message "java.lang.IllegalArgumentException: Invalid character found in the request target. The valid characters are defined in RFC 7230 and RFC 3986". How to solve?
A: The reason is that the service request URL contains restricted special characters. Solution: Open the 【Tomcat installation directory】/conf/datalina.properties file, uncomment tomcat.util.http.parser.HttpParser.requestTargetAllow=| at the end of the file, and add special characters after "=" to allow processing of these special characters. For example, add "{" and "}" and change them to: tomcat.util.http.parser.HttpParser.requestTargetAllow=|{}.
- After the master node of the Spark cluster started in the linux system, the child node could not be added to the mater node, or the log reports: WARN Utils: Service 'sparkWorker' could not bind on port 0. How to solve it?
A: Use the command cat/etc/hosts to view the /etc/hosts file and modify it so that the current machine IP or the corresponding hostname after 127.0.0.1 is configured correctly.
- When running iOS Java applications on the Suse operating system, the following error occurs: java:symbol lookup error:/opt/Bin/libSuGraphicsQT.uge:undefined symbol?
A: Find the file with *.sdx extension in the Bin directory of the product package. Note only keep libSuEngineUDB.sdx,libSuEngineOGC.sdx,libSuEngineImagePlugin.sdx these three *.sdx extension file, other *.sdx file delete all extensions. After processing, if the map when the figure is not successful, you will need to further remove product package libSuFileParser3DModel.fps file under the Bin directory..
- How to solve cross domain issues when deploying war packages on TongTech middleware and calling iServer services from other servers?
A: You need to modify the web.xml config file in the war package to configure the cross-domain access of iServer on TongWeb. For more information, see: TongWeb Cross-Domain Configuration.
- In Linux environment, if there are issues such as iServer crashing while browsing maps after publishing a workspace with SVG symbols as a REST map service, or prompting to enter a workspace password when publishing a workspace without a password, what could be the possible reasons?
A: 1. After publishing a workspace with SVG symbols as a REST map service, iServer crashes while browsing maps. The possible reason is that the current Linux system environment is non graphical interface. You can solve this problem by configuring the PreLoadQTPlugins property in SuperMap.xml (located in the %SuperMap iServer_HOME%/support/objectsjava/bin directory) to true.
2. When publishing a workspace without a password, prompt for the workspace password may be due to a missing dependency library in the current system environment. You can solve this by installing the missing dependency library. Specific reference: Detect and Supplement Dependency Libraries to detect and supplement missing dependency libraries.
- When accessing REST services or WFS services, why does the error code 500 appear and the message "Warning: Java heap space" show in the log?
A: The Java virtual machine memory is not enough for some services, so the above error occurs. Solution: Modify the Java virtual machine memory parameter to be larger, for example, -Xmx1024m, and then restart the service.
- What do you need to notice when using 2D map caches?
A: 1. When making a 2D map cache, you need to pay attention to the DPI of the machine. The DPI of the machine that generates the 2D map cache needs to be consistent with the DPI of the machine where the SuperMap iServer server is located in order to ensure cache availability.
2. When using a 2D map cache, do not save the cache as a data source in the workspace. When publishing in SuperMap iServer, please publish directly as map services.
- Why is it normal to obtain the map service of "World Map" through the httpxmlrequest object in JavaScript, but there is no result when obtaining the map service of "World Map_day"?
A: The Chinese map name in the URI address needs to be encoded. For example, encode "World Map_day" var mapName= encodeURI ( "World Map_day"); The URI of the encoded map name is var uri="http://192.168.115.68:8090/iserver/services/maps/rest/maps/"+mapName+".json".
- Why the background of the image got is not transparent, but black?
A: The color depth below 24 bits does not support the transparent display of pictures. At this time, you need to check the color depth setting of the operating system. You need to set it to 24 bits or above to support the transparent display of pictures. There are several situations that affect transparent images from SuperMap iServer:
(1) The color depth of the operating system where the SuperMap iServer is located is set to be less than 24 bits;
(2) When SuperMap iServer is started by remote connection, the color depth is set to less than 24 bits in the display options of remote connection;
(3) In the operating system where the SuperMap iServer server is located, in the RDP-Tcp attribute setting, the "maximum color depth" set by the client is less than 24 bits, at this time, start service by connecting to the server remotely.
- Why certain request cannot be recognized and the request may fail or wrong result may be returned?
A: The HTTP request is sent without UTF-8 encoding, causing the server to fail to recognize it. For non-ASCII characters, SuperMap iServer UTF-8 encoding is used by default, otherwise it cannot be parsed correctly.
- Why is there a deviation between the map and cloud service layers in the SuperMapCloud representation, and a deviation between the map and Tianditu representation?
A: Since the data of SuperMap cloud service and Tianditu service have been declassified according to relevant national regulations, they are inconsistent with the original data.
- How to solve the phenomenon of some elements being truncated and displayed incompletely when browsing nautical chart data, label thematic maps, symbol thematic maps, etc?
A: Please change the IsMapExpanded property in the SuperMap iObjects Java root directory\bin\SuperMap.xml to true. The SuperMap iObjects Java that comes with iServer is located in the %SuperMap iServer Java_HOME%/support/objectsjava directory.
- Why is the map image obtained through a certain scale different from the map image obtained under the same scale in previous versions of the product?
A: This is because the scale in the SuperMap product system is based on the screen resolution. At present, the default screen resolution is 96 dpi. In iServer Java 6R (2012) and previous products, the screen resolution defaults to 76.2 dpi. This change is from SuperMap iServer Java 6R (2012) SP1 goes into effect. For a detailed description of the map scale, please refer to Definition of Scale .
- When performing the POST request in iServer, why the result resource ID is different from the REST_API in the request example?
A: The newResourceID, as the ID of the operation result resource, is a random number, such as the ID of the result resource datasetBufferresults obtained after executing a POST request on the datasetBufferresults resource. Therefore, the result of each POST request is a different subresource ID.
- Why does this error occur when querying map services :"java.lang.OutOfMemoryError: Java heap space"?
A: This may be caused by the excessive number of objects in the result record set returned by the query. You can avoid this problem by limiting the number of result records returned at one time in the following ways:
(1) When the client queries, the expectCount parameter can be used to set the number of records expected to return results, so that the number is limited within the acceptable range of the server.
(2) The server can set the default number of returned records. The iServer provides the queryExpectCount configuration item (the default value is 1000) to set the default number of returned records. See the Configuring Service Provider through XML File for details.
- Why WMTS 1.0.0 services published by SuperMap iServer can not open in common tool Gaia?
A: Gaia only recognizes <WGS84BoundingBox> node and does not recognize <BoundingBox> node, however, the GetCapabilities of the WMTS100 interface provided by iServer includes the <BoundingBox> node corresponding to 3857, so the WMTS100 service cannot be opened in Gaia. To solve this problem, users need to customize the WMTS interface, and the scale set should select the scale set corresponding to projection 4326: GlobalCRS84Scale, GlobalCRSPixel, GooleCRS84Quad, ChinaPublicServices, when the projection of the data itself is 4326, Custom can also be selected.
- Why the fonts in the same tag are different when we browse the map?
A: Because the font library used by the label does not exist in the system where the iServer service is deployed.
The solution is to install the font library used by the tag in the system. For example, the installation directory of the font library under Linux is %SuperMap iServer_HOME%/support/fonts. For instructions, see: Configure after installation .
-
Why is the query result wrong or cannot find the dataset to be queried when performing the map query or data query in a cluster environment?
A: Possible reason: In the cluster environment, the data corresponding to the same map or data services resource provided by each node is inconsistent. For example, the workspace names, data source names, and map names of each corresponding data are the same, but the internal datasets are different, which leads to load balancing assuming that each node is a consistent service, while the nodes actually executing the query use inconsistent data, resulting in query failure.
-
After using SuperMap iServer to publish maps in the workspace as REST map services, it was found that some vector data was lost and some labels in the thematic map were duplicated?
A: This problem generally occurs in maps containing point vector data. After publishing as map services, the point symbol is partially lost. The solution is to turn off the "Display Full Label" setting of the point data layer in the map. There are two ways to do this:
1. If you use the SuperMap iDesktopX desktop, open the layer property panel of the point layer in the map, and cancel the check state of "Show Complete Label" to turn off this setting, as shown below:
2. If SuperMap iDesktop is used, export the layer attribute template of the point layer in the map:
Then change the "FullLabelEnabled" attribute value in the layer attribute template to "FALSE", and save the template:
Finally, the layer attribute template is reapplied to the point data set, and the original point layer can be removed from the map.
After turning off the "Show Complete Label" setting for the problem layer, save the map and republish the map in the workspace - Why does the iServer service encounter error code 404 when accessing resources after successful release, and the resources cannot be accessed?
A: The reason is that the custom name in the service request URL contains a "." symbol. In iServer, custom names that may appear in URL, such as map names, dataset names, etc., cannot contain the "." symbol.
- Why can't the WMTS1.0.0 service released by iServer be loaded in QGIS?
A: The reason is that QGIS needs to add a parameter when loading the WMTS service, that is, add a parameter after the URL of the WMTS service: " ?SERVICE=WMTS&REQUEST=GetCapabilities".
- What is the reason for an error when loading a scene through WebGL3D after publishing a 3D service?
A: After publishing the 3D service, the following error will be reported when loading the scene through the WebGL3D presentation:
The reason is that the graphics card driver version of the machine where you are browsing the 3D scene is relatively low. It is recommended that you upgrade the graphics card driver.
- After the service publishing is successful, why is the service content obtained incorrectly?
A: The possible reason is that the service you published contains special characters in the layer name, dataset name, or datasource name. In iServer, layer name, dataset name, datasource name and other can not contain special character in url, such as: +, space, /, ?, %, #.
- After publishing TPK tile as map services, browse and display the white map?
A: Since SuperMap iServer 10i, there is a requirement for the format of the TPK tile storage path. The storage path of TPK does not meet the requirements of this format, browsing the published map name service will display a white map. The format requirement is v101/Layers/_alllayers/<layers> or Layers/_alllayers/<layers>, where Layers can be replaced with "图层" in Chinese, for example:
v101/Layers/_alllayers/L00
Or
Layers/_alllayers/L00
Or
V101/图层/_alllayers/L00
Or
图层/_alllayers/L00
- Why do some layers not display or display content that does not match the actual content of the map when browsing the map using MapboxGL?
A: This situation is mostly due to some symbols or layer settings in SuperMap that do not support MapBox style. Using MapboxGL to describe the process of dynamically obtaining vector tiles for map browsing requires an effective vector map. The symbolization and layer settings of SuperMap map features are mostly supported by MapBox styles; However, due to the difference in display expression between MapBox style and SuperMap, there are some limitations and precautions in the production of vector maps and the generation of vector tiles, as follows:
(1) When generating vector tiles, objects with dense nodes will be thinned to reduce node redundancy. In most cases, this thinning will not be visually obvious, but there are also special cases, such as obvious deformation of objects after thinning. Therefore, it is recommended that you ensure that map objects have reasonable complexity at different display scales.
If you want to turn off the thinning function, you can set the configuration items <MVTSimplifyGeometry> and <MVTSimplifyPGIS> to false in the 【iServer root directory】/support/objectjava/superrmap.xml file.
(2) MapBox supports almost all SuperMap point symbols, commonly used road line symbols, and commonly used surface fill symbols, but complex symbols may not be displayed correctly. For some symbols that MapBox does not support, they will be displayed as corresponding dots, solid lines, or solid color fills based on the symbol type. In addition, the MapBox style fully supports contour lines for face symbols and line type symbols. Please note that:
-
MapBox style does not support scaling display symbols along with the image.
-
MapBox style does not support offset and endsign settings for child lines.
-
For custom fill symbols, MapBox styles only support fill symbols that contain one fill sub layer, which can be an image fill or symbol fill type.
(3) The MapBox style also has limitations in supporting SuperMap text effects, so you need to pay attention to the style settings of all text in the map and avoid using font effects that are not supported by the MapBox style. At present, MapBox only supports bold outline and bold italic effects, and does not support effects such as shadows, underscores, and strikeouts. Please note that:
-
The text in the map needs to be set to a fixed size, otherwise the text effect may differ from the original map when displayed.
-
For text layers, the style of the first text object in the layer will be used as the style for all text in this layer.
-
When using bold and italic effects on text, it is necessary to ensure that there is a corresponding font library for bold and italic in the computer, so that the bold and italic effects of the text are effective. For example, if the text uses Microsoft Yahei font and bold and italic are set, then your computer should have both Microsoft Yahei bold and Microsoft Yahei italic font libraries.
(4) The MapBox style only supports SuperMap partial types of thematic maps. If the map contains unsupported thematic maps, these thematic layers will be ignored when generating vector tiles. The supported thematic map types only include single value thematic maps, segmented thematic maps, and default label thematic maps; Single value labels, segmented labels, composite labels, matrix labels, and other thematic maps are not supported. Please note that:
-
The MapBox style does not support offset settings for single value thematic maps of points, lines, and surfaces.
-
For the annotation fields used in the tag thematic map, currently only native field values are supported, and SQL function calculation results cannot be displayed.
-
For the same point dataset, it is not supported to have both thematic maps and labels based on that point dataset, otherwise there may be a loss of point symbols in the thematic maps. You can use point ordinary layers instead of point thematic maps to solve this problem.
-
When there are both point ordinary layers and label thematic maps based on the same point dataset, MapBox does not support setting both point symbols and label backgrounds; Otherwise, the dot symbol will be lost, and although the label will be retained, the label background will deviate from the label text.
-
When both Chinese and English characters exist in the label, the length of the label corresponding to the Chinese characters will be shortened.
-
The MapBox style only supports displaying labels in two directions along the line (normal direction along the line and top to bottom, left to right). If the map has a different display direction along the line, the label will be placed with the direction "top to bottom, left to right".
(5) Due to the difference in display expression between MapBox style and SuperMap, there are also differences in some map display details between the two.
-
Typesetting: MapBox's line wrapping for long labels is different from SuperMap's. When the tag theme map applies settings for label wrapping and multi line text layout, the display effect differs significantly from the map.
-
Along Line Annotation: MapBox's processing of along line annotation is different from SuperMap, and the displayed along line annotation effect differs from the original map, such as small spacing between along line annotation words, different numbers and locations of along line annotations compared to the map.
-
Avoidance and Coverage Settings: MapBox's avoidance handling of features in the map is different from SuperMap, resulting in differences in the number of labels displayed and the alignment between labels and points. In addition, the overlay setting of SuperMap maps is invalid when expressed in MapboxGL.
A: When you need to perform SQL field queries on map services and data services, it is recommended that you set field indexes for the fields that need to be queried in the data source in SuperMap iDesktopX before publishing the service, in order to improve query efficiency.
- Why does the execution fail when adding a JSONB type field to an empty dataset through the fields resource in a REST data service published by a UDBX data source?
A: Because JSONB fields are only the field types available in PostgreSQL and PostGIS data sources, REST data services published by data sources other than PostgreSQL and PostGIS do not support adding JSON type fields.
- Successfully released REST video streaming service on Linux (x64) or Linux (arm64) systems, but did not generate the corresponding index.m3u8 stream file for the video file locally. What could be the reason and how should it be resolved?
A: It is possible that the video file streaming failed due to the lack of dependent libraries. Using the Linux (arm64) environment as an example, you can find the missing dependent libraries by following these steps:
1) Unzip 【root product directory】/webapps/iserver/WEB-INF/lib/ffmpeg-6.1.1-1.5.10-linux-x86_64.jar
2) Go to org/bytedeco/ffmpeg/linux-x86_64/ and execute ldd ffmpeg. All dependent and missing libraries are listed.
3) The problem can be solved by downloading and installing the missing dependent libraries.
- Why load iServer in ArcPro After publishing the wmts-arcgis service, the preview is white?
A: The possible reason is that you have enabled caching for the map service. Please check the value of the useCache parameter in the configuration node of the map service component corresponding to the map service you published in the iserver-services.xml file. If it is true, please modify it to false to turn off the cache, and then refresh ArcPro for preview to solve the problem.
- Why does the "Local Browse" button inavailable when quickly publishing a file-type workspace with Server Manager?
A: There may be two situations as follows:
(1) The service is not local, please use "Remote Browse" to select;
(2) Under IE9, IE10, Chrome and Safari, due to the security control of the browser, SuperMap iServer cannot obtain the exact path to release workspace. Please use "Remote Browsing" to select.
- How should I do if I forget the password of the administrator account created in initializing SuperMap iServer?
A: There is a passwordreset.bat/passwordreset.sh file in the 【SuperMap iServer_HOME】\bin directory of SuperMap iServer. The file is specially used to deal with the problem of the administrator password when the user forgets the system initialization. If you forget the administrator password at the time of system initialization, you can create account again by the following operations:
(1) Stop the SuperMap iServer service, that is, execute the shutdown.bat /shutdown.sh file under the 【SuperMap iServer_HOME】\bin directory shutdown.bat /shutdown.sh file.
(2) Execute the passwordreset.bat/passwordreset.sh file.
(3) Restart the SuperMap iServer service by executing the startup.bat/startup.sh file in the 【SuperMap iServer_HOME】\bin directory. When accessing the iServer homepage after the service is started, the system will automatically redirect to the create administrator account interface. At this point, you only need to recreate the administrator account.
- Why original authorization info is invalid if you modify the service instance name through service configuration file?
A: After modifying the service instance name (i.e. "service components/service interfaces") through the service config file, the service instance will be regarded as a brand new service by the system. The default is "any user can access". Administrators can re authorize new service instances in the Service Manager and manually delete the authorization information of the original service in shiro.ini (under WEB-INF), or manually modify shiro.ini to update the original service instance name to the new one.
The method to modify the shiro.ini is to find the [instances] node, update the service instance name and make it correspond to the authorization role. The format is as follows:
<service instance name>= PRIVATE,role1,role2
If it is necessary to rename the service instance and keep the authorization information, it is recommended to modify it through the service manager (WebManager), so that the system will automatically update the service instance name to match the original authorization role.
- Why the server returns 401 after accessing WebManager?
A: If you have previously used the Beta or RC version of SuperMap iServer 6R (2012) 6.1.3 in the same browser, upgrading to the official version of SuperMap iServer 6R (2012) 6.1.3 may result in a 401 error. Because SuperMap iServer upgraded its secure login cookie information in version 6.1.3, if you click on "Remember Me" on the login page while using an older version of the product, accessing the 6.1.3 official version of the product may result in a 401 error due to the old cookie information saved by the browser.
The solution is to clear the browser Cookie information.
- Why SSO failed after I configured CAS authentication server?
A: If the CAS authentication server and the GIS server are not on the same machine, the login verification may be unsuccessful due to the time difference between the two machines. In this case, it is necessary to adjust the time of the two machines to keep the same, or extend the fault-tolerant time interval, the default time difference tolerance for iServer (or iPortal, iEdge) is 3 minutes. The way to modify the tolerance of the fault tolerance time difference is to edit the shiro.ini (WEB-INF Lower), modify the casRealm.tolerance parameters (in milliseconds) as follows:
...
casRealm.enabled = false
casRealm.reserveSystemAccount = true
casRealm.casServerUrlPrefix = http://{ip}:{port}/cas
casRealm.casService = http://{ip}:{port}/{contextPath}/shiro-cas
casRealm.securityInfoDAO = $sqliteRealm
casRealm.tolerance = 180000
...
- The timing recovery function of iServer is not available. Why?
A: If you configure a JAVA environment variable value that contains spaces, such as D:\Program Files\java_x64\jdk1.7.0_17_x64, it will cause resource reclamation for iServer does not work. The solution is as follows:
- Windows system: Open the setclasspath.bat file with a text editor under 【SuperMap iServer installation directory】\bin, and then add “ if not "%_RUNJDB%" == "" goto gotRunJdb ” above “ if not ""%1"" == ""debug"" goto gotRunJdb ”. As shown in figure:
- Linux system: Open the setclasspath.sh file with a text editor under 【SuperMap iServer installation directory】 bin, and add “ if [ "$1" = "debug" ] ; then ... fi ”. As shown in figure:
- iServer responses slowly. Meanwhile, many INFO level exception information appear in catalina.log file, such as "java.io.IOException: broken pipe" or "java.io.IOException: The software in your host has stopped an established connection". How to solve?
A: You can improve the response speed of iServer by changing the log level to WARNING (FINE by default) in the built-in Tomcat file of iServer. The specific modification method is as follows:
1.Open the 【iServer installation directory】/conf/logging.properties file with a text editor
2.Modify 1catalina.org.apache.juli.AsyncFileHandler.level = FINE to: 1catalina.org.apache.juli.AsyncFileHandler.level = WARNING
- When doing distributed analysis, why the created distributed analysis task is always being running status, and the detailed page of the spark task execution reports "SecurityManager:authentication disabled;ui acls disabled;users with view permission"?
A: This is because the computer where the iServer is located has multiple network cards and is not on the same network segment as the child node of the sparkcluster being used. In order to ensure Spark Worker and iServer can communicate normally, and the following configuration is required in iServer.
Configuration method: Add “spark. driver. host 192.168.*. *” to the 【SuperMap iServer installation directory】/SuperMapiServer9D/support/spark/conf/spark-defaults.conf, as shown below.
spark.driver.host 192.168.120.1
Among them, 192.168.120.1 is the IP address of the iServer machine in the same network segment as the Spark cluster child node. Note: Spark cluster sub nodes are distributed analysis nodes configured with iServer or Spark Workers configured with Spark cluster.
- In distributed analysis, the created distributed analysis task is always in a running state, and the distributeanalysis.log file shows this kind of warning message: WARN - Initial job has not accepted Any resources; check your cluster UI to ensure that workers are registered and have sufficient resources. What are the possible reasons?
A: The possible reasons are as follows:
(1) The applied spark cluster has no Spark Worker node available.
Solution: Check the status of the spark cluster to see if any Spark Worker nodes are available to join.
(2) The port required to start Spark Worker is occupied.
Solution: Set the environment variable export SPARK_WORKER_WEBUI_PORT={port} (i.e. Spark available Worker Port)
(3) In the case of multiple network cards, the started Spark Worker port cannot be bound to any IP of the machine where the Spark Worker is started.
Solution: Set the environment variable export SPARK_LOCAL_IP=0.0.0.0.
(4) The applied spark cluster cannot be mapped to the correct IP through the machine name, so that the Spark Worker node cannot be found.
Solution: For the Linux platform, the IP corresponding to the host name in the /etc/hosts file is wrong, and it can be modified correctly.
(5) The Spark cluster is running low on memory or CPU resources.
Solution: You can configure the memory and number of cores in the 【SuperMap iServer install directory】/support/spark/conf/spark-defaults.conf file as follows.
spark.cores.max //The total number of cores for Spark cluster applications is not less than 2
spark.executor.cores //The total number of cores for Spark cluster applications is not less than 1
spark.executor.memory //The memory of Spark cluster applications should not be less than 1g
- In distributed analysis service, when the analysis result is large, analysis fails and the distributed analysis log file distributeanalysis.log of iServer shows error message "org.apache.spark.SparkException: Kryo serialization failed: Buffer overflow". How to solve?
A: Distributed analysis adopts Spark technology internally and is implemented based on a multi node architecture. A distributed analysis job will be decomposed into multiple atomic tasks and executed in a distributed manner across multiple work nodes. After all work nodes have completed their execution, all analysis results will be collected from the work nodes to the master node. During the collection process, it is necessary to serialize the analysis results into binary and deserialize the binary content into objects. Spark defaults to the Kryo sequential speech mechanism. When the content to be serialized or deserialized is too large, the Kryo deserializer cache may be insufficient, resulting in this error. The maximum cache size of the Kryo sequencer can be appropriately increased. The specific method is to open the file %SPARK_HOME%/conf/spark-defaults.conf and add the following configuration.
spark.kryoserializer.buffer.max 1024m
- After starting the distributed analysis service, the distributed analysis page is blank, or the console reports an error "Connect to localhost:6765[localhost/127.0.0.1]failed:Connection refused". What are the possible reasons?
A: Possible cause: The destination path is too long and exceeds 100 characters when extracting the iServer.
Solution: Reduce the level of the iServer installation directory, or shorten the extracted folder name. For example, put the compressed product package in the root directory of the disk and then decompress it.
- How to solve the problem of map documents output by web printing services, where the fonts in the layers are not displayed and instead appear as boxes?
A: For the map document output by the Web printing service, the layer does not display the font and is displayed as a box, indicating that the system font library of the machine where the Web printing service is located lacks the font used by the layer. You can solve this problem in the following two ways:
(1) Manually install the font required by the layer in the machine where the Web printing service is located;
(2) When you make a map and change the font used for the layers to bold, the output map document will default to the bold font included in the iServer package.
- In Linux environment, the web printing service fails to start with the error message "- ERROR - Error loading font family; net.sf.jasperreports.engine.fonts.InvalidFontException:Error loading font "net/sf/jasperreports/fonts/icons/icons.ttf".". How can this be resolved?
A: Error reporting reason: When the web printing service starts, it will automatically load the default fonts included in the package. The system needs to support the automatic font loading function and install the fontconfig plugin.
Solution: Install the fontconfig plugin. Fontconfig is a library of font-related computer programs used to configure, customize, or make fonts available to applications system-wide.
The Centos system can be installed using the following commands (Internet connection required):
yum -y install fontconfig
The Ubuntu system can be installed using the following commands (Internet connection required):
sudo apt-get install fontconfig
- How to modify contact name, contact information, address and other information in WMS, WMTS, WCS service capability documents?
A: Enter "Service"-> "Service Assemble"-> "Interface" page, find the corresponding interface on the "interface" page, enter the interface details page, and revise the relevant information of WMS, WMTS, and WCS services under "Interface Configuration Object". You can also modify the contact name, contact information, address, and other information in the 【SuperMap iServer install directory】/webapps/iserver/WEB-INF/iserver-services-interfaces.xml. For details, please refer to Configure Service Interface through XML File .
- What are the possible reasons why a web printing service that has been encrypted with HTTPS fails to print?
A: The reason may be that the SSL certificate used by the HTTPS server has not been authenticated by an authoritative organization, resulting in a lack of client certificates in Java to verify the identity of this HTTPS server. Therefore, it is necessary to generate client certificates in the HTTPS server first, and then provide the generated client certificates to iServer for use. In iServer, simply import the client certificate correctly and fill in the HTTPS service address to successfully print the web service encrypted with HTTPS. For specific configuration, please refer to Scenario 2: The _SSL_ certificate of the https_server has not been authenticated by an authoritative organization.
- In the Linux environment, when using the processing automation service, the tool list on the processing modeler page is displayed as empty. When accessing the tool list under the processing automation service interface, error code 404 appears, and in the catalina.out log, it reports "ERROR DefaultHttpProxy org.apache.http.conn.HttpHostConnectException: Connect to localhost:8097 [localhost/0:0:0:0:0:0:0:1] failed: (Connection refused)"?
A: Check whether the localhost content exists in the etc/hosts config file. If not, increase the locahost setting:
127.0.0.1 localhost
- Reverse proxy iServer through IIS, unable to log in to the iServer service management page after proxy?
A: This is because the URL used to establish the encrypted tunnel in the login request is too long, and the system limits the maximum number of characters in the URL. Increasing this value can solve the problem.
The operation method is as follows: In the system registry of the computer where IIS is located, create a new 32 bit WORD and rename it to "URLSegmentMaxLength" in the system registry directory of HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\HTTP\Parameters. Select "Decimal" to modify the cardinality and fill in "1024" for numerical data. Click OK and restart the computer for the registry modification to take effect. If the problem still persists, you can increase the value, such as 2048 or higher.
- Enable service dynamic instantiation management, pull up a certain number of services and report an error memory overflow?
A: The more services are pulled up, the higher the memory requirement is. Please modify the value of the JAVA-POTS Xmx parameter in the catalina.bat file according to your needs, such as:
set JAVA_OPTS=%JAVA_OPTS% -Xms256m -Xmx1536m -Xss512k
- What do you need to pay attention to when building a cluster?
A: Please make the following settings according to the specific application:
(1) If using map services for mapping, it is necessary to uniformly set the SuperMap Object Java 7C on the GIS servers included in the cluster: open the 【SuperMap iObjects Java 7C installation directory】\Bin\SuperMap.xml file, set the CustomMapRatioEnable parameter to true, that is: <CustomMapRatioEnable>true</CustomMapRatioEnable>. If this setting is not made, there may be image misalignment when the map service displays images. Note: SuperMap iServer's built-in SuperMap iObjects Java has been modified.
(2) SuperMap iServer is deployed in a Servlet container in the form of a Servlet. If SuperMap iServer, which is a cluster child node, is migrated to another Servlet container with a different port, the port attribute of the <host> node in the iserver-system.xml file needs to be manually changed to the new port number. In addition, any GIS service of the sub nodes in the cluster can also be accessed, and SuperMap iServer will automatically modify the port attribute of the <host> node to the new port number.
(3) The special character "^" cannot appear in the service URI.
- Why some child nodes do not tile when using distributed tiles?
A: Please check the map data of the child node. If you use a file-type data source, you need to ensure that the map data of the child node has the same path as the data of the parent node.
- When using distributed map tiling, as the result tiles in MongoDB which is deployed in Windows 7 or Windows Server 2008 operating system grow gradually, MongoDB will exit without any exceptions and the exit time is also variable. How to solve?
A: You need to install system patches in Windows 7 and Windows Server 2008 operating systems where MongoDB is deployed. Patch download address: https://support.microsoft.com/en-us/kb/2731284
- Failed to push the data source of tile file type during multi-process tiling?
A: When the tiling data source is a file type data source, it is required that the data source file and workspace are in the same directory, and there cannot be any other files in that directory
- What requirements does iServer to the deployment path?
A: It includes the following requirements:
(1) When deploying the iServer service, the JDK/JRE path used (specified through the environment variable JAVA_HOME/JRE_HOME) cannot contain parentheses, otherwise it will cause Oracle data source connection failure or make the resource scheduled recycling function unavailable;
(2) When deploying the iServer service, the iServer deployment path cannot contain spaces, otherwise the resources recovery regularly function is unavailable.
- When model data are included in KML, how to publish it as SuperMap 3D service?
A: When the KML file contains model data, you need to pack the KML file, model data and texture together, compress them in zip format, and then change the extension of the compressed package to *.KMZ format before publishing as a SuperMap 3D service.
- Why is the service blank when publishing data from Oracle datasource through 64-bit SuperMap iServer?
A: The 64-bit SuperMap iServer needs to use the 64-bit Oracle client when opening the Oracle data source. Please ensure that the current system is correctly installed and configured 64-bit Oracle client.
- Why do database based workspaces such as Oracle sometimes fail to open?
A: When SuperMap iServer uses a database workspace, it will write temporary files to the temporary directory of the operating system (such as %Temp% in Windows, /tmp in Linux, etc.). If the system's temporary directory does not have enough space, it will cause the problem of the database workspace being unable to connect.
Therefore, when using a database-type workspace, you should ensure that the system's temporary directory has sufficient space.
- How to adjust the frequency of inspection of database?
A: SuperMap iServer supports adjusting the frequency of database checks, that is, the time interval between checking whether the "database workspace" has changed or whether the "database data source" has disconnected. The specific method is to modify the value of the<checkDatasourceConnectionInterval> parameter in the system configuration file (iserver-system.xml).
- If the user has already registered a system administrator account for iPortal, such as: admin, the portal data has also been initialized. At this point, when switching from SQLite database to MySQL database and accessing the map and service list on the portal homepage, why is it empty and the console prompts "Cannot add or update a child row: a foreign key constraint failures..."?
A: Due to the loss of user information in the user_infos table of the original SQLite database, it is necessary to synchronize the user information in iportal.db under %SuperMap iPortal_HOME%webapps\iportal\WEB-INF\iportaldata to the MySQL database. The specific operation is to add the "admin" record to the user_infos table in the MySQL database. The SQL statement is:
insert into user_infos(name) values("admin");
At this time, you need to ensure that the service rooturls table in the MySQL database is empty. If there is a record, you need to delete it, and then restart the iPortal service is enough.
Note: If you have used iPortal to create maps, register services, etc., and you want to keep the previous portal data info when switching to the MySQL database, you also need to synchronize all portal data info in the iportal.db.
- On Linux platforms, why do I get an empty service when I use iServer to publish an Oracle (not 10.1) workspace?
A: Because on the Linux platform, when using Oracle Client to connect to Oracle Server and open a database, UGO is missing the dependency file libclntsh.so.10.1. The specific solution is as follows:
(1) Establish a soft connection. Enter the %ORCL_HOME%/lib directory and create a soft connection named libclntsh.so.10.1 for the file libclntsh.so.[version number]. Run the command ln –s libclntsh.so.[version number] libclntsh.so.10.1, as shown in the following figure:
(2) Verify whether the UGO dependency is correct. Go to the UGO directory and execute the command line ldd –d libSuEngineOracle.so, and then check the output message. If not appears "not found" and other prompt information, the UGO dependency is correct. After the SuperMap iServer service is restarted, the service corresponding to the workspace containing the Oracle data source can be accessed normally.
- When using the associated appearance query condition in data queries, if the associated database is Oracle, why sometimes the query result is empty?
A: When querying the Oracle database, if the data set plus field name of the query exceeds 27 characters, the query will not succeed. Therefore, when setting the query criteria, please make sure that the dataset name plus the field name of the query does not exceed 27 characters.
- After registering iServer as a Windows system service, start it through the system service mode and publish Oracle engine data as a map service. The map list will not be displayed under the maps resource; After being published as a data service, the data source will not be displayed under the datasources resource. How to solve it?
A: The specific solutions are as follows:
(1) Delete the previously registered iserver system service
(2) Create a new variable ORACLE_HOME in the environment variables. The value is the directory of Oracle. Add the value "%ORACLE_HOME%\bin" to the PATH environment variable of the system and put it in the first place.
(3) Reopen a cmd console window and register the iServer service.
- Why does it sometimes occur that MongoDB fails to start after registering Datastore with iServer on Windows systems? ?
A: Possible reason: The user who currently starts datastore is not the same as the user who holds the Mongo file, and the current user does not have permission to operate the file of the user who holds the Mongo file.
Solution: Start datastore with the user holding the Mongo file and register with iServer.
- After publishing spatial data stored in the database as a service, in scenarios with high concurrency access, if there are issues such as request blocking, white images, or 0 or -1 query results, what are the possible reasons and how can they be resolved?
A: Possible reason: The number of database connections applied in the database type is not enough. Taking MySQL as an example, a mapping or spatial query request will consume 3 MySQL connections. If the number of concurrent users is 100, it is expected that a data source will request 300 database connections, while SuperMap defaults to 100 database connections for a MySQL data source.
Solution: Modify the MySQLMaxConn parameter in the iObjectJava/bin/SuperMap.xml built into the iServer, set it to a value greater than 300, and restart the iServer.
- What are the possible reasons for reporting a "workspace connection string error" when publishing a PGSQL workspace? How can I resolve this issue?
A: Possible cause: Environmental factors. The pg_hba.conf file in the data folder of the Postgre installation file directory is not configured correctly.
Solution: Add the following information at the end of the pg_hba.conf:
# TYPE DATABASE USER CIDR-ADDRESS METHOD
host all all 0.0.0.0/0 md5
- Failed to publish Oracle workspace on iServer in Linux environment, prompting "workspace connection string error"?
A: Possible cause: Caused by lack of dependency.
Solution:
Enter the directory
cd %ISERVER_HOME%/support/objectsjava/bin
Check dependencies
ldd libSuEngineOracle.sdx |grep not
If the following error message appears:
libclntsh.so.10.1 not found
It is determined that the lack of libclntsh.so.10.1 dependency is the cause. Copy libclntsh.so.10.1 from a machine running normally on iServer to the lib in the Oracle client directory:
/usr/lib/oracle/11.2/client64/lib
Restart the iServer to publish normally.
- Why do data sources such as Oracle Plus, SQL Server, PostGIS, etc. return empty results when using the featureResults resource to perform SQL queries with the groupBy field?
A: The standard SQL specification requires that "all columns after select that do not use aggregate functions must appear after groupBy".
The reason why Oracle, SQL Server, PostGIS, and other databases fail is that they strictly follow the above standard requirements, so the queryParameter must include the fields result field, which cannot be null or empty, and this field needs to be written after groupBy. It is required that the columns included in the fields query parameter correspond exactly to the columns in groupBy (except for the columns of the aggregate function).
Here is an example of a correct query request body:
{"getFeatureMode":"SQL","datasetNames":["ORCL:New_Point"], "maxFeatures":1000, "queryParameter":
{"sortClause":null, "ids":null, "name":null, "attributeFilter":"SMID>0", "groupClause":null,"groupBy":"NAME","fields":["NAME"],"linkItems":null, "joinItems":null}
}
In addition, due to the groupBy parameter grouping the result data, the result data is no longer arranged in the order of the original dataset and the ID is changed. You need to add returnContent=true in the URL when sending POST requests to directly obtain the results.
- Starting iServer DataStore on Linux system, selecting relational storage type, iServer DataStore initialization fails, and iServer DataStore console displays "Relational database configuration failure". What is the reason and how to solve it?
A: The reason is: When the storage type is selected as relational, iServer DataStore will start the PostgreSQL database during initialization, and the /tmp/.s.PGSQL.5432.lock file will be used to start the PostgreSQL database. If another user has started the PostgreSQL database before, this file will be generated and the owner of the file is the previous user, and the current user does not have permission to read and write the file. This will cause the PostgreSQL database to fail to start, leading to iServer DataStore initialization failure.
Solution: Check if the .s.PGSQL.5432.lock file exists in the system /tmp directory. If it exists, please confirm whether the owner of the file is the user who is currently starting iServer DataStore. If not, please contact the owner or root user of the file to delete it and restart iServer DataStore.
- iServer releases a service. When data is stored in an Oracle data source, iSever crashes and an error message "ORA-24550: signal received: [si_signo=6] [si_errno=0] [si_code=-6] [si_int=0] [si_ptr=(nil)] [si_addr=0x9c92]" appears in the catalina.out log. What should I do?
A: You can add the sqlnet.ora file to the Oracle client path $ORACLE_HOME/network/admin. The file content is as follows:
DIAG_ADR_ENABLED=OFF
DIAG_SIGHANDLER_ENABLED=FALSE
DIAG_DDE_ENABLED=FALSE
-
When the same PostgreSQL database has both PostgreSQL and PostGIS data sources, the query results of the data service published by the PostgreSQL workspace are incorrect. Why?
A: SuperMap does not support the simultaneous existence of PostgreSQL engine data source and PostGIS engine data source in the same database. It is recommended to process them separately.
-
When using GaussDB database with SHA256 security certification to store service configuration information, temporary resources, session information, security information and other configurations, if there is an exception and a log error org.postgresql.util.PSQLException: Invalid or unsupported by client SCRAM mechanisms, what should I do?
A: The reason for this issue is that after enabling the SHA256 security authentication of the GaussDB database, it cannot be connected to using a regular PostgreSQL driver, but only using the GaussDB driver. Therefore, the relevant parameters in the configuration file need to be modified to the information of connection driver to GaussDB. For example, when storing service configuration information:
<serviceStorage>
<connInfo>
......
<dbtype>GaussDB</dbtype>
<driverClass>com.huawei.opengauss.jdbc.Driver</driverClass>
<jdbcUrl>jdbc:opengauss://192.168.113.33:15432/testdb1</jdbcUrl>
......
</connInfo>
......
</serviceStorage>