Archive for 8月 2012

$Component   Leave a comment

在salesforce中$component可以理解为跟要找的节点的共同的祖先,

Posted 2012年08月16日 by gw8310 in salesforce

Haversine Formula   Leave a comment

Haversine Formula

Posted 2012年08月10日 by gw8310 in map

chrome documentation   Leave a comment

https://developers.google.com/chrome-developer-tools/docs/overview

Posted 2012年08月9日 by gw8310 in 未分类

Tagged with

deploy from sandbox to production   Leave a comment

Change Sets, Force.com IDE, ANT, unmanaged package, managed package.

Posted 2012年08月6日 by gw8310 in salesforce

Tagged with , , , ,

chatter user guide 101   Leave a comment

https://ap1.salesforce.com/help/chatter-help/en/chatter_only_general.htm

Posted 2012年08月6日 by gw8310 in salesforce, 未分类

Tagged with , ,

salesforce code example   Leave a comment

http://wiki.developerforce.com/page/Code_Samples

Posted 2012年08月6日 by gw8310 in salesforce, 未分类

log4j使用DailyRollingFileAppender   Leave a comment

原文链接:http://www.wenhq.com/article/view_420.html

DailyRollingFileAppender是日志记录软件包Log4J中的一个Appender,它能够按一定的频度滚动日志记录文件。

我们可以按下面的方式配置DailyRollingFileAppender
log4j.rootCategory=INFO,S
log4j.appender.S=org.apache.log4j.DailyRollingFileAppender
log4j.appender.S.File=${catalina.home}/logs/soso
log4j.appender.S.DatePattern=’-‘yyyy-MM-dd’.log’
log4j.appender.S.layout=org.apache.log4j.PatternLayout

log4j.appender.S.layout.ConversionPattern=%-d{yyyy-MM-dd HH:mm:ss}-%m%n

日志文件为:
soso-2010-01-01.log , soso-2010-01-02.log

在DailyRollingFileAppender中可以指定monthly(每月)、weekly(每周)、daily(每天)、half-daily(每半天)、hourly(每小时)和minutely(每分钟)六个频度,这是通过为 DatePattern选项赋予不同的值来完成的。DatePattern选项的有效值为:

* ‘.’yyyy-MM,对应monthly(每月)

* ‘.’yyyy-ww,对应weekly(每周)

* ‘.’yyyy-MM-dd,对应daily(每天)

* ‘.’yyyy-MM-dd-a,对应half-daily(每半天)

* ‘.’yyyy-MM-dd-HH,对应hourly(每小时)

* ‘.’yyyy-MM-dd-HH-mm,对应minutely(每分钟)

DatePattern中不用处理的文字要放到单引号(‘)中,如上面的(.)。
DatePattern格式化之后的文本作为文件名字的后缀。DailyRollingFileAppender不支持格式化之后的文本作为文件名字的前缀。
DailyRollingFileAppender在每一个日志事件(LoggingEvent)附加(append)之前检查是否需要附加。也就是说如果在一个滚动区间中没有任何日志记录,那么这个区间的日志记录文件就不会形成。

log4j.additivity 是 子Logger 是否继承父Logger 的 输出源(appender)的标志位。具体说,默认情况下,子Logger 会继承父Logger 的appender,也就是说 子Logger 会在父Logger 的appender里输出。若是additivity设为false,则子Logger 只会在自己的appender里输出,而不会在父Logger 的appender里输出。

具体配置如下,需要注意的是, com.wenhq的两个属性additivity和logger必须同时配置,否则不能生效:
log4j.additivity.com.wenhq=false
log4j.logger.com.wenhq =error,wenhq-f
这样就可以让com.wenhq的日志只输出到wenhq-f指定的appender,而不继承父类的appender.
example

log4j.rootCategory=info,console
log4j.logger.abc.log4jTest=debug,console
log4j.additivity.abc.log4jTest=false
log4j.appender.console=org.apache.log4j.ConsoleAppender
log4j.appender.console.layout=org.apache.log4j.SimpleLayout

其中abc为包名,log4jTest为类名,log4j.logger为固定的,不能改变!!

基本的格式为:

for root Logger

log4j.rootLogger=[priority], appenderName, apenderName, ….

for Appender 

log4j.appender.appenderName=fully.qualified.name.of.appender.class
log4j.appender.appenderName.option1=value1

log4j.appender.appenderName.option1=value1

Logger组件的继承关系有以下特点:

  • 如果子类Logger组件没有定义日志级别,则将继承父类的日志级别
  • 如果子类Logger组件定义了日志级别,就不会继承父类的日志级别
  • 在默认情况下,子类Logger组件会继承父类的所有Appender,把他们加入到自己的Appender清单中。
  • 如果把子类的Logger组件的additivity标志设为false,那么它就不会继承父类的Appender. addiivity标志的默认值是true.

例子:

log4j.rootLogger=INFO,console

日志级别=INFO

appender清单=console

log4j.apache.helloappLogger=WARN

日志级别=WARN

appender清单=console(继承)

log4j.apache.helloappLogger.childLogger=,file

日志级别=WARN(继承)

appender清单=console(继承),file

Posted 2012年08月1日 by gw8310 in java

Tagged with , , ,

Difference between WhoId & WhatId on Task   Leave a comment

WhoID refers to people things.  So that would be typically a Lead ID or a Contact ID

WhatID refers to object type things.  That would typically be an Account ID or an Opportunity ID

Tasks and Events have two fields (whoId and whatId) that can reference multiple object types … whoId => Lead|Account, whatId => Account|Asset|Campaign|Case…

Posted 2012年08月1日 by gw8310 in salesforce

Tagged with , , , ,