1.环境 sun jdk1.5.0,MyEclipse 6.5 GA
2.介绍:MyEclipse配置Websphere6的时候需要做比配置其它server更多的工作;
Websphere6必须和MyEclipse安装在一个机器上;
Websphere6必须使用IBM的jdk,位置在<was-install-dir>/java;
(一般在C:\Program Files\IBM\WebSphere\AppServer\java下)
只有MyEclipse Enterprise J2EE project可以部署在Websphere6上。
3.Websphere6安装和配置
第一步 开始->程序->IBM Websphere->概要文件管理工具
第二步 点击"下一步",默认为"应用程序服务器",点击"下一步"
第三步 点选"典型概要文件创建"(profile)或"高级概要文件创建";
我这里选择"高级概要文件创建";
典型创建将"节点Node","单元Cell"都设置为默认,且设置成为windows服务.
高级创建将由用户自己定义"Node","Cell"名,同时可取消作为windows服务.
第四步 选择要部署的到正在创建的WebSphere Application Server 环境的应用程序
默认选择"下一步".
第五步 输入概要表名称(例如 BBS);
第六步 选择概要表路径 E:\del\WebSphere\AppServer\profiles\BBS;
第七步 输入结点名:BBSNode,主机名:127.0.0.1;
设置“管理安全性”
第八步 输入端口号,默认端口即可
(点击"缺省设置"按钮,否则会将默认的9080设置为9081,这样后面访问程序时,端口号就不是原来默认的了,我第一次装的时候用9080总访问不了,就是没设置缺省);
第九步 不选做为windows服务 ;(否则每次启机器都会启动,且可能用启动失败)
第十步 完成;
第十一步 启动服务器,打开管理控制台;
第十二步 点击服务器-应用服务器,然后点击服务器名称;
第十三步 查看标签“配置”->故障诊断->记录和跟踪;
第十四步 点击“JVM日志”->配置标签,修改“文件名”为console,点击确定;
(不要疑惑,将${System_....\SystemOut.log} 这个系统原本的文件名全部去掉,改成console,System.out 和 System.err 这两栏中的文件名都要改成console,若不做该设置则在myeclipse中用Debug启动websphere时将什么都不显示)
第十五步 提示已更改了您的本地配置。单击“保存”应用对主配置的更改,点击“保存”,下一页再点“保存”;
第十六步 退出管理控制台,停止服务器;
4.MyEclipse配置
第一步 配置 Window > Preferences > MyEclipse > Application Servers > WebSphere 6.1;
第二步 找到Jdk选项,点击"Add",出现Add JVM 对话框,配置JDK JRE home directory 为 E:\del\WebSphere\AppServer\java,WebSphere只能运行在IBM JDK上;
补充 :Cell name为<WAS-HOME>/profiles/<profileName>/installedApps/*cell
第三步 创建 Web project 例如“BBSTestWeb”,再创建 Enterprise Application project 例如“BBSTest”;
(其中BBSTestWeb是存放项目源代码的,BBSTest是辅助项目用于打包发布的,在New Enterprise Application project 时,填入项目名,然后在下方的文本框中,勾选"Define Web Project Modules,因为目前项目还未用到ejb, 点击"下一步",在下面的"Web Project Modules"中,勾选"SophiaTestWeb",直接点击"完成")
会生成如下的配置文件
<application id="Application_1199258677375" version="1.4" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/application_1_4.xsd" >
<display-name> BBS</display-name>
<module id="myeclipse.1188813827936" >
<web>
<web-uri>BBSTestWeb.war</web-uri>
<context-root> /BBSTestWeb</context-root>
</web>
</module>
</application>
第四步 部署 必须点击菜单条上的部署的快捷方式 Deploy MyEclipse J2EE Project to Server;
(这里用的是以前的项目)
第五步 部署 BBS2007,选择第二项“Packaged Archive” 部署-完成;
(这时将会在E:\del\WebSphere\AppServer\profiles\BBS\installableApps目录下生成一个BBS2007.war文件)
第六步 在MyEclipse中启动 Websphere6,等待出现“为电子商务开放服务器 server1”,即启动完成;
(wait for the Server server1 open for e-business message as before.)
第七步 打开Websphere6的管理控制台 应用程序->安装新的应用程序,选择
E:\del\WebSphere\AppServer\profiles\BBS\installableApps\BBS2007.war,点击下一步;
(可填入上下文根,例如:"/SophiaTestWeb", 上下文根即访问web时的URL中port后的路径
如:"http://127.0.0.1:9081/BBS/login.jsp" 中:"/BBS"就是上下文根)
注意:其中安装的应用程序名一定要是BBS2007_war, 即与打包发布的辅助项目名称相同, 一般默认即可
第八步 选择“启用类重新装入",点击下一步;
第九步 选中 “BBS2007.war”,点击下一步 ;
第十步 选中 “BBS2007.war”,点击下一步 ;
第十一步 提示“应用程序 BBS2007_war 安装成功。”后,点击 “保存到主配置”,最后启动该应用程序;
第十二步 删除以前部署的包,重新部署 BBS2007,选择第一项“Exploded Archive”,下面文本框中勾择“Delete remote resource before deployment” 复选框,部署-完成;
第十三步 启用部署好的项目,选中“BBS2007_war”,选择“启用”
最终访问http://127.0.0.1:9081/BBS/article.jsp 出现错误
解决:
1、找到 E:\del\WebSphere\AppServer\profiles\BBS\config\cells\0158b9e7271b4d9Node02Cell\applications\BBS2007_war.ear\deployments\BBS2007_war\BBS2007.war\WEB-INF\ibm-web-ext.xmi
在最后面的 </webappext:WebAppExtension> 前添加下面一行:
<jspAttributes xmi:id="JSPAttribute_113" name="jdkSourceLevel" value="15"/>
2、找到E:\del\WebSphere\AppServer\profiles\BBS\installedApps\0158b9e7271b4d9Node02Cell\BBS2007_war.ear\BBS2007.war\WEB-INF\ibm-web-ext.xmi
在最后面的 </webappext:WebAppExtension> 前添加下面一行:
<jspAttributes xmi:id="JSPAttribute_113" name="jdkSourceLevel" value="15"/>
1和2的代码相同,如下:
---------------------------------------------------------------------------------------------------------------------------
<?xml version="1.0" encoding="UTF-8"?>
<com.ibm.ejs.models.base.extensions.webappext:WebAppExtension xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:com.ibm.ejs.models.base.extensions.webappext="webappext.xmi" xmi:id="WebAppExtension_1240980645713">
<webApp href="WEB-INF/web.xml#WebApp_1240980645693"/>
<jspAttributes xmi:id="JSPAttribute_1240980645713" name="reloadEnabled" value="true"/>
<jspAttributes xmi:id="JSPAttribute_1240980645714" name="reloadInterval" value="10"/>
<jspAttributes xmi:id="JSPAttribute_113" name="jdkSourceLevel" value="15"/>
</com.ibm.ejs.models.base.extensions.webappext:WebAppExtension>
---------------------------------------------------------------------------------------------------------------------------
3、同时删除 jsp 已经编译过的 class 文件
E:\del\WebSphere\AppServer\profiles\BBS\temp\BBSNode\server1\BBS2007_war\BBS2007.war\*.class
详细说明参看:《让 WAS V6.1 的 JSP 编译器用 JDK5.0 》
最终访问http://127.0.0.1:9081/BBS/article.jsp 成功显示页面