Sunday, January 29, 2012

Spatial Reference of HK

The spatial reference of Hong Kong could be found at : http://spatialreference.org/ref/epsg/2326/

There is a link "Proj4" in that page which provides the Proj4js definitions for converting EPSG:2326 (HK1980 Grid) projection to other projection using the Proj4js library:

+proj=tmerc +lat_0=22.31213333333334 +lon_0=114.1785555555556 +k=1 +x_0=836694.05 +y_0=819069.8 +ellps=intl +towgs84=-162.619,-276.959,-161.764,0.067753,-2.24365,-1.15883,-1.09425 +units=m +no_defs 



Wednesday, January 25, 2012

Command line to get installed software / windows updates information

One can use wmic command to get the list of product installed in Windows:
 c:\> wmic product

You can also specify which data fields you want to retrieve, e.g.:
 c:\> wmic product get caption

We can also use wmic command to get the list of windows updates made on the machine:
 c:\> wmic qfe list

Sunday, January 15, 2012

Solving disk offline issue in Windows

You may experienced a message "The disk is offline because it has a signature collision with another disk that is online" / "磁碟簽章發生衝突" in Windows. The case for myself is switching two RAID-1 drives back to non-RAID devices, where the two drives will become identical and cause the collision problem. The following is the solution to turn on the offline disk:

c:\>diskpart
c:\>list disk (you may see your offline disk is in the list)
c:\>select disk 1
c:\>offline disk
c:\>online disk


Reference: http://beddingmall.blogspot.com/2011/01/blog-post_04.html

Thursday, January 12, 2012

Delete Acronis Failed Task

Just tried their solution, it works:
  1. Run Schedmgr.exe and issue the following command: task zap
  2. Delete the content of the following folders:
    Windows XP, Windows 2000/2003 (32/64 bit)
    - \Documents and Settings\All Users\Application Data\Acronis\BackupAndRecovery\MMS\Policies\
    - \Documents and Settings\All Users\Application Data\Acronis\BackupAndRecovery\MMS\TasksStorage\
    - \Documents and Settings\All Users\Application Data\Acronis\BackupAndRecovery\MMS\PolicyStatistics
    Windows Vista, Windows 7, Windows Server 2008 (32/64 bit)
    - \ProgramData\Acronis\BackupAndRecovery\MMS\Policies\
    - \ProgramData\Acronis\BackupAndRecovery\MMS\TasksStorage\
    - \ProgramData\Acronis\BackupAndRecovery\MMS\PolicyStatistics
  3. Recreate the tasks
Ref: http://forum.acronis.com/forum/10652

Tuesday, January 10, 2012

Column aggregation in Oracle

Suppose we have a table (TBL) in Oracle with columns (CATEGORY, ATTR). Consider the following:

CATEGORYATTR
1A
1B
1C
2D
2E
2F
3X
3Y
3Z

We want to convert the table as follows:

CATEGORYATTR
1A,B,C
2D,E,F
3X,Y,Z

This can be done via the SQL below:

select CATEGORY, 
       xmlagg(xmlelement(c, ATTR || ',')).extract('//text()') 
from TBL 
group by CATEGORY

Thursday, January 5, 2012

Determine user in Tomcat

To determine user authentication info in Tomcat, we can use the following:

getRemoteUser()
isUserInRole(String role)

Both methods are under javax.servlet.http.HttpServletRequest.

Sunday, December 18, 2011

Using ArcGIS JS API v2.5 - v2.8

Some notes on using their API:
  • In 2.5, the path is /library/2.5/arcgis (or arcgis_compact)
  • In 2.6, the path changed to /library/2.6/jsapi (or jsapicompact), but the manual doesn't changed. So be careful when following the installation manual
  • The file in /library/2.6/jsapi/js/esri/jsapi.js will create a Javascript error. You might need to replace the file content with the one in ESRI ArcGIS JS API production site.

Something more about the Javascript files in the API:
  • The jsapi.js contains UTF8 characters (‰ - u8240, ¤ - u0164), when ArcGIS JS API "index.jsp" includes this file using <jsp:include>, the UTF8 characters will corrupted. I found two solutions for that
    1. Modify the jsapi.js, swap those UTF8 characters back to escaped (\u) characters, and save the file back as ANSI format. OR
    2. Modify the "index.jsp", avoid using <jsp:include>, try to use file reader with encoding specified. For example: FileUtils.readFileToString(new File(filepath_), "UTF8"); (where FileUtils is from org.apache.commons.io package)

Wednesday, December 14, 2011

100% Height DIV

The trick is to set body with height:100% in CSS:

<style>
   html, body {
      margin: 0px;
      height: 100%;
   }
</style>

Then DIV's CSS height:100% will work !

Tuesday, November 29, 2011

Cynefin methods


Cynefin methods, tools, and techniques have been successfully applied in organisations to address areas such as corporate strategy, innovation, culture transformation, weak signal detection, social networking, mergers & acquisitions, knowledge management and ageing workforce. It is useful in capturing tacit knowledge.
Ref: Cynefin framework (http://www.cynefin.net)

Themes for Notepad2

There is a nice color theme called obsidian for Notepad2. But it will hide your cursor after  importing it. To fix this, give a color and size to the caret in notepad2.ini. For example:

[Default Text]
...
Caret (Color, size 1-3)=fore:#FFFFFF; size:2;
...


Link to Obsidan for Notepad2


CSP on Apache

To add CSP to root if sort of funny. The following will NOT work for most cases !!     <LocationMatch "^/$">        Header s...