`
talin2010
  • 浏览: 518677 次
  • 性别: Icon_minigender_1
  • 来自: 河北
社区版块
存档分类
最新评论

WTP插件开发中的preset学习笔记(by quqi99)

阅读更多

WTP插件开发中的preset学习笔记(by quqi99)

作者:张华 发表于:2010-04-27

版权声明:可以任意转载,转载时请务必以超链接形式标明文章原始出处和作者信息及本版权声明


import java.util.HashSet;
import java.util.Map;
import java.util.Set;

import org.eclipse.core.runtime.CoreException;
import org.eclipse.wst.common.project.facet.core.IDynamicPreset;
import org.eclipse.wst.common.project.facet.core.IFacetedProjectWorkingCopy;
import org.eclipse.wst.common.project.facet.core.IPresetFactory;
import org.eclipse.wst.common.project.facet.core.IProjectFacet;
import org.eclipse.wst.common.project.facet.core.IProjectFacetVersion;
import org.eclipse.wst.common.project.facet.core.PresetDefinition;
import org.eclipse.wst.common.project.facet.core.ProjectFacetsManager;
import org.eclipse.wst.common.project.facet.core.runtime.IRuntime;
import org.eclipse.wst.common.project.facet.core.runtime.IRuntimeComponent;

/**
* WTP插件中的preset
* @version 0.10 2010-4-27
* @author Zhang Hua
*/
public class MyPresetFactory implements IPresetFactory {
/**
* <extension point="org.eclipse.wst.common.project.facet.core.presets">
* <static-preset id="my.preset.v8">
* <label>My preset</label>
* <facet id="my.facet" verstion="8"/>
* <facet id="jst.web" verstion="2.3"/>
* </static-preset>
* <dynamic-preset id="my.preset.v8">
* <factory class="test.MyPresetFactory"/>
* </dynamic-preset>
* </extension>
*/
public PresetDefinition createPreset(String presetId, Map<String, Object> context)
throws CoreException {
final IFacetedProjectWorkingCopy copy = (IFacetedProjectWorkingCopy)context.get(IDynamicPreset.CONTEXT_KEY_FACETED_PROJECT);
String facetRuntimeTypeID = null;
String facetRuntimeVersion = null;
IRuntime runtime = null;
Set<IRuntime> set = copy.getTargetableRuntimes();
if(set!=null && set.size()>0){
runtime = (IRuntime)set.toArray()[0];
if(runtime.getRuntimeComponents().size() > 0){
IRuntimeComponent runtimeComponent = runtime.getRuntimeComponents().get(0);
facetRuntimeTypeID = runtimeComponent.getRuntimeComponentType().getId();
facetRuntimeVersion = runtimeComponent.getRuntimeComponentVersion().getVersionString();
}
}
if("my.runtime.appserv".equals(facetRuntimeTypeID) && "8.0".equals(facetRuntimeVersion)){
IProjectFacet myfacet = ProjectFacetsManager.getProjectFacet("my.facet");
IProjectFacetVersion facetVer = myfacet.getDefaultVersion();
Set<IProjectFacetVersion> facets = new HashSet<IProjectFacetVersion>();
facets.addAll(copy.getProjectFacets());
facets.add(facetVer);
copy.setProjectFacets(facets);
return new PresetDefinition("My App preset v8.0","My App preset v8.0",facets);
}
return null;
}

}

分享到:
评论

相关推荐

    使用Eclipse及WTP插件开发JSP应用程序

    在本文档中,我们详细介绍了如何在Eclipse环境下安装并配置WTP插件来支持JSP应用程序的开发。以下是安装过程的具体步骤: 1. **安装JDK**: - 首先,你需要从Sun官方网站(现在为Oracle)下载最新版本的JDK(Java ...

    Eclipse 3.3配置WTP插件

    通过上述步骤,我们可以成功地在Eclipse 3.3环境中配置WTP插件,从而为Java Web应用程序的开发提供强有力的支持。配置过程中需要注意细节,确保所有依赖插件均被正确安装,这样才能保证开发工作的顺利进行。此外,还...

    WTP1.5.3 开发ejb步骤

    在WTP1.5.3版本中,开发Enterprise JavaBeans (EJBs) 需要一系列步骤,这些步骤涉及环境配置、项目创建、EJB编写和部署。以下是详细的过程: 1. **环境准备**:首先,确保已安装Eclipse IDE,并通过Eclipse ...

    基于WTP开发自定义的JSP编辑器

    #### 一、整体概览:WTP及其在插件开发中的地位 Web Tools Platform(WTP)是Eclipse平台上的一个重要组件,专为Java EE和Web应用开发而设计。它不仅提供了强大的Web开发功能,如动态Web项目的支持、Web服务开发...

    Eclipse WTP Web应用开发

    Eclipse WTP Web应用开发,(曼德尔),姚军等译。

    eclipse WTP 1.2 插件 支持 jquery 1.6

    jQueryWTP一个让Eclipse WTP支持jQuery Javascript代码自动补全功能的Eclipse插件。 支持jquery 1.6

    plugin插件开发

    插件开发的实例,我们将使用 Java 开发环境开发插件,并在下一个例子中介绍如何直接使用插件开发环境开发插件。Eclipse 的主要插件有 JDT、WTP、DTP、EMF、JST、Mylyn、PDE 等。 下面我们以“Hello,World”为例,...

    myeclipse的jquery插件_jqueryWTP安装

    JqueryWTP是一款用于增强MyEclipse及Eclipse IDE中JavaScript开发能力的插件,它能够为开发者提供更为强大的jQuery代码提示与支持功能。通过安装此插件,用户可以在编辑HTML或JavaScript文件时获得更丰富的jQuery...

    jQueryWTP插件及其安装步骤

    为了在Eclipse这样的集成开发环境中更好地支持jQuery的开发,开发人员可以使用jQueryWTP(Web工具平台)插件。jQueryWTP提供了代码补全、语法高亮、错误检测等功能,极大地提高了开发效率。 ### 一、jQueryWTP插件...

    wtp.rar_web project_wtp_wtp系统_项目管理_项目管理 java

    Web Top Project(WTP)是一个基于Java开发的开源项目管理系统,专为项目管理和协作而设计。这个系统,正如其名称所示,提供了Web界面以便用户轻松地进行项目管理和任务分配。WTP旨在帮助团队成员跟踪项目进度,管理...

    wtp1.5.x +eclipse3.2.x的中文语言包

    而WTP是Eclipse的一个扩展插件,专注于Web应用的开发,包括支持动态Web项目、Java服务器页面(JSP)、Servlet、JavaServer Faces (JSF)等技术。 中文语言包通常包含以下组件: 1. **用户界面翻译**:将Eclipse和WTP的...

    Eclipse核心编程:插件、界面与Web开发

    此外,Eclipse IDE for Enterprise Java Developers 是一个包含许多用于Java企业级开发插件的特定发行版。 在了解Eclipse Web开发的过程中,学习如何配置和使用不同的插件是至关重要的。开发者可以通过Eclipse ...

    eclipse,配置与安装web插件,以后不用myeclipse了

    EMF(Eclipse Modeling Framework)插件是 Eclipse 中的一个重要插件,提供了模型驱动的开发环境。安装 EMF 插件的步骤如下: 1. 在 Eclipse 的主菜单,点击 help,选择 Install New Software。 2. 在打开的 ...

    WTP.zip_wtp_zip

    【WTP.zip_wtp_zip】是一个关于Web Tools Platform(WTP)的压缩文件,其中包含了一个名为"WTP.ppt...通过学习WTP,Web开发者可以提高工作效率,减少手动配置的工作量,专注于他们的核心业务——开发高质量的Web应用。

    wtp-jem-sdk-R-1.5.4-200705021353.zip

    WTP-JEM-SDK 可能是 WTP 中 Java Enterprise Manager 的软件开发工具包,用于增强 MyEclipse 对 Java EE 应用和 Web 服务的支持。 从压缩包子文件的文件名称 "eclipse" 来看,这表明包内的内容可能是基于 Eclipse ...

    使用WTP来构建你的WEB应用程序

    WTP支持多种Web技术,包括JavaServer Pages (JSP)、Servlets、Java EE、WebSocket等,让开发者能够在一个统一的集成开发环境中(IDE)完成整个Web应用的生命周期。 **1. 安装和配置WTP** 在开始使用WTP之前,你...

    wtp-jsdt-R-3.0

    "WTP-jsdt-R-3.0" 是一个专门为JavaScript开发设计的插件,它能够无缝地集成到Eclipse集成开发环境中。这个插件极大地提升了Eclipse对于JavaScript项目的开发、调试和管理能力,使得开发者能够在熟悉的Eclipse环境下...

    eclipse wtp plugs 3

    eclipse wtp-R-3.0.5-20090521045405 请将文件名改为 wtp-R-3.03.fss 因为文件太大,Eclipse WTP Plugs 使用文件分割工具处理后上传的,先说明如下: 1. eclipse wtp plugs 1 ~ eclipse wtp plugs 4 是一份完整的...

    ZK-AJAX学习笔记

    - 安装Eclipse IDE,且集成WTP(Web Tools Platform)插件,用于支持Web应用开发。作者使用的是wtp-all-in-one-sdk-R-1.5.0-200606281455-win32.zip版本,包含Eclipse 3.2。 - 配置Eclipse与Tomcat的连接,以便在...

    eclipse wtp plugs 2

    eclipse wtp-R-3.0.5-20090521045405 请将文件名改为 wtp-R-3.02.fss 因为文件太大,Eclipse WTP Plugs 使用文件分割工具处理后上传的,先说明如下: 1. eclipse wtp plugs 1 ~ eclipse wtp plugs 4 是一份完整的...

Global site tag (gtag.js) - Google Analytics