posts - 42,comments - 83,trackbacks - 0

        配置weblogic最常用的是admin console,但console只是开放那些对于用户而言常用的属性。更为详细的属性列表可以参考如下的连接,这些属性可以直接在config.xml中设定,
        http://edocs.bea.com/wls/docs81/config_xml/index.html

        本文主要阐述一下weblogic中几个内部通过reflect机制设定的模块属性。这几个模块的某些属性在console、config.xml中所没有的,只能通过-D设定,而这些-Dproperty又不能从代码中直接看到(因为weblogic内部通过reflect实现,它会直接读取这些模块mbean的setXXX(),然后根据XXX到system property中检查是否存在对应的property, 如果存在,则设定该属性)。大概的实现方法如下:

refer to: weblogic.kernel.MBeanStub.java

 1 protected final void initializeFromSystemProperties(String prefix) {
 2 
 3     Class cls = getClass();
 4     Method[] methods = cls.getMethods();
 5     for (int i = 0; i < methods.length; i++) {
 6       Method m = methods[i];
 7       
 8       if (!name.startsWith("set")) continue;
 9       
10       String attribute = name.substring(3);
11       String key = prefix+attribute;
12       String value = System.getProperty(key);
13       if (value == nullcontinue;
14       Constructor c = null;
15       try {
16         c = promote(params[0]).getConstructor(STRING_PARAM);
17       } catch {
18       
19       }
20       if (c == nullcontinue;
21       try {
22         m.invoke(thisnew Object[] {c.newInstance(new Object[] {value})});
23       } catch { 
24       
25       }
26     }
27   }

       
        这几个模块是:IIOP、NetworkAccessPoint、SSL、 KernelDebug、 Log 、Kernel。设定的时候,我们可以参考MBeab的set方法,然后通过-Dprefix.property进行设定。(注意property对应于setXXX中的XXX)。下面我们看看这几个模块的具体设定方法。

1:IIOP
设定prefix, weblogic.iiop. ,可以设定字段参考如下链接,
http://edocs.bea.com/wls/docs92/javadocs_mhome/index.html, weblogic.management.configuration.IIOPMBean
Example:-Dweblogic.iiop.CompleteMessageTimeout

2:NetworkAccessPoint
设定prefix, weblogic.channels. ,可以设定字段参考如下链接,
http://edocs.bea.com/wls/docs92/javadocs_mhome/index.html, weblogic.management.configuration.NetworkAccessPointMBean
Example:-Dweblogic.channels.Protocol
对于NetworkAccessPoint, 如果配置了protocol,可以配置具体protocol相关的属性,
Example:-Dweblogic.t3.propertyName

3:SSL
设定prefix, weblogic.ssl. ,可以设定字段参考如下链接,
http://edocs.bea.com/wls/docs92/javadocs_mhome/index.html, weblogic.management.configuration.SSLMBean
Example:-Dweblogic.ssl.TrustedCAFileName

4:KernelDebug
设定prefix, weblogic.debug.,字段参考如下链接,
http://edocs.bea.com/wls/docs92/javadocs_mhome/index.html, weblogic.management.configuration.KernelDebugMBean
Example:-Dweblogic.debug.DebugMessaging

5:Log
设定prefix, weblogic.log可以设定字段参考如下链接,
http://edocs.bea.com/wls/docs92/javadocs_mhome/index.html, weblogic.management.configuration.LogMBean
Example:-Dweblogic.log.MmoryBufferSize

6:Kernel
设定prefix, weblogic. ,可以设定字段参考如下链接,
http://edocs.bea.com/wls/docs92/javadocs_mhome/index.html, weblogic.management.configuration.KernelMBean
Example:-Dweblogic.NativeIOEnabled

posted on 2008-11-20 18:17 走走停停又三年 阅读(1644) 评论(0)  编辑  收藏 所属分类: Weblogic

只有注册用户登录后才能发表评论。


网站导航: