The root cause of this problem is that the -Dlog4j.configuration needs to be in the format of "file://d:/xxx", so:
"file://" + log4jProps.getAbsolutePath()
works on Linux but does not work on Windows.
This patch fixed two problem:
1) templeton.cmd correctly set WEBHCAT_CONF_DIR so that override_container_log4j.properties can be copied to distributed cache. I also modified it so that one can run timepleton.cmd (without any parameter) in standalone mode.
2) use hadoop class Path to convert the override log4j properties file path.