1. MyEclipse中的服务连接器
MyEclipse企业版平台为开发者提供seamlessly部署、执行并在几十个不同应用程序服务器中测试MyEclipse JEE应用程序的能力。其中这些应用程序服务器包括:
- Geronimo
- Glassfish
- JBoss/Wildfly
- Jetty
- JOnAS
- JRun
- Liberty Profile
- Oracle
- Orion
- Resin
- SpringSource
- Sun
- Tomcat
- TomEE
- WebLogic
- WebSphere
虽然MyEclipse中提供了许多现成的服务连接器,但是您还必须下载并安装第三方服务连接器来完成您的项目工作,就如同它包含在MyEclipse IDE中一样。
为了快速部署和测试,MyEclipse中包括了一个特殊安装的Tomcat 7和MyEclipse Derby数据库来作为集成沙盒的一部分。
2. 服务连接器如何工作
MyEclipse和 一个本地应用程序服务器实例的交互是通过使用一个应用服务连接器的Web Tools Project (WTP) 框架来实现的。MyEclipse在其工作台工具栏和上下文菜单中提供了一个服务器管理的中央服务器操作和集成控件,允许您:
- 启动一个应用服务器的运行、调试或模式分析
- 通过监控应用程序服务器运行的标准输出日志消息,将其重定向到MyEclipse的控制台视图
- 通过您的自定义测试客户端和Web浏览器来测试部署的应用程序
- 执行部署应用程序的hot-swap Java调试代码
- 在JSR-045-compliant应用程序服务器(例如Tomcat5.x或更高版本停止执行应用程序服务器)中执行JSP源代码级调试
- 发布服务器,并同步部署所有项目到服务器
服务器视图中显示部署的应用程序
当您指示连接器启动其应用程序服务器时,连接器使用服务器配置信息来创建启动配置,然后在应用程序服务器执行时使用该连接器来启动一个外部的JVM 。下图描绘了连接器和应用服务器之间的交互。
注意:连接器能够启动并只和安装在本地访问的文件系统进行交互。在MyEclipse中给WebSphere服务器提供WebSphere支持。
Connector-server交互图
根据您的需求可以配置尽可能多的被支持的服务器实例;然而典型环境仅需要一小部分的连接器被激活。如果需要测试各种配置,您可以配置多个服务器实例。
3. 连接器配置
配置连接器从服务器视图或运行的服务器窗口中进入,同时会使用新的服务器向导。配置的过程是直线前进的,但您必须熟悉服务器的安装和启动的详细信息。
注意:在配置过程中的一个常见的错误是当启动一个完整的JDK JVM时,服务器将启动Java JRE来代替。问题是,JEE应用服务器需要访问JDK编译器来支持动态处理的JSP和EJB代理。 JDK包含所需的编译器;而JRE则不包含。
新服务器向导
对MyEclipse应用服务器支持的要求是:
- MyEclipse应用服务连接器需要直接访问应用服务器的安装文件夹。因此,应用服务器必须安装在MyEclipse操作本机的文件系统上。
- 为了支持JSP源代码级调试,应用服务器必须支持JSR-045规范的非Java源代码的调试。
- Hot-swap调试需要启动具有JDK 1.4.x或更高版本的应用程序服务器的虚拟机。如果您正在使用具有JDK 1.3调试器的旧的应用程序服务器,断点是支持的,但不可能在MyEclipse工作台中修改hot-swapping代码,因为1.3 JVMs不支持JPDA规范。
- 应用程序的服务连接器应配置一个完整的JDK环境(包含javac的)来启动应用程序服务器,不要使用JRE。整个JDK都是必需的,因为它提供了一个Java编译器来满足所有应用服务器编译JSP页面来动态地处理和部署EJB的需求。您平台的一个完整JDK可以从Sun Microsystems的http://java.sun.com/j2se/downloads/index.html页面下载。
只有MyEclipse JEE项目类型(企业,EJB,Web)可以部署MyEclipse部署服务。 MyEclipse不支持直接部署基本的Java项目。更多有关基于Java项目的MyEclipse Web项目及其部署的相关信息请参阅Web
Project Tutorial。
3.1 自定义部署服务器
如果您的应用程序服务器不是受MyEclipse控制(即你启动和停止服务器使用外部工具或服务器的快捷方式),那么您部署hot sync资源时可使用自定义部署服务器配置。
在定义一个新的服务器窗口时,展开Basic,选择自定义部署服务器。您可以像其他连接器一样设置,但除此之外,您必须指定MyEclipse资源的部署位置。
配置自定义部署服务器