Installing Java Runtime Environment Table of contents Introduction... 2 1. Installing the download utility... 2 2. Installing Java(TM) 2 Runtime Environment, Standard Edition 1.4.1... 4 3. Configuring the ami.ini file... 4 4. Configuring the products.ini file... 5 5. Running the download utility... 7 6. Log Files... 7 7. Scheduling the download utility to run automatically... 8 8. Troubleshooting... 9 9. Using a Proxy Server... 10 Troubleshooting using a Proxy Server... 10 Page 1 of 12
Introduction ASX has developed a Java application which is made available to customers of ASX Online Market Information without charge. This application is designed to automatically downloads all product files into a specified directory on your infrastructure. It downloads all current and historical product files listed in your products.ini file, into the directory you have specified for that product. The number of historical files is limited to those that are visible in your browser at any point in time. The download utility firsts checks whether you have already downloaded that file, if not, it downloads the new file. The download utility will create a 'date' directory underneath the directory you have specified for each product. For example, files for the 20th March 2003 will be created in a directory 20030320 underneath the directory you have specified for that product. While ASX has used reasonable care and skill in developing this java application, this utility is made available in good faith, and without charge, to assist customers. It is provided on the basis that all customers will satisfy themselves as to the suitability of the product for use in their environment. In these circumstances, ASX is not able to offer support for this application and does not in any way guarantee the functionality or suitability of the product, nor does ASX accept any liability concerning the use of or failure of the java application. 1. Installing the download utility Windows platform 1. Using WinZip, extract the client.zip file onto the Windows machine where you shall be performing the file download. 2. These are the files and directories that shall be extracted: Page 2 of 12
Page 3 of 12
Unix platform 1. Extract and untar the client.tar.gz file onto the Unix machine where you shall be performing the file download. 2. These are the files and directories that shall be extracted: -rwxrwxr-x 356 Mar 5 16:15 ami.ini drwxrwxr-x 512 May 14 10:55 install drwxrwxr-x 512 May 14 10:43 lib -r-xr-xr-x 1102 Feb 11 17:18 logging.properties drwxrwxr-x 512 May 14 10:39 logs -rwxrwxr-x 499 Feb 7 14:54 products.ini -r-xr--r-- 183 May 13 10:51 rundownload.sh This will extract all the configuration files into the base directory, along with a batch file for executing the download utility. You will also notice a lib and logs directories. The lib directory contains all the necessary jars used by the download utility, including the download utility itself. All log files created by the download utility will be found in the logs directory. 2. Installing Java(TM) 2 Runtime Environment, Standard Edition 1.4.1 The Java client is built for Java(TM) 2 Runtime Environment, Standard Edition 1.4.1 or higher. If you do not have a JVM on your machine, go to the Java download site at: http://www.oracle.com/technetwork/java/javase/downloads/index.html This must be installed for the client to run. 3. Configuring the ami.ini file The ami.ini file contains 'name=value' pairs. These are explained below. Name=Value pair Description baseurl= https://www.asxonline.com/marketinfo/webservices The URL for the Market Information web service (this should not be modified). userid=<enter User ID> Your username for the Market Information site. password=<enter password> Your password for the Market Information site. Page 4 of 12
The following properties are only applicable if you connect to the Internet via a proxy server. Leave these properties empty if you have a direct connection to the Internet. Name=Value pair proxyhost=proxyserver.com.au proxyport=8083 proxyusername=proxyuser proxypassword=proxypassword Description The name of the proxy server you use. The port to use when connecting via the proxy server. The user name for HTTP proxy basic authentication if applicable. The password for HTTP proxy basic authentication if applicable. 4. Configuring the products.ini file The products.ini file should contain a list of the products that you are subscribed to and you want downloaded regularly. The format for an entry in this file is: product_code = local_directory where product_code is the product code for a subscribed product. To obtain the product code for a product, follow the procedure Obtaining product codes given below. local_directory is the directory where you want the files for that product to be downloaded to. This can be specified as a fully qualified directory path, or a path relative to where the ini files reside. e.g. If you wanted to save the Signal D01 product to your local directory C:\My Documents you would enter the following line into your products.ini file: DO1_INT=C:\\My Documents Alternatively, if your files download utility is in c:\filedownload, the following line in your products.ini file will save the files in c:\filedownload\files\do1_int: DO1_INT=files\\D01_INT Note: On Unix replace the \\ with / OBTAINING PRODUCT CODES 1. Log in to the Market Information website. Page 5 of 12
2. Click on the User Profile icon. 3. Click on the Subscription Details link on the left of the screen. https://www.asxonline.com/marketinfo/subuserprofile Page 6 of 12
4. The product code for each subscription can be found in the last column of the table. The following is an example of the table you will see: Product Subscriptions Product Qty / Users Total Sub. Price Product Type Billing Code Signal D12 1 $3,000.00 Web Annual D12_INT Total (including GST) $3,000.00 Note: the product code is case sensitive. Here is a list of all product codes for the signal type products PRODUCT_CODE PRODUCT_NAME D12_INT Signal D 12 Licence Fee DDISS_INT Signal D Dissemination Fee DIARYD_INT Daily Diary E19_INT Signal E Open Interest ECORP_INT Signal E Corporate Actions ESEC_INT Signal E Securities Info ETRADE_INT Signal E Trades Quotes Information TOP150_INT Top 150 5. Running the download utility Once you have determined that you have a Java interpreter, and you have set up your ami.ini and products.ini files, you are able to run the download utility. To do this: 1. Go to the directory where the download utility resides. 2. On the command prompt, run the batch file provided rundownload.bat. If you are using Unix, execute rundownload.sh. 3. The application should now start running and display output giving you information about how the download process is going. The same information is saved in a log file in the logs directory. 6. Log Files Every time the java client runs it will log details to a log file. One log file will be created for each day the utility is run. When the download utility runs more than once in a day the log file is appended to. Page 7 of 12
/logs 20-MAR-2003.log 21-MAR-2003.log The same information will be displayed in the console. The download utility will contain a logging.properties file, this is a configuration file used by the logging library. Do not change the content of this file. 7. Scheduling the download utility to run automatically Scheduling an application to run automatically can be done on most operating systems. On the Microsoft Windows 95/NT platforms a utility called Task Scheduler is able to run applications automatically. On UNIX, a command called 'cron' is able to do a similar function. You can ask your Systems Administrator to set this up on the machine that is running the java client. Page 8 of 12
8. Troubleshooting Unable to authenticate user ID '<enter logon ID>' - Invalid User ID specified. Please check the ami.ini file and ensure that you have entered your correct username/password for the Market Information site. Please note that user ID should always be in lower case whilst the password is case sensitive. Malformed URL specified for server 'https://www.asxonline.com/marketinfo/webservices' - unknown protocol: https This means that you have either not installed the Java 2 Runtime Environment 1.4.1, or that it is not set up correctly in your system path. Error encountered while writing to local file system In the product.ini file, ensure that the directory that you have specified in the file is correct and that no trailing spaces appear. General Error Message Possible Cause Solution Malformed URL specified for server 'https://www.asxonline.com/marketinfo/webservices' - unknown protocol: https using JDK version < 1.4 install JDK version 1.4.1 Exception in thread "main" java.lang.noclassdeffounderror: webservice/proxy/webserviceclient Error opening socket: java.net.unknownhostexception: qqwww.asxonline.com; root ex - ; target ex - incorrect classpath incorrect baseurl in ami.ini (also see table below) make sure the rundownload.bat/.sh is executed from the current directory enter correct baseurl, https:// www.asxonline.com/marketinf o/webservices Page 9 of 12
9. Using a Proxy Server This current release of the Java Client v8.8 can run behind a proxy server. The following combinations have been successfully tested. Proxies Server / Windows Client - Microsoft ISA Server OS: Windows 2000 server Authentication: NTLM Using MS Proxy Client - Squid Proxy OS: Unix Authentication: none Java Client Operating System NT Workstation, XP, Win 2000 Workstation NT Workstation, XP, Win 2000 Workstation, Linux Please ensure you have entered the following into ami.ini file Name=Value pair proxyhost=proxyserver.com.au proxyport=8083 proxyusername=proxyuser proxypassword=proxypassword Description The name of the proxy server you use. The port to use when connecting via the proxy server. The user name for HTTP proxy basic authentication if applicable. The password for HTTP proxy basic authentication if applicable. Troubleshooting using a Proxy Server Proxy Server Related Error Message Possible Cause Solution Error opening socket: null; root ex - ; target ex - not using firewall client AND not specifying proxy settings, but required to go through proxy server - OR - specifying proxy settings with soap.jar v2.2 - OR - using Squid proxy server requiring NTLM authentication, specifying proxy specify proxy settings ---- use soap.jar v2.3 ---- see Note 1 below Page 10 of 12
settings with NO authentication details Error opening socket: java.net.connectexception not using firewall client AND not specifying proxy settings, but required to go through proxy server (also see Connection refused message below for more specific cause) specify proxy settings Error opening socket: java.io.ioexception: Unable to tunnel through 10.2.240.64:8083. Proxy returns "HTTP/1.0 407 Proxy Authentication Required"; root ex - ; target ex - Error opening socket: java.io.ioexception: Unable to tunnel through proxy.asx.com.au:8083. Proxy returns "HTTP/1.1 407 Proxy Authentication Required ( The ISA Server requires authorization to fulfill the request. Access to the Web Proxy service is denied. )"; root ex - ; target ex - Error opening socket: java.net.unknownhostexception: asx281abc; root ex - ; target ex - - OR - Error opening socket: java.net.socketexception: Network is unreachable: connect; root ex - ; target ex - Error opening socket: java.io.ioexception: Unable to tunnel through asx281:80. Proxy returns "HTTP/1.1 501 Not Supported"; root ex - ; target ex - Error opening socket: java.net.connectexception: Connection refused: connect; root ex - ; target ex - using Squid proxy server requiring NTLM authentication, specifying proxy settings with authentication details using Microsoft proxy server requiring authentication, specifying proxy settings with NO authentication details - OR - using Microsoft proxy server requiring authentication, specifying proxy settings with authentication details specifying proxy settings with wrong proxy server value specifying proxy settings with missing proxy server port value specifying proxy settings with incorrect proxy server port value see Note 1 below see Note 1 below ---- see Note 1 below enter correct proxy server value enter correct proxy server port value enter correct proxy server port value Note 1: Page 11 of 12
The SOAP client can only be used as is when no authentication OR basic authentication is required on the proxy server. If the proxy server at your location requires NTLM authentication, you may like to pursue the following workarounds: If the user s desktop is Windows, install the Firewall Client and do not specify proxy settings in ami.ini. If the user s desktop is non-windows, use an authorization proxy server (see Note 2) OR put in a rule in the proxy server to bypass authentication for the user s machine. If using an authorization proxy server, put this as the proxy settings in ami.ini. Proxy server using basic authentication was not explicitly tested, but according to Apache SOAP documentation, basic authenticiation should be supported. Note 2: An authorization proxy server is a proxy software that allows you to authenticate via an MS Proxy Server using the proprietary NTLM protocol. One such software is APS - NTLM Authorization proxy server (http://apserver.sourceforge.net/), this is an open-source project written in Python (http://www.python.org). This can be configured to refer to the actual proxy server as the parent proxy. Page 12 of 12