配置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 == null) continue;
14 Constructor c = null;
15 try {
16 c = promote(params[0]).getConstructor(STRING_PARAM);
17 } catch {
18
19 }
20 if (c == null) continue;
21 try {
22 m.invoke(this, new 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
走走停停又三年 阅读(1656)
评论(0) 编辑 收藏 所属分类:
Weblogic