`
dengyin2000
  • 浏览: 1228485 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

让你用seam new-project创建的项目也能用上JBossTools的功能。

    博客分类:
  • Seam
阅读更多
我们可以用jbosstools直接创建Seam的项目, 但是我试了创建war项目还好,创建ear项目的话, 创建出来的都是不能编译的, 而且发布到Jboss deploy目录也是不合法的ear布局。 这些问题虽然可以通过手工修改来解决。但是我觉得还是用seam new-project创建出来的项目结构好很多,而且有很好的ant脚本。可以很方便的执行各种任务,而且我看到seam论坛上有人就说用jbosstools创建的seam的ear项目其实有4个项目(大家可以试试)。 他更喜欢seam new-project创建出来的一种目录的形式。就只有一个目录,用svn也更方便。

Seam2.0.1, JbossTools2.0.0GA(现在已经出了2.0.1GA,请看我在javaeye上发的新闻http://www.iteye.com/news/1554)。

安装好JbossTools后, 你需要在eclipse中设置你的Seam的home。



用seam创建你的项目。请看。 http://docs.jboss.com/seam/2.0.1.GA/reference/en/html/gettingstarted.html#d0e2146

创建玩项目后用eclipse把刚创建的项目导入到eclipse中。File->Import->General->Existed projects into Workspace. 导入后你可能会发现有编译错误。 这个是因为eclipse把这个项目的java compiler设到了1.4. 我们把这个改成5.0就行了。



Jbosstools最好的一项功能是它能自动的识别出项目中所有的component。这个在写xhtml非常方便。而且还能在xhtml中跳转到java code。 更多的jbosstools的功能请看。http://in.relation.to/Bloggers/JBossToolsScreenshots

我们在eclipse中打开Seam Component, Window->Show View->Other->Seam->Seam Component.

我们发现我们刚刚导入的sample项目找不到任何的compoent。Order是我用Jbosstools创建的一个war seam项目。


OK,打开你的.project文件,加入以下的代码。 (不要告诉我你不知道.project在哪里,是干什么用的。)

		<buildCommand>
			<name>org.jboss.tools.common.verification.verifybuilder</name>
			<arguments>
			</arguments>
		</buildCommand>
		<buildCommand>
			<name>org.jboss.tools.seam.core.seambuilder</name>
			<arguments>
			</arguments>
		</buildCommand>


加入之后的.project应该是这样的。

<?xml version="1.0" encoding="UTF-8"?>
<projectDescription>
	<name>sample</name>
	<comment></comment>
	<projects>
	</projects>
	<buildSpec>
		<buildCommand>
			<name>org.eclipse.jdt.core.javabuilder</name>
			<arguments>
			</arguments>
		</buildCommand>
		<buildCommand>
			<name>org.jboss.tools.common.verification.verifybuilder</name>
			<arguments>
			</arguments>
		</buildCommand>
		<buildCommand>
			<name>org.jboss.tools.seam.core.seambuilder</name>
			<arguments>
			</arguments>
		</buildCommand>		
		<buildCommand>
			<name>org.eclipse.ui.externaltools.ExternalToolBuilder</name>
			<triggers>auto,full,incremental,</triggers>
			<arguments>
				<dictionary>
					<key>LaunchConfigHandle</key>
					<value>&lt;project&gt;/explode.launch</value>
				</dictionary>
			</arguments>
		</buildCommand>
	</buildSpec>
	<natures>
		<nature>org.eclipse.jdt.core.javanature</nature>
		<nature>org.hibernate.eclipse.console.hibernateNature</nature>
		<nature>org.jboss.tools.seam.core.seamnature</nature>
	</natures>
</projectDescription>


OK, 再看下Seam Component, 现在已经可以找到所有的seam component了。



随便写个seam compoenent。
import org.jboss.seam.annotations.Name;

@Name("testELExpression")
public class TestElExpression {
	public String getName() {
		return "deng.yin@gmail.com";
	}
	
	public void doListener() {
		
	}
}


已经有提示了。








分享到:
评论
15 楼 wetouns 2008-05-28  
这是WTP的一个BUG,如果eclipse使用fall2版本,jboss tools使用2.0.1GA,SEAM使用2.0.1GA版本,那么生成出来的项目就可以正常运行,编译也正常了.这个编译错误的问题是在eclipse的winter版本上的,如果你不想使用前一个版本的eclipse那么新建好工程之后你也可以把application.xml里的那些moudal删掉就可以了
14 楼 fire01312 2008-05-18  
jboss tools 创建的 ear工程 连 seam.jar 都没有部署到ear目录中去 ,每次都我都手动复制, 前提:applicat.xml中的modul 我是配置好了的
13 楼 hantsy 2008-04-30  
seam 官方包本来就加入到了jboss的maven 库,但它缺少一个startkit的artifact,需要自己去组织pom。。。
12 楼 phoenixup 2008-03-24  
dengyin2000 写道
那我用jbosstools建的ear工程怎么有错误? 虽说jbosstools里面的也是通过Seamgen来实现见action, entity之类的。 但是我感觉用seam new-project创建出来的seam project才是native的。 而且里面的ant脚本比较方便。 用我上面的方法可以让jboss tools支持你用seam new-project建的项目。 要注意的是你只要用用jbosstools建立好server,不需要把项目加到server中(你也加不了,因为不是web项目。只是个java项目)。 当你修改了文件后,会自动运行explode ant脚本。 把你改过的文件copy到jboss deploy中。



Seam包提供的gen工具与JBoss Tools提供的居然不兼容,结构有不少差别。JBoos Tools创建的项目不包含ANT脚本,这实在让我费解~我的做法是使用seam new-project创建项目,然后手工编辑pom.xml文件,让其支持Maven,不过使用JBoss Tools支持Compenent,楼主的方法开发更便捷。
11 楼 graying 2008-03-21  
失败了……lz你new-project出来的项目,用eclipse导入时选择什么类型的?我记得好像Ref上面说一定要用普通project的,不知道这个有没有关系。。。
10 楼 graying 2008-03-21  
seam new-project的确不错,用eclipse导入就行,只是我一直没有配置自己的component,也不知道怎么显示,谢谢楼主了,回家就尝试一下。

别的不说,jboss tools写xhtml的编辑器实在太强大了,而且也太慢了……
9 楼 dengyin2000 2008-03-21  
andyhan 写道
什么时候Seam可以100%的支持maven2就无敌了。


http://software.softeu.cz/seam/

这个是seam的maven支持, 但是好像支持的Seam的版本比较低。 不过你可以自己修改pom来支持最新的Seam。 我有试过。 感觉没有用seam new-project创建的项目好。
8 楼 andyhan 2008-03-21  
什么时候Seam可以100%的支持maven2就无敌了。
7 楼 caosheng 2008-03-21  
大家都在用seam开发项目吗?
6 楼 打倒小日本 2008-03-21  
又看了一次楼主的文章和后来的回复
引用
但是我感觉用seam new-project创建出来的seam project才是native的。

也想试试感觉回归的感觉
我的单元运行一直都有问题(不是因为JDK6的问题)
说classes路径有错误
现在想想有可能跟JBossTools的EAR工程有关系
5 楼 andyhan 2008-03-20  
Sorry,原来是项目还没有编译。
4 楼 andyhan 2008-03-20  
我的怎么没有作用?
还是空的?
3 楼 dengyin2000 2008-03-20  
那我用jbosstools建的ear工程怎么有错误? 虽说jbosstools里面的也是通过Seamgen来实现见action, entity之类的。 但是我感觉用seam new-project创建出来的seam project才是native的。 而且里面的ant脚本比较方便。 用我上面的方法可以让jboss tools支持你用seam new-project建的项目。 要注意的是你只要用用jbosstools建立好server,不需要把项目加到server中(你也加不了,因为不是web项目。只是个java项目)。 当你修改了文件后,会自动运行explode ant脚本。 把你改过的文件copy到jboss deploy中。
2 楼 打倒小日本 2008-03-20  
我用JBoss Tools创建的EAR工程的确有四个项目
zhulu,zhulu-ear,zhulu-ejb,zhulu-test
有点复杂,但勉强还能接受
但没有编译错误 创建后就能运行
1 楼 cfanliang 2008-03-19  
学习!
 

相关推荐

    Seam-gen生成基础项目骨架

    此外,Seam-gen 生成的项目也可以很好地与 Eclipse 等 IDE 集成,利用 JBoss Tools 插件进行进一步的开发和调试。总的来说,Seam-gen 是一个强大的工具,极大地加速了基于 Seam 的 Java EE 项目的开发流程。

    JBoss Seam工程的创建

    2. **创建新项目**:在Eclipse的工作空间中,通过命令`seam new-project`来创建新的Seam项目。这个命令会生成必要的Seam库、JDBC驱动jar文件,以及项目所需的源代码、配置文件、样式文件和Eclipse元数据。确保在创建...

    jboss-seam-selectitems

    java jboss seam jboss-seam-selectitems

    Jboss seam3 实战

    标题中的“Jboss seam3 实战”表明,本文将重点介绍JBoss Seam框架的第三个版本的实际应用。JBoss Seam是一个开源的Java EE框架,它通过依赖注入和会话模型,简化了基于Java EE的企业级应用开发。Seam框架为开发者...

    seam-gen命令解析文档

    - **作用**:运行一个向导来设置`seam-gen/build.properties`文件中的属性,这些属性包括项目的工作目录、JBoss目录等,同时也可以设置关于代码生成的其他属性,如model、action和test使用的包名、数据库连接等信息...

    jbosstools-4.0.1.Final

    jbosstools-4.0.1.Final JBoss Tools 原名为JBoss IDE,现在统一改名为 JBossTools,JBoss Tools包含了JSF,Hibernate,JBossSeam,jBPM等一系列的开发工具。

    jbossseam eclipse安装 例子学习.doc

    这些步骤对于初次接触 JBoss Seam 的开发者来说非常重要,能够帮助他们快速搭建起一个功能完备的开发环境。 在接下来的学习过程中,您可以利用这个环境来实践各种 JBoss Seam 示例项目,从而深入理解其特性和应用...

    jboss-seam2.0文档

    Seam 2.0通过其EJB容器,让开发者可以方便地创建和管理EJB组件,同时支持EJB 3.0的注解配置。 2.3 CDI(Contexts and Dependency Injection) Seam 2.0引入了CDI,这是Java EE 6中的一个重要组成部分,它提供了一种...

    jboss-seam2.1

    Seam为 应 业务业业 义 种统 组 你的 用程序中所有的 定 了一 一的 件模型。 Seam组件可能是 态义 关关 态 有状 的,包含与几个定 良好的上下文中任何一个相 的状 , 包括长开间运行上 下文、持久化上下文、业务流程...

    jboss seam 2.01GA REF DOC

    #### 引言:JBoss Seam概览与功能介绍 JBoss Seam 是一个为简化企业级 Java 应用开发而设计的框架。它结合了 JavaServer Faces (JSF)、Java Persistence API (JPA) 和 Java Enterprise Edition (Java EE) 的优点,...

    jboss-seam 注解

    ### jboss-seam 注解详解 #### @Name 在JBoss Seam框架中,`@Name`注解主要用于定义一个Seam组件。为了确保组件能够被正确识别与使用,每个Seam组件都必须拥有一个唯一的名称标识,即通过`@Name`来指定。例如: `...

    JBoss Seam--A Deep Integration Framework

    然而,JBoss Seam提供了双向依赖注入的功能,允许组件之间进行更复杂的交互。例如,一个组件可以不仅依赖另一个组件,还可以监听其状态变化。这种特性在处理复杂业务逻辑和数据绑定时非常有用,使开发者能够更容易地...

    Jboss Seam中文版

    1. **在JBoss AS上运行示例**:首先需要安装配置JBoss AS服务器,然后导入Seam项目到服务器中进行部署。 2. **在Tomcat服务器上运行示例**:Tomcat作为轻量级的应用服务器,可以快速部署简单的Seam应用,便于学习和...

    Seam项目源代码(基于JBoss和EJB3,JSF的项目源码)

    Seam项目源代码是一个基于JBoss应用服务器、JavaServer Faces (JSF)、Enterprise JavaBeans (EJB3) 的开源框架示例,旨在为初学者提供深入理解这些技术结合使用的实践经验。Seam是一个全面的Java EE开发框架,它简化...

    JBOSS SEAM组件中文手册

    **JBoss Seam组件中文手册** **一、Seam框架概述** Seam是一个开源的企业级Java框架,由JBoss公司开发,旨在简化Java EE应用程序的开发。它将多种技术如JavaServer Faces (JSF),Java Persistence API (JPA),EJB 3...

    深入浅出JBoss Seam.pdf

    本文将详细介绍JBoss Seam如何作为一个整合平台,不仅能够协调Java EE 5.0的核心框架EJB 3.0和JSF 1.2,还能进一步扩展其功能,使其更加适合现代Web应用的需求。 #### 二、JBoss Seam简介 **1. 什么是Seam** ...

    jboss-seam定时器

    通过以上介绍,我们可以了解到JBoss Seam定时器是如何工作的,以及如何在实际项目中使用和配置它们。利用Seam的定时器功能,开发者可以轻松地实现复杂的应用程序自动化,提高效率并减少手动干预的需求。

Global site tag (gtag.js) - Google Analytics