您的位置:首页 > 其它

Weblogic8.1配置的总结

2007-05-21 09:59 344 查看
WebLogic目前是使用比较多的应用服务器之一,Eclipse是流行的IDE,如何集成起来开发使用呢?

  解决方法:

  采用BEA提供的WebLogicPlugin来进行集成开发。

  安装

  JDK:1.4.2或1.5.0从http://java.sun.com上去下载安装,如果是WebLogic8.X.X系列的版本,应当选用JDK1.4.2的版本。

  Eclipse:3.1.2从http://www.eclipse.org上去下载解压

  WebLogicPlugin从https://eclipse-plugin.projects.dev2dev.bea.com/下载

  技巧Eclipse使用技巧之插件管理

  提示:新下载的插件PlugIn一定不要都放在原始的Eclipse目录下去,一大堆,累死你。

前提是你已经安装好了Eclipse工具了,比如安装在E:/OpenSource/Eclipse/目录下,以下这个目录以%ECLIPSE_HOME%来进行表示;

此时默认的插件是在%ECLIPSE_HOME%/plugins目录中的;

在%ECLIPSE_HOME%下建立一个PlugInsNew的目录;比如:E:/OpenSource/Eclipse/PlugInsNew/

你下载了个新的插件,比如叫做:XYZ

  那么就在%ECLIPSE_HOME%/PlugInsNew/目录下建立XYZ目录,目录里面是eclipse目录,eclipse目录包含有features与plugins两个子目录;结构如下图所示:



把下载的新插件的文件放在以下相应目录中

  %ECLIPSE_HOME%/PlugInsNew/XYZ/eclipse/features

  %ECLIPSE_HOME%/PlugInsNew/XYZ/eclipse/plugins

建立相关的.link的文件

  然后在%ECLIPSE_HOME%/links目录里建立一个XYZ.link的文件

  内容如是:path=E:/OpenSource/Eclipse/PlugInsNew/XYZ就一行这样的路径指示而已。

  这样,如果你下载了多个插件就可以如法炮制建立多个Link文件,想加载哪个插件就把哪个插件的Link文件放到%ECLIPSE_HOME%/links的目录中即可,使用与管理都很方便,建议千万不要放在默认的安装目录中;

  如果你的%ECLIPSE_HOME%与此不同,请修改XYZ.link文件里的路径

删除,关闭Eclipse

  删除%ECLIPSE_HOME%/links/XYZ.link文件即可

  删除%ECLIPSE_HOME%/PlugInsNew/XYZ整个目录及文件

重新启动Eclipse即可使用
  
  WebLogicPlugin现在有两个版本1.1.1和2.0.0。1.1.1只是能够配置一台服务器,并只提供启动停止服务器的功能,没有Redeploy、Undeploy;2.0.0可以配置多台,可以Redepoly、Undeploy,不过没有Deploy功能,而且还有一大BUG,就是只是每次重启Eclipse要重新设置一下用户与密码即可。对1.1.1感兴趣的朋友,可以查看:http://dev2dev.bea.com.cn/bbs/thread.jspa?forumID=124&threadID=34318&tstart=120。下面介绍2.0.0版本的集成使用方法。以及Bug的修改。

  WebLogicPlugin2.0.0功能

启动、停止WebLogic服务器

利用JDT为高度J2EE的应用程序

选择WebLogic域

配置WebLogic服务器的启动参数

  要求

EclipseSDK2.0.0或更高的版本

WebLogicServer6.0或更高的版本

  安装

  插件安装方法有两种方式:

一种就是采用上一节的《Eclipse使用技巧之插件管理》

另一种就是通过UpdateManager的形式来下载安装

  地址是:https://eclipse-plugin.projects.dev2dev.bea.com/update

  安装步骤如下:

  Help/SoftwareUpdates/FindandInstall…



  配置WebLogicPlugin

菜单Windows/Preferences,然后选中WebLogic节点可以看到右边配置的服务器实例列表,可以增加、修改、删除相应的服务器配置。



现在开始增加服务器配置,在General标签设置以下各个参数

设置服务器配置的显示名称

选择你的WebLogicServer的版本

设置BEAHome的目录

设置WebLogicHome的目录

设置Domain的名称

设置Domain的目录

设置Server的名称

设置Host机器名称或IP,本机填localhost即可(weblogic.Admin使用的)

设置端口号(weblogic.Admin使用的)

设置SSL端口号(weblogic.Admin使用的),注意:这个要先在控制台http://localhost:7001/console/里先设置好才行,要不然保存时检测不到就保存不了。

设置管理员名称(是有权限启动这个Server的用户名称如默认的weblogic)

设置密码



在Classpath配置标签栏里,可以设置如下参数:

Pre-startupWebLogicClasspath,是设置在WebLogic类库加载之前要先加载的一些类库

Prost-startupWebLogicClasspath,是设置在WebLogic类库加载之后才要开始进行加载的一些类库

注意是先后顺序的不同,根据你的项目需要进行设置之,重新启动Eclipse后,在java.class.path=的前与后会增加进来你设置的这些Classpath



在Runtime配置标签栏里,可以设置如下参数

JRE(选择用来启动WebLogicServer所要用到的JDK,这个可以在菜单WindowèPreferencesèJavaèInstalledJREs里进行配置的,上面说过了,要注意根据你的WebLogic的版本选择其相应支持的JDK方可。

VMArauments(设置传递给JavaVM的参数,如最大与最小堆栈大小,以什么模式启动WebLogicServer,本例我们假设以产品模式启动)

JNILibraryPath(设置要加载JNI时的搜索路径)

RunMode(设置以产品模式还是开发模式进行启动WebLogicServer)



菜单Windows/ShowView/Other…

  可以看到WebLogic分类下面有WebLogicServers菜单项,选择并打开它。

  这样可以在这里进行启动、停止WebLogicServer等操作。



选中WebLogic下的Project节点,并进行如下参数的设置

  Projectaddedtotheendoftheclasspath,通过Add按钮,可以选择你所要加载的项目,这样所选中的项目里所有的类库量也会自动地加进来的,不过它的加载顺序是在Classpath的最后面。
启动WebLogic服务器

在打开的视图中,右键,选择Start就可以启动WebLogicServer了



  在控制台会有如下的启动信息显示:



  显示启动成功。

  在这里也可以进行增加其它WebLogicServer的配置,如下:



  修改WebLogicServer的配置



  删除WebLogicServer的配置



  也可以查看相应的帮助文档,如下:



  打开WebLogicPlugin的帮助文档进行查阅,可惜没有看到。

  停止WebLogic服务器

在打开的视图中,右键,选择Stop就可以停止WebLogicServer了



  在控制台会有如下的停止信息显示:



  部署、重新启动、停止应用程序

  部署应用:只能通过浏览器去部署新的应用,没有找到这里可以直接进行部署的地方。

  重新启动:假如我们通过浏览器或其它控制端部署了一个WebApplication上去了。

  这时,通过插件停止WebLogic,再启动它后,双击展现WebAppplicationModules,可以在下面看我们部署上去的应用了。不过,而慢进行停止再启动。

  可以直接通过插件提供的刷新功能就会把部署上去的模块展现出来,如下:



  这时,要重新启动应用程序的话,只要在应用名称上面右键,在弹出的菜单中选择Redeploy即可重新部署应用了,速度很快的。



  删除应用程序的话,只要在应用名称上面右键,在弹出的菜单中选择Undeploy即可删除应用了,模块名称立马消失,速度很快的,要重新部署又得通过浏览器或其它控制端来完成了。



  总结

  此插件的功能给予我们方便地集成Eclipse与WebLogic的开发使用,提高了效率。

  Bug一个,大家要注意。

  关闭Eclipse之后重新启动Eclipse后,这时要启动WebLogic会发现以下错误而启动不了,郁闷了吧:)

<Critical>
<Security>
<BEA-090402>
<Authenticationdenied:Bootidentitynotvalid;
   Theusernameand/orpasswordfromthebootidentityfile
   (boot.properties)isnotvalid.Thebootidentitymayhavebeenchanged
   sincethebootidentityfilewascreated.Pleaseeditandupdate
   thebootidentityfilewiththepropervaluesofusernameandpassword.
   Thefirsttimetheupdatedbootidentityfileisusedtostarttheserver,
   thesenewvaluesareencrypted.>****************************************************************************************************************TheWebLogicServerdidnotstartupproperly.Reason:weblogic.security.SecurityInitializationException:
Authenticationdenied:Bootidentitynotvalid;
Theusernameand/orpasswordfromthebootidentityfile(boot.properties)isnotvalid.
Thebootidentitymayhavebeenchangedsincethebootidentityfilewascreated.
Pleaseeditandupdatethebootidentity
filewiththepropervaluesofusernameandpassword.
Thefirsttimetheupdatedbootidentityfileisusedtostarttheserver,
thesenewvaluesareencrypted.****************************************************************************************************************


  不过解决的办法也简单,看到下图的信息了吧,这个插件在对用户进行存取的时候出了问题,导致错误的,你每次重新启动Eclipse后,要修改一下WebLogic的配置文件,把里面的用户名用密码再保存后才行的。



后记
  文章写完后,我又修复了上述的BUG,这里重点再阐述一下解决过程:解压、反编译、替换加密方法、编译、重打包、关闭Eclipse、覆盖、重启:)

1.WebLogicPlugin2.0.0的配置文件保存在
%ECLIPSE_HOME%/workspace/.metadata/.plugins/com.bea.weblogic.eclipse/目录下
dialog_settings.xml是保存配置对话框的大小之类的文件
servers.xml是保存服务器配置信息的文件

2.解压出weblogic-eclipse.jar里的所有文件

3.反编译com/bea/weblogic/eclipse/utils/XMLUtil.class得到XMLUtil.java
在里面增加两个函数



4.在publicIServerInstall[]loadServers(FileserversFile)函数里修改

cServerInstall.setUsername(CryptoUtil.getDefault().decrypt(newString(Base64Util.base64ToByteArray(getNodeValue(cElement))),id));

cServerInstall.setUsername(getFromBASE64(getNodeValue(cElement)));

修改
cServerInstall.setPassword(CryptoUtil.getDefault().decrypt(newString(Base64Util.base64ToByteArray(getNodeValue(cElement))),id));

cServerInstall.setPassword(getFromBASE64(getNodeValue(cElement)));

5.在publicvoidsaveServers(IServerInstallservers[],FileserversFile)函数里修改

org.w3c.dom.TextusernameText=doc.createTextNode(Base64Util.byteArrayToBase64(CryptoUtil.getDefault().encrypt(cServer.getUsername(),cServer.getId()).getBytes()));

org.w3c.dom.TextusernameText=doc.createTextNode(buildBASE64(cServer.getUsername()));

修改
org.w3c.dom.TextpasswordText=doc.createTextNode(Base64Util.byteArrayToBase64(CryptoUtil.getDefault().encrypt(cServer.getPassword(),cServer.getId()).getBytes()));

org.w3c.dom.TextpasswordText=doc.createTextNode(buildBASE64(cServer.getPassword()));



在这里我要补充一点,就是关于weblogic启动时会遇到的问题,在文中已经说过了,但是不是很详细,怕有的朋友没有注意到,所以再拿出来提一下,weblogic8.X版本都不支持jdk1.5,weblogic8.X版本只支持1.42,所以如果装了1.5的朋友也不要紧,因为在weblogic的文件夹下已经打包了一个JDK1.42版本,大家可以在配置的时候注意一下路径的选择问题.

还有一个问题就是关于上文中提到的weblogic配置时设置Server的名称的问题,如果你已经按照我之前发布的weblogic配置的那篇word文档配置过一个服务器的话,那么在eclipse中关于server名称的设置就要注意了,这个server名称与之前你配置的不要重复,否则是无法启动的,在eclipse中启动weblogic时会有这样的错误信息:

****************************************************************************************************************
TheWebLogicServerdidnotstartupproperly.
Exceptionraised:'weblogic.management.configuration.ConfigurationException:Unabletolocateservernamedhiphopintheconfigurationfileconfig.xml.Pleaseensuretheargument-Dweblogic.Name=<serverName>matchesaservernameinthatfile,forexample:<Server...Name="someName"/>.Asingleserverwasfoundnamedmyserver'
Reason:weblogic.management.configuration.ConfigurationException:Unabletolocateservernamedhiphopintheconfigurationfileconfig.xml.Pleaseensuretheargument-Dweblogic.Name=<serverName>matchesaservernameinthatfile,forexample:<Server...Name="someName"/>.Asingleserverwasfoundnamedmyserver
****************************************************************************************************************

编辑server,把server名称换一个就可以正常启动了,当然,这也是我在使用中犯的一个小小的错误,拿出来望大家引以为戒.

6.编译这个XMLUtil.java得到XMLUtil.class,把XMLUtil.class打回weblogic-eclipse.jar包里

7.关闭Eclipse

8.把weblogic-eclipse.jar覆盖掉原来插件目录里的文件

9.重新启动Eclipse

10.Enjoy...
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: