因近期正在研究关于weblogic部署开发,所以把相关知识做以总结,为了在日后不需要再到处找资料,也为了方便大家,所以把学习中遇到的问题和解决方法发到这里,希望能够共同学习!首先当然还是关于weblogic的下载地址了,因为在BEA网站上的下载地址已经做了相关处理,所以无法使用迅雷等下载工具,我也使用了遨游的Viewpage功能,也无法提取到下载地址,这给下载的朋友造成了很大的不便,但经过我在网上搜寻还是找到了某个高人发布的各版本的WEBLOGIC的下载地址,如下:
platform & Server
8.X
英文版
http://download2.bea.com/pub/platform/81/platform815_win32.exe
http://download2.bea.com/pub/platform/81/platform815_linux32.bin (linux)
中文版
http://download2.bea.com/pub/platform/81/platform812_zh_CN_win32.exe
http://download2.bea.com/pub/platform/81/platform814_zh_CN_win32.exe
http://download2.bea.com/pub/platform/81/platform815_zh_CN_win32.exe
http://download2.bea.com/pub/platform/81/platform815_zh_CN_hpux32.bin (hp_unix)
9.X
英文版
http://download2.bea.com/pub/platform/90/server900_win32.exe
http://download2.bea.com/pub/platform/90/server900_linux32.bin
http://download2.bea.com/pub/platform/90/server900_hpux32.bin (hpux)
http://download2.bea.com/pub/platform/90/server900_solaris32.bin (solaris)
http://download2.bea.com/pub/platform/91/server910_win32.exe
http://download2.bea.com/pub/platform/91/server910_linux32.bin (linux)
http://download2.bea.com/pub/platform/91/server910_hpux32.bin (hpux)
http://download2.bea.com/pub/platform/91/server910_solaris32.bin (solaris)
中文版
http://download2.bea.com/pub/platform/90/server900_zh_CN_win32.exe
http://download2.bea.com/pub/platform/90/server900_zh_CN_linux32.bin (hp_uxix)
http://download2.bea.com/pub/platform/90/server900_zh_CN_hpux32.bin (hp_uxix)
http://download2.bea.com/pub/platform/90/server900_zh_CN_solaris32.bin (Solaris(8/9/10)版)
http://download2.bea.com/pub/platform/90/server910_zh_CN_win32.exe
http://download2.bea.com/pub/platform/90/server910_zh_CN_linux32.bin (linux32)
http://download2.bea.com/pub/platform/90/server910_zh_CN_hpux32.bin (hp_uxix)
http://download2.bea.com/pub/platform/90/server910_zh_CN_solaris32.bin (Solaris(8/9/10)版)
下载了weblogic之后当然还是要配置一下以便使用,关于配置方法我已经发到我的MOFILE的网络硬盘里了,提取码是:7847812956339682,MOFILE的地址是:http://www.mofile.com/cn/index_storage.jsp,在左上角输入提取码就可以下载了,如果还不会提取可以给我留言,使用这个方法是因为我总是无法将文件上传到这个博客网站上,所以大家暂时辛苦一下,过一阵会解决的.配置方法是写在WORD文档里的,里边有截图,所以大家尽量使用WORD来阅读!
回到整体,当你的weblogic已经配置完成,并能正常启动后,可能会面临一个问题,就是将weblogic与编辑器合并使用.又一个问题出现了,那就是关于编辑器的问题,我现在工作所使用的语言还是以JAVA为主,关于JAVA编辑器又有很多,例如jbuilder,eclipse等等,有人会说,自己用那个顺手就用哪个呗??错,这只能证明你没有进入公司实际工作过,我说的这两个编辑器就是很有代表性的,jbuilder是收费的软件,而eclipse却是免费的,并且开源(所有代码公开),虽然我使用jbuilder要比用eclipse更加熟练和顺手,但是公司却不会为这么一个编辑器掏腰包的,虽然现在很多软件在中国都能成功破解,jbuilder也不例外,但公司也不会使用,因为破解的东西都不安全,这就是公司所想的,因为我做的项目目前都是日文项目,对于日本人而言,一种稳妥的开发方式更是最重要的,所以对于客户,或者公司而言,破解的jbuilder就是一个会瞬间烧掉钱的定时炸弹,而eclipse就是公司的最好选择,就因为他免费,并且功能也是异常强大,现在已经形成了这种趋势.在介绍下文之前还有一个问题需要提醒正在学习中的朋友,那就是关于软件版本的问题,如果你是做JAVA的,很高兴,我们有共同语言了,如果是做其他语言项目的,原理也是一样,我就拿JAVA开发中所涉及到的软件版本问题进行说明.
在JAVA开发的学习过程,或者工作过程中你可能会遇到各种编辑器或者服务器软件,这些都是有版本的,eclipse,tomcat,weblogic,jdk,struts,hibernate等等,有些人会比较喜欢追求新版本,我以前就是这样,在我学习的过程中就遇到了这个问题,那个时候JDK刚从1.4升到1.5,我就迫不及待的下载了1.5版本的JDK,虽然使用上没有太大区别,但是我很喜欢用这样的新版本,tomcat也是如此,tomcat的5.X版本要比老版本启动更迅速,并且启动很方便,使用过的朋友都应该有这样的经验,但是却有一个问题,那就是,任何一家公司都不会最先使用新版本的东西,因为怕有BUG,当然,客户也是知道这一点的,客户发过来的项目没有一个是使用新版本来开发,所以为了将来在公司中能够少碰钉子,建议大家还是着手于现在流行的版本来使用.不多说了,下面就来介绍关于weblogic与eclipse的配置与使用,关于文章中提到的weblogic的插件问题,我也发到了我的MOFILE上,提取码:5235201253236630,当然,插件也是有版本的,我用的就是2.0,关于使用中的BUG在下文中有相关介绍和解决方法,下文为转载文章:
Eclipse是目前非常流行的开发平台,开放扩展的架构让很多程序员找到了自己个性化的工作环境。
问题提出:
WebLogic目前是使用比较多的应用服务器之一,Eclipse是流行的IDE,如何集成起来开发使用呢?
解决方法:
采用BEA提供的WebLogic Plugin来进行集成开发。
安装
JDK:1.4.2或1.5.0 从http://java.sun.com上去下载安装,如果是WebLogic 8.X.X系列的版本,应当选用JDK 1.4.2的版本。
Eclipse:3.1.2 从http://www.eclipse.org 上去下载解压
WebLogic Plugin 从https://eclipse-plugin.projects.dev2dev.bea.com/下载
技巧 Eclipse使用技巧之插件管理
提示:新下载的插件PlugIn一定不要都放在原始的Eclipse目录下去,一大堆,累死你。
配置WebLogic Plugin
可以看到WebLogic分类下面有WebLogic Servers菜单项,选择并打开它。
这样可以在这里进行启动、停止WebLogic Server等操作。
Project added to the end of the classpath,通过Add按钮,可以选择你所要加载的项目,这样所选中的项目里所有的类库量也会自动地加进来的,不过它的加载顺序是在Classpath的最后面。
启动WebLogic服务器
在控制台会有如下的启动信息显示:
显示启动成功。
在这里也可以进行增加其它WebLogic Server的配置,如下:
修改WebLogic Server的配置
删除WebLogic Server的配置
也可以查看相应的帮助文档,如下:
打开WebLogic Plugin的帮助文档进行查阅,可惜没有看到。
停止WebLogic服务器
在控制台会有如下的停止信息显示:
部署、重新启动、停止应用程序
部署应用:只能通过浏览器去部署新的应用,没有找到这里可以直接进行部署的地方。
重新启动:假如我们通过浏览器或其它控制端部署了一个Web Application上去了。
这时,通过插件停止WebLogic,再启动它后,双击展现Web Appplication Modules,可以在下面看我们部署上去的应用了。不过,而慢进行停止再启动。
可以直接通过插件提供的刷新功能就会把部署上去的模块展现出来,如下:
这时,要重新启动应用程序的话,只要在应用名称上面右键,在弹出的菜单中选择Redeploy即可重新部署应用了,速度很快的。
删除应用程序的话,只要在应用名称上面右键,在弹出的菜单中选择Undeploy即可删除应用了,模块名称立马消失,速度很快的,要重新部署又得通过浏览器或其它控制端来完成了。
总结
此插件的功能给予我们方便地集成Eclipse与WebLogic的开发使用,提高了效率。
Bug一个,大家要注意。
关闭Eclipse之后重新启动Eclipse后,这时要启动WebLogic会发现以下错误而启动不了,郁闷了吧:)
<Critical>
<Security>
<BEA-090402>
<Authentication denied: Boot identity not valid;
The user name and/or password from the boot identity file
(boot.properties) is not valid. The boot identity may have been changed
since the boot identity file was created. Please edit and update
the boot identity file with the proper values of username and password.
The first time the updated boot identity file is used to start the server,
these new values are encrypted.> **************************************************************************************************************** The WebLogic Server did not start up properly. Reason: weblogic.security.SecurityInitializationException:
Authentication denied: Boot identity not valid;
The user name and/or password from the boot identity file (boot.properties) is not valid.
The boot identity may have been changed since the boot identity file was created.
Please edit and update the boot identity
file with the proper values of username and password.
The first time the updated boot identity file is used to start the server,
these new values are encrypted. ****************************************************************************************************************
不过解决的办法也简单,看到下图的信息了吧,这个插件在对用户进行存取的时候出了问题,导致错误的,你每次重新启动Eclipse后,要修改一下WebLogic的配置文件,把里面的用户名用密码再保存后才行的。
后记
文章写完后,我又修复了上述的BUG,这里重点再阐述一下解决过程:解压、反编译、替换加密方法、编译、重打包、关闭Eclipse、覆盖、重启:)
/*** * 将 source 进行 BASE64 编码 * * @param source * @return */ public static String buildBASE64(String source) { if(source == null) { return null; } return (new .misc.BASE64Encoder()).encode(source.getBytes()); } /*** * 将 BASE64 编码的字符串 base65code 进行解码 * * @param base65code * @return */ public static String getFromBASE64(String base65code) { if(base65code == null) { return null; } BASE64Decoder base64decoder = new BASE64Decoder(); try { byte[] b = base64decoder.decodeBuffer(base65code); return new String(b); } catch(Exception e) { e.printStackTrace(); return null; } }在public IServerInstall[] loadServers(File serversFile)函数里修改
cServerInstall.setUsername(CryptoUtil.getDefault().decrypt(new String(Base64Util.base64ToByteArray(getNodeValue(cElement))),id)); 为 cServerInstall.setUsername(getFromBASE64(getNodeValue(cElement))); 修改 cServerInstall.setPassword(CryptoUtil.getDefault().decrypt(new String(Base64Util.base64ToByteArray(getNodeValue(cElement))),id)); 为 cServerInstall.setPassword(getFromBASE64(getNodeValue(cElement)));在public void saveServers(IServerInstall servers[],File serversFile)函数里修改
org..dom.Text usernameText = doc.createTextNode(Base64Util.byteArrayToBase64(CryptoUtil.getDefault().encrypt(cServer.getUsername(),cServer.getId()).getBytes())); 为 org.w3c.dom.Text usernameText = doc.createTextNode(buildBASE64(cServer.getUsername())); 修改 org.w3c.dom.Text passwordText = doc.createTextNode(Base64Util.byteArrayToBase64(CryptoUtil.getDefault().encrypt(cServer.getPassword(),cServer.getId()).getBytes())); 为 org.w3c.dom.Text passwordText = doc.createTextNode(buildBASE64(cServer.getPassword()));编译这个XMLUtil.java得到XMLUtil.class,把XMLUtil.class打回weblogic-eclipse.jar包里 关闭Eclipse 把 weblogic-eclipse.jar 覆盖掉原来插件目录里的文件 重新启动Eclipse Enjoy...
在这里我要补充一点,就是关于weblogic启动时会遇到的问题,在文中已经说过了,但是不是很详细,怕有的朋友没有注意到,所以再拿出来提一下,weblogic8.X版本都不支持jdk1.5,weblogic8.X版本只支持1.42,所以如果装了1.5的朋友也不要紧,因为在weblogic的文件夹下已经打包了一个JDK1.42版本,大家可以在配置的时候注意一下路径的选择问题.
还有一个问题就是关于上文中提到的weblogic配置时设置Server 的名称的问题,如果你已经按照我之前发布的weblogic配置的那篇word文档配置过一个服务器的话,那么在eclipse中关于server名称的设置就要注意了,这个server名称与之前你配置的不要重复,否则是无法启动的,在eclipse中启动weblogic时会有这样的错误信息:
****************************************************************************************************************
The WebLogic Server did not start up properly.
Exception raised: 'weblogic.management.configuration.ConfigurationException: Unable to locate server named hiphop in the configuration file config.xml. Please ensure the argument -Dweblogic.Name=
Reason: weblogic.management.configuration.ConfigurationException: Unable to locate server named hiphop in the configuration file config.xml. Please ensure the argument -Dweblogic.Name=
****************************************************************************************************************
编辑server,把server名称换一个就可以正常启动了,当然,这也是我在使用中犯的一个小小的错误,拿出来望大家引以为戒.关于weblogic的配置就说这些,如果有高人也在用java的,不管是在工作,还是在学习,希望能一起讨论.