The easiest way to do it is to set up Tomcat to publish on port 80 rather than on port 8080 modifing the file server.xml.
Some consideration to take into account before changing the port in Tomcat:
Make sure nothing is already using port 80 in particular Internet Information Service (IIS). The command netstat –a in Windows can help with that.
Note that by default IIS listens on port 80. If you change the port in Tomcat from 8080 to 80 and IIS is installed and using it, you will end up with two applications using the same port number. In order to avoid problems, only one webserver can listen a specific port number. So you will need either to change the port in IIS or to create a redirect in IIS so Dekho can be reached on port 80 (IIS will be listening on port 80 and when a new call to Dekho arrives, IIS will redirect it internally to port 8080).
Simon J. from the Dekho team, is working in a blog post in which he will explain how to set up a redirect to Tomcat within IIS. So for example, if you have ArcGIS Server and Dekho installed in the same server, and the Web Adaptor set up in IIS, you might be very interested in the next blog post before changing the port in Tomcat.
Having said that, let’s go now to see how to change the port from 80 to 8080 in Tomcat. The workflow is pretty straight forward:
- Stop the Tomcat Service
- Go to the Tomcat installation folder, in my case, Tomcat is installed in the following path:
C:\Program Files (x86)\Apache Software Foundation\Tomcat 7.0\conf
- Locate and open the file server.xml
In the Line number 70, edit the port number and set it to 80.
<Connector port="80" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" />
5.- Save the file and restart Tomcat.
6.- Open Dekho admin ( this time changing the port at the end of the url, in my case the url is http://localhost/Dekho/admin). Once logged in you will get a warning message alerting that the cache.url value is invalid and must be updated. Click “OK”
7.- Go to “Settings” and update the following parameters, changing the port from 8080 to 80 (or just remove the port and Tomcat will use 80).
and click “Save”.
Now Dekho can be reached in port 80 just typing
You will find this post useful if you hit problem when printing with SSL enabled ArcGIS server.
To use SSL, an application server must have an associated certificate for each external interface, or IP address, that accepts secure connections. The theory behind this design is that a server should provide some kind of reasonable assurance that its owner is who you think it is, particularly before receiving any sensitive information.
Once Dekho administrator enabled SSL in IIS(Internet Information Service) for ArcGIS server 10.0 and created a self-signed certificate. The Dekho server side will need to have the certificate to access the ArcGIS output folder in order to open the printed files. Following are steps to import the certificate to Java virtual machine.
1. Get certificate of SSL Server, there are many ways of doing that:
- Use Firefox to export the SSL server certificate. Firefox -> Options -> Advanced -> Encryption tab -> View Certificates -> Servers tab -> Add Exception -> Type SSL server URL in the Location field -> Get Certificate -> View->Details tab -> Export
- Use keytool.exe in %JAVA_HOME%/bin:
<JAVA_HOME>\bin\keytool -genkey -alias server-alias -keyalg RSA -keypass changeit -storepass changeit
When you press Enter, keytool prompts you to enter the server name, organizational unit, organization, locality, state, and country code. Note that you must enter the server name in response to keytool’s first prompt, in which it asks for first and last names. For testing purposes, this can be localhost.
2. Use keytool.exe in JRE or JDK to import the certificate to a keystore
<JAVA_HOME>\bin\keytool -import -v –trustcacerts -alias server-alias -file server.cer
-keystore keystore.jks -keypass changeit
3. Add following Java runtime configurations for Tomcat:
-Djavax.net.ssl.keyStore = <path_to_your keystore.jks file>
-Djavax.net.ssl.trustStore = <path_to_your keystore.jks file>
-Djavax.net.ssl.keyStorePassword = <your_new_password>
4. Restart your Tomcat and the printing with SSL should good to go.
You cannot connect to SQL Server by using JDBC Driver for SQL Server after you upgrade to JRE 6 update 29 or a later version
Are you confused as to why your SQL Server 2008 Enterprise RDBMS won’t accept a connection from the DekhoConnectionPropertiesEditor.jar application? (or any other client database connection for that matter that tries to connect via JDBC)
This link helps to explain the issue that was introduced at JRE 6 Update 29, http://support.microsoft.com/kb/2653857.
A number of clients have incorporated custom disclaimer pages before allowing their users access into Dekho. The Dekho site over at the Western Australian Planning Commission is a good example of this. If end-users agree to the terms, they get into Dekho. If they don’t, they get redirected onto another link.
I spent some time today creating a simpler disclaimer for new visitors to Dekho.
- If they accept, they get access to Dekho (which loads up in the background)
- If they refuse, they get re-directed to another URL.
- If they click ‘Do not ask again’, they won’t be prompted again, assuming that they chose accept.
We have provided the tool on the downloads gallery, along with some notes on how to set it up.
Perhaps if you don’t need a disclaimer, it might still be a good idea to let new users know a little more about your Dekho implementation with the help of an alert bar and a custom help page/video.
When you attempt to publish a Dekho Configuration MXD that contains a service that is either:
1. Behind a proxy that requires authentication to communicate with an external service (such as MDS or ArcGIS Online)
2. The service itself requires a username/password to get access to the service (such as a secure WMS service)
…the Dekho ArcObjects Server Manager (DASM) has not been supplied with either the proxy or service credentials to gain access to the service. Depending on the version of Dekho you are running, this will either cause a timeout in the publishing process, or these layers will not be visible in the Dekho Map Client.
We are currently working on bringing support for secure WMS and proxy authentication into the core product, but hopefully this tool will provide an interim solution for those that are having issues with Dekho and either of the points above.
As of v4 of Dekho, we have added support for Apache Tomcat 7. Amongst a number of improvements over v6, the installer makes it a lot easier for allocating port numbers, installing multiple Tomcats on the same machine and applying memory settings.
At the time of writing, the latest build is Tomcat 7.0.32
However, at this current time, we only support builds of Tomcat prior (and including) Tomcat 7.0.27.
- This version can be downloaded from the Apache archives. (apache-tomcat-7.0.27.exe)
- Do not use any version above this for v4, unless stated otherwise in the requirements page (for future versions of Dekho)
The reason for this, is that something in the .28+ builds has caused an issue with BlazeDS communication over the default streaming channel. Our developers are investigating the issue and working with the Apache Tomcat community to come up with a resolution.
Quick re-cap on streaming/polling:
The Dekho Map Client (Flex) communicates with the Dekho Server (Java) using BlazeDS.
This channel of communication can be either configured to streaming (default) or polling (Dekho Settings - amf.channel.type)
- Streaming is a constant open connection between Dekho Map Client and Dekho Server.
- Polling pulses the communications through at set intervals.
Streaming uses less bandwidth and have a lower latency, but in some environments, proxies & firewalls do not like the open connections, and can chunk the requests (stop them). For these environments, polling can be utilised to behave accordingly with the proxies & firewalls. The performance overhead is negligible when compared to streaming.
Dekho 4.0.2 maintenance release has just been packaged and will shortly be available for download. You’ll receive an email with details on where you can download the release later in the week.
What’s in Dekho 4.0.2
Key updates incorporated in the release include:
- Optimised Web Map Service (WMS) performance
- Enriched query capability, enabling additional special characters to be utilised in search strings
- Improved ArcFM tracing
- Resolution of duplication issues relating to Flex Sessions with Polling Channels
The full list of reported issues resolved in Dekho 4.0.2 is available in the Dekho Release Notes.
We now have an Earthmine tool available on our downloads gallery.
This brings some exciting new functionality to enhance the user experience for your Dekho users.
- You can measure distances within the Earthmine window and these will be drawn as redlines on the Dekho Map.
- Earthmine Window can be toggled to full screen and is resizeable.
- Dynamic field of vision cone on the Dekho Map, that moves as you move around within the Earthmine window.
- You can identify features within the Earthmine window, and this will identify the corresponding features from your layers in your Dekho map.
- You can overlay the coverage map of Earthmine to see where you can drag the field of vision cone to.
For more information on how you can make use of Earthmine within your organisation, please get in touch with our friends over at Map Data Services.
If you recently saw this error while loading Dekho in firefox and you use flash debugging, this post might be useful for you:
Property http://www.adobe.com/2006/flex/mx/internal::topMostIndex not found on _Main_mx_managers_SystemManager and there is no default value.
Please note that a different error might be displayed for earlier versions of Dekho but the cause could be same.
Read more >>
If you are aware of and use the server.properties file at the path : C:\Program Files\Apache Software Foundation\Tomcat\webapps\Dekho\WEB-INF\classes\resources, you would have been experiencing the issue of this file being overwritten when you install a newer version of Dekho.
The answer to the above problem is Dekho_server.properties which you can create in C:\Program Files\Apache Software Foundation\Tomcat\webapps directory. The naming convention is same as the Dekho connection properties file i.e. DekhoWarFileName_server.properties. e.g. If the Dekho war file is named as DekhoProd, the file should be named as DekhoProd_server.prperties. The settings which you wish to modify can be copied from server.properties file into this file. Dekho will then read the modified settings from this file and rest of the settings from the server.properties file. This file is not overwritten when a newer version of Dekho is installed.
Please note that: When the Dekho_server.properties file does not exist, a warning message is displayed in the dekho.log file.
WARN au.com.esriau.dekho.config.ServerPropertyManager – Server properties file C:\Program Files\Apache Software Foundation\Tomcat 7.0\webapps\Dekho\..\Dekho_server.properties does not exist or unable to load. Cannot locate configuration source Dekho_server.properties
This does not cause any problems in the Dekho. You can simply ignore it or create a blank Dekho_server.properties file in C:\Program Files\Apache Software Foundation\Tomcat\webapps directory.
This year’s Asia Pacific User Conference is hosted by Eagle Technology Group Ltd, Esri’s official distributor for New Zealand. The event will be held from 5 – 7 November 2012, at the Skycity Auckland Convention Centre in Auckland, New Zealand.
We are having a Dekho User Group on the 5th (Monday), from 3pm to 4pm, so those attending please sign up! We will be discussing the new functionality in v4, and have some user presentations from Marlborough City Council and Dunedin City Council to see how they are using Dekho within their organisations.
We will also have a booth at the conference, so do come say hello and have a chat.