二、打开weblogic控制台,点击“部署”
再点击“安装”
配置 MyEclipse 的 WebLogic 9 服务器启 动 Eclipse,选择“Window ->Preferences”菜单,打开首选项对话框。展开 MyEclipse 下的 Application Servers 节点,点击 WebLogic 9,选中右边的 Enable 单选按钮,启用 WebLogic 服务器。配置如下:
①BEA home directory:C:\BEA(假定 WebLogic 安装在 C:\BEA 目录中)
②WebLogic installation directory:C:\BEA\WebLogic92
③Admin username:user(来自 WebLogic 中的配置)
④Admin password:12345678(来自 WebLogic 中的配置)
⑤Execution domain root:C:\BEA\user_projects\domains\mydomain
⑥Execution server name:AdminServer
⑦Security policy file:C:\BEA\WebLogic92\server\lib\weblogic.policy
⑧JAAS login configuration file:(Null)
接着展开 WebLogic 9 节点,点击 JDK,在右边的 WLS JDK name 处选择 WebLogic 9 的默认 JDK。这里组合框中缺省为单独安装的 JRE。单击 Add 按钮,d出 WebLogic ->Add JVM 对话框,在 JRE 主目录处选择 WebLogic 安装文件夹中的 JDK 文件夹,我的版本为 C:\BEA\jdk150_04,程序会自动填充其他选项。单击确定按钮关闭对话框。这时候就可以在 WLS JDK name 组合框中选择 jdk150_04 了。(注意。这里jdk要选择weblogic下面的jdk,不然不能正常启动)
对weblogic进行配置一般是通过console控制台来进行配置的 但有的时候 需要自己在程序中需要进行动态的配置 比如增加队列 显示队列 或者配置数据源 改写写config xml 是可以达到动态配置的效果的 但bea不推荐这样做 而且这样做需要重新启动服务器 怎么样既动态的配置 又不重新启动服务器呢?笔者查询了weblogic的网站 了解到有两种方法动态的配置( )可以使用weblogic Admin命令(文档地址 ) ( )使用weblogic是用jmx编程来进行管理 通过jmx来对weblogic中的组件进行动态的配置 jmx的文档地址 如果使用这种方法 要将weblogic jar配置到CLASSPATH环境变量中(因为weblogic的jmx类是放在weblogic jar中的)本人写了一份代码 对Queue进行管理 包括JMSQueue的增加 删除 和显示 我的config xml文件如下 <JMSServer Name= MessageCenterServer Store= MyJmsSave Targets= myserver TemporaryTemplate= MyJMSTemplate ><JMSQueue CreationTime= JNDIName= CenterQueue Name= CenterQueue Template= MyJMSTemplate /><JMSQueue CreationTime= JNDIName= que Name= que Template= MyJMSTemplate /><JMSQueue CreationTime= JNDIName= que Name= que Template= MyJMSTemplate /><JMSQueue CreationTime= JNDIName= queue Name= queue /></JMSServer>代码如下 package messagecenter/*** <p>Title: 消息中心</p>* <p>Description: 对消息队列进行维护</p>* @author 张荣斌* @version */import java util *import java util regex Patternimport javax naming Contextimport weblogic jndi Environmentimport weblogic management MBeanHomeimport weblogic management runtime ServletRuntimeMBeanimport weblogic management runtime ApplicationRuntimeMBeanimport weblogic management runtime WebAppComponentRuntimeMBeanimport weblogic management runtime ComponentRuntimeMBeanimport weblogic jms extensions *import weblogic management RemoteMBeanServerimport javax management ObjectNameimport javax management QueryExppublic class JMSQueueMaintain {public static final String WEBLOGIC_URL = t ://localhost: public static final String WEBLOGIC_USER= system public static final String WEBLOGIC_PASSWORD = public static final String WEBLOGIC_JMSSERVER = MessageCenterServer //JMS服务器的名字 可以看到我的config xml<JMSServerName= MessageCenterServer Store= MyJmsSave 这一行public JMSQueueMaintain() {}/*** 得到initial context*/private static Context getCtx(String url String username String password) throws Exception{Environment env = new Environment()env setProviderUrl(url)env setSecurityPrincipal(username)env setSecurityCredentials(password)return env getInitialContext()}/*** 得到the Admin MBean Home*/private static MBeanHome getMBeanHome(String url String username String password) throws Exception{return (MBeanHome) getCtx(url username password) lookup(MBeanHome ADMIN_JNDI_NAME)}/*** 增加队列*/public static void addQueue(String queuename) throws Exception{Context ctx = getCtx(WEBLOGIC_URL WEBLOGIC_USER WEBLOGIC_PASSWORD)JMSHelper createPermanentQueueAsync(ctx WEBLOGIC_JMSSERVER queuename queuename)}/*** 删除队列*/public static void deleteQueue(String queuename) throws Exception{Context ctx = getCtx(WEBLOGIC_URL WEBLOGIC_USER WEBLOGIC_PASSWORD)JMSHelper deletePermanentQueue(ctx WEBLOGIC_JMSSERVER queuename)}/*** 得到所有的队列名*/public static Vector getQueuenames() throws Exception{Vector vect = new Vector()MBeanHome home = getMBeanHome(WEBLOGIC_URL WEBLOGIC_USER WEBLOGIC_PASSWORD)RemoteMBeanServer homeServer = nullQueryExp query = nullhomeServer = home getMBeanServer()Set JMSMBeans = homeServer queryNames(new ObjectName( mydomain:JMSServer= +WEBLOGIC_JMSSERVER+ Type=JMSQueue * ) query)//where query could be any object that implements the JMX//javax managementQueryExpfor (Iterator itr = erator()itr hasNext()) {ObjectName mbean = (ObjectName)itr next()if(!mbean getKeyProperty( Name ) equals( CenterQueue )){vect addElement(mbean getKeyProperty( Name ))}}return vect}public static void main(String[] args) {JMSQueueMaintain JMSQueueMaintain = new JMSQueueMaintain()try{System out println(JMSQueueMaintain getQueuenames())JMSQueueMaintain addQueue( queue )JMSQueueMaintain deleteQueue( queue )System out println(JMSQueueMaintain getQueuenames())}catch(Exception e){}}} lishixinzhi/Article/program/Java/ky/201311/28614
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)