- 浏览: 81703 次
- 性别:
- 来自: 重庆
-
最新评论
-
禀圣含华:
怎么弄空格呢?___________然后我固定这些空格,怎么弄 ...
第18章. iText PDF 生成 -
super0555:
managed
第13章 Seam 应用程序框架 -
Javakeith:
代码呢?共享下代码呗!
第18章. iText PDF 生成 -
tonyshen277:
同感啊。还在做Win32下的开发,楼主所说的一个都不能少啊。
转自baidu wqqq 给软件开发初学者 -
kdboy:
的确,把人放在宇宙中去看,从上帝的眼中去看,人的确是非常渺小, ...
人生是什么
第3章 开始Seam,,使用 JBoss Tools
JBoss Tools是一个Eclipse插件集。JBoss Tools以向导方式创建Seam一个项目,为facelets 和Java 代码提供统一的EL内容助手,一个图形化的jPDL编辑器,一个图形化的Seam配置文件编辑器,在Eclipse中支持Seam集成测试,等等。
简言之,如果你是Eclipse用户,那么你会想要JBoss Tools!
JBoss Tools,与seam-gen和JBoss AS,配合最好,你的应用程序如果运行在其它服务器上,可能存在一些问题。有关很多变化的那些描述在后面的参考手册中。
3.1. 开始之前
在开始之前,确信你已正确地安装了JDK 5, JBoss AS 4.2, Eclipse 3.3, JBoss Tools插件(至少有Seam工具, 可视页面编辑器, jBPM 工具 和 JBoss AS 工具)以及TestNG插件。
TODO——升级站点有详细的说明。
[*
JBoss Seam 开发环境IDE配置:
Eclipse 3.4+ jboss as 5.0.0.CR2 Release Candidate+JBossTools3.0+ testng-eclipse-5.8.0.1
1、 Eclipse IDE for Java EE Developers (163 MB)
Eclipse 3.4下载地址:http://www.eclipse.org/downloads/
2、 JBossTools-200810070143-nightly-ALL-win32.zip
JBossTools3.0下载地址:http://download.jboss.org/jbosstools/builds/nightly/200810070143-nightly/index.html
3、 testng-eclipse-5.8.0.1.zip
testng-eclipse-5.8.0.1下载地址: http://testng.org/doc/download.html
有关testng插件的使用请参考:http://testng.org/doc/documentation-main.html
解压安装Eclipse 3.4,将JBossTools3.0与testng-eclipse-5.8.0解压,并将其插件目录plugins和features下的内容拷入Eclipse 3.4对应目录下。
安装新插件后,启动Eclipse,在Eclipse 3.4目录下最好运行一次Eclipse –clean命令。
配置原有Jboss as 4.2.3(all)服务器:
New Server->Jboss,a division of Red Hat ->Jboss as 4.2
建Seam项目:
File->new ->other->Seam-> Seam Web Project
成功!
但是,启动Jboss as 4.2.3(all),开始部署正常,但以后不知什么原因,部署总是报“Exception sending context initialized event to listener instance of class org.jboss.seam.servlet.SeamListener”
,有人说是安装目录名有空格造成的。将空格取消,问题仍然。
然而,用seam-gen产生的项目,导入到eclipse中,可以使用,但报jstl.jar包有错,可能是下载的seam2.1的这个文件有错,找一个jstl.jar导入库中,一切正常!
4、 不用Jboss as 4.2.3(all),改用jboss-5.0.0.CR2-jdk6.zip(jboss as 5.0.0.CR2 Release Candidate)版
下载地址:http://www.jboss.org/jbossas/downloads/。
重配服务器,如下所示,一切正常!
*]
3.2. 设立一个新的Seam项目
启动Eclipse,选Seam透视图。
到 File -> New -> Seam Web Project。
首先,为你的项目输入一个名字。对这个教程,我们使用了helloworld。
现在,我们需要告诉JBoss Tools相关的JBoss AS。有两个处理阶段,首先我们需要定义一个运行时间,确信你选了JBoss AS 4.2:
输入运行时间名字,并在你的硬盘上定位它:
下一步,我们需要定义一个JBoss Tools能部署项目的服务器。再次确定选了JBoss AS 4.2,也正确地定义了运行时间:
在下一屏幕给出了服务器名,并点击Finish完成:
确定你刚刚创建的运行时间和服务器被选取,选取Dynamic Web Project动态网页项目Seam 2.0(技术预演)并点Next下一步:
下面第3屏幕,允许你将来自定义你的新项目,但是对我们而,缺省更好。所以只需点击
Next。直到最后屏幕。
在这里的第一步是告诉JBoss Tools有关你想使用的Seam下载版。增加一个新的Seam 运行时间——确定给了它名字,并选取了2.0版:
你需要做的最重要的选择是在你的项目是EAR部署还是WAR部署之间做一个选择。EAR项目支持EJB 3.0 ,并要求Java EE 5。WAR项目不支持EJB 3.0,便可以被部署到一个J2EE
环境。一个WAR包简单容懂。如果你安装了一个迅速的EJB3应用服务器,如JBoss,选择ear。否则,选择WAR。我们假设你为后面的教程已经选择了一个EAR部署,然而,对一个WAR部署你能正确地跟随同样的步骤。
下一步,选取你的数据类型。我们假设你已安装了MySQL,用了一个存在的数据库。你需要告诉JBoss Tools有关你的数据库,选取MySQL作为数据库,并创建一个新的连接profile文件。选取Generic JDBC Connection普通JDBC连接(eclipse 3.4选取MySQL连接):
给它一名字:
JBoss Tools没有带任何数据库驱动程序,所以你需要告诉JBoss Tools MySQL JDBC驱动程序在那儿。告诉它有关驱动程序点.... Locate MySQL 5,并点Add...:
选取MySQL JDBC Driver模版:
通过选Edit Jar/Zip查找到你计算机上的MySQL JDBC Driver的jar包:
[移去默认,Add增加也行]
写入数据库连接使用的用户名和密码,如果正确,点Ok。
最后,选取新建的驱动程序:
如果你使用了一个存在的数据模型,确信你告诉了JBoss Tools数据表已经存在数据库中。
输入连接使用的用户名和密码,用Test连接按钮测试的连接,如果它成功,点Finish完成:
最后,查看你产生的bean的包名,如果如果成功,点Finish完成。
JBoss支持先进的WARs 和 EARs热布置。不幸地,导致JVM程序缺陷,重复一个EAR布置——在布置期间,那是普通的——最后引起JVM内存溢出。为这个原因,在开发期间,我们推荐运行JBoss在一个有一个巨大的内存的永久保存区域的JVM上。如果你从JBoss IDE运行JBoss,你能在服务器启动配置中配置这个,在"VM arguments"下。我们建议下面的值:
-Xms512m -Xmx1024m -XX:PermSize=256m -XX:MaxPermSize=512
如果你没有这么多的内存可用,下面是我们推荐的最小配置:
-Xms256m -Xmx512m -XX:PermSize=128m -XX:MaxPermSize=256
如果你从命令行运行JBoss,你能在bin/run.conf文件中配置JVM选项。
定们到JBoss Server 视图中的服务器,右击服务器,并选取 Edit Launch Configuration(编辑启动配置):
然后,改变VM参数:
如果现在你不想麻烦这些事,你不必管——当你第一次遇到OutOfMemoryException,稍后再恢复它。
启动JBoss,并部署项目,右击刚你创建的服务器,点Start(或调试,启动in debug mode):
不要恐惧产生在项目中的XML配置文本。它们是最标准的Java EE东西,以前你需要建立这些东西,然后不会再看它们,在所有Seam项目之间,它们90%是相同的。
3.3. 创建一个新的动作Creating a new action
如果你习惯于传统的动作类型网页框架,你可能会惊讶在JAVA中用无状态动作方法创建一个简单网页。
首先,选择 New -> Seam Action:
现在,输入Seam组件名字。JBoss Tools智能给其它字段选取缺省值:
最后,击Finish完成。
现在,到http://localhost:8080/helloworld/ping.seam。并点击按钮。查看项目src目录,你能看见在这个动作后的代码。设置一个断点在ping()方法,并再点击按钮。
最后,打开helloworld-test项目,定位PingTest类,右击它,并选Run As -> TestNG Test:
3.4.创建一个表单
现在,输入Seam组件名字。JBoss Tools智能给其它字段选取缺省值:
到http://localhost:8080/helloworld/hello.seam。然后看一下产生的代码。运行测试。试着增加一些新字段到表单和Seam组件(注意,每次你改变了src/action目录里的代码,你不必重启应用程序服务器,因为Seam为你热加载了组件。章节 3.6,“Seam和改进的热部署”)
3.5. 从一个存在的数据库产生一个应用程序
在你的数据库中手动创建一些表。(如果你需要切换到一个不同数据库,创建一个新的项目,并选取正确数据库)。然后,选择New -> Seam Generate Entities:
JBoss Tools给你一个“倒置”实体选项,来自一个数据库表的组件和视图,或者来自存在的JPA实体的组件和视图。我们打算从数据库“倒置”。
重启部署:
然后到http://localhost:8080/helloworld。你能浏览数据库,编辑存在的对象,创建新的对象。如果你查看产生的代码,你可能会吃惊它是多么简单!Seam被设计便于数据访问代码是容易手工书写,甚至对不想用“倒置”的人们。
[*出错
Could not instantiate Seam component:
Caused by: java.lang.IllegalArgumentException: EntityManagerFactory not found in JNDI : java:/helloworldEntityManagerFactory
*]
3.6. Seam和改进的热部署
JBoss Tools 支持改进的热部署:
* 所有 facelets页面
* 所有 pages.xml 文件
超出范围。
But if we want to change any Java code, we still need to do a full restart of the application by
doing a Full Publish.
但是,如果我们想改变任何JAVA代码,我们仍然需要做一个应用程序全重启,通过执行Full Publish。
然而,如果你真想一个快速的编辑/编译/测试周期,Seam支持改进的JavaBean组件重部署。为使用这个功能,你必须部署JavaBean组件到WEB-INF/dev目录,以便通过一个特殊的Seam类加载器代替WAR 或 EAR类加载器加载它们。
你需要注意下的限制:
* 组件必须是JavaBean组件, 它们不能是EJB3 beans (我们正在努力修补这个限制)
* 实体绝不能被热部署
* 通过 components.xml来实现组件部署可以不是热部署
* the hot-deployable components will not be visible to any classes deployed outside of 对在WEB-INF/dev外面的任何类部署,热部署组件是不会可见的。
* Seam 调试模式可以使用, jboss-seam-debug.jar必须在WEB-INF/lib中
* 你必然安装Seam 过滤器在web.xml中
* 如果系统被放在任何加载和任何调试之下,你可以看见错误。
如果你使用JBoss Tools创建了一个WAR项目,改进的热部署可用范围是超出了在src/action资源目录的类的区域。然而,对EAR项目,JBoss Tools不支持改进的热部署。
发表评论
-
第31章. Seam内建组件
2009-05-28 11:51 1498第31章. Seam内建组件 本章描述Seam内建组件 ... -
第30章. Seam注释
2009-05-26 20:21 1636第30章. Seam注释 在你编写一个Seam应用程 ... -
第31章. Seam内建组件
2009-05-26 20:21 1467第31章. Seam内建组件 本章描述Seam内建组件 ... -
第29章. 配置Seam和打包Seam应用程序
2009-05-26 20:19 1580第29章. 配置Seam和打包Seam应用程序 配置 ... -
第28章. Hibernate搜索
2009-05-26 20:17 153828.1. 介绍 如Apache Lucen ... -
第27章. Spring框架集成
2009-05-26 20:16 1444第27章. Spring框架集成 Spring集成 ... -
第26章. Seam和Google网页工具
2009-05-26 20:15 1243第26章. Seam和Google网页工具 ... -
第25章. 远程
2009-05-26 20:15 1326第25章. 远程 Seam 提供了一个从网页远程访 ... -
第24章. Web服务
2009-05-26 20:15 1712第24章. Web服务 Seam 集成了JBossWS, ... -
第23章. 缓存
2009-05-26 20:14 1465第23章. 缓存 在 ... -
第22章. 异步和消息
2009-05-26 20:12 2168第22章. 异步和消息 Seam 使异步执行来自网页请 ... -
第21章. Email
2009-05-26 20:11 1370现在Seam包含一个用于模板和发送邮件的可选组件。 Emai ... -
第 20章. RSS支持
2009-05-26 20:10 834第 20章. RSS支持 20.1. 安装 20.2. ... -
第19章. 微软的Excel 电子表格应用程序支持
2009-05-26 20:07 1854第19章. 微软的Excel 电子表格应用程序支持 S ... -
第18章. iText PDF 生成
2009-05-26 20:01 6528第18章. iText PDF 生成 18.1. 使用PDF ... -
第17章. Seam文本
2009-05-26 19:59 1040第17章. Seam文本 面向协作站点需要一种更有友好的 ... -
第16章. 国际化、本地化和主题
2009-05-26 19:57 1436第16章. 国际化、本地化和主题 Seam使构建国际化应用程 ... -
第15章 安全(2)
2009-05-26 19:56 941第15章 安全(2) 15.5. 错误消息 安全 ... -
第15章 安全(1)
2009-05-26 19:53 102315.1. 概述 Seam安全API为你基于Seam的 ... -
第14章 Seam 和 JBoss 规则
2009-05-26 19:50 1459第14章 Seam 和 JBoss 规则 Seam使从 ...
相关推荐
jbosstools-4.0.1.Final JBoss Tools 原名为JBoss IDE,现在统一改名为 JBossTools,JBoss Tools包含了JSF,Hibernate,JBossSeam,jBPM等一系列的开发工具。
标题中的“Jboss seam3 实战”表明,本文将重点介绍JBoss Seam框架的第三个版本的实际应用。JBoss Seam是一个开源的Java EE框架,它通过依赖注入和会话模型,简化了基于Java EE的企业级应用开发。Seam框架为开发者...
JBoss Seam JBoss Seam JBoss Seam
- **下载文件**:JBossTools-3.0.0.CR1-R200812191611-ALL-win32.zip 5. **MySQL Database** - **下载地址**:[dev.mysql.com/downloads/mysql/5.1.html](http://dev.mysql.com/downloads/mysql/5.1.html) - **...
#### 第三章:上下文相关的组件模型 这一章深入探讨了Seam中的核心概念——组件模型,以及各种不同的上下文环境。 1. **Seam上下文**:介绍了Seam如何通过不同层次的上下文来管理应用的状态,包括无状态上下文、...
JBOSS_SEAM配置
- **使用JSF 1.2 RI**:提供了如何在JBoss平台上使用JSF 1.2参考实现来部署和运行Seam应用的具体步骤。 #### 三、结语 通过以上内容的学习,读者可以全面了解JBoss Seam框架的核心功能和技术特点,掌握如何使用...
2. **开始使用Seam**:这部分介绍了如何通过seam-gen工具和JBoss Tools快速初始化Seam项目。seam-gen提供了一套命令行工具,用于生成基本的Seam项目结构,而JBoss Tools是Eclipse的插件,为Seam开发提供了图形化的...
**JBoss Seam组件中文手册** **一、Seam框架概述** Seam是一个开源的企业级Java框架,由JBoss公司开发,旨在简化Java EE应用程序的开发。它将多种技术如JavaServer Faces (JSF),Java Persistence API (JPA),EJB 3...
2. **JBossTools**:JBossTools是Red Hat开发的一套Eclipse插件集,包含了针对JBoss相关技术如JSF、Hibernate、Seam、jBPM等的开发工具。它提供了对这些技术的集成开发、调试和部署支持,帮助开发者更高效地进行企业...
### JBossTools Birt 集成指南 #### 1.1 什么是 BIRT? BIRT(Business Intelligence and Reporting Tools)是一款基于 Eclipse 的开源报表系统,适用于 Java 和 J2EE Web 应用程序。它主要由两个部分组成:一个...
标题:JBoss Seam入门介绍 描述:本文将详细介绍JBoss Seam框架的核心概念、关键特性以及如何构建基于Seam的应用程序。Seam作为一个企业级Java Web应用框架,它将Java EE和JSF无缝集成,旨在填补Java EE 5.0中缺失...
**JBoss Seam 中文文档集合概述** JBoss Seam 是一个开源的应用框架,它结合了JavaServer Faces (JSF)、Java Persistence API (JPA)、Enterprise JavaBeans (EJB) 3.0 和其他Java EE组件,旨在简化企业级开发。这个...
这是中文手册,Seam为持久化集成了JPA和Hibernate 3,为轻量化的异步性集成了EJB Timer Service和Quartz,为工作流集成了jBPM,为业务规则集成了JBoss规则,为电子邮件集成了Meldware Mail,为完整的文本搜索集成了...
Seam的开发者对第三方框架有着深刻的理解,因此能够更好地将它们融合在一起,而不仅仅是简单的拼接。例如,Seam与jBPM、JBoss Rules(Drools)、JBoss Portal和JBoss Microcontainer等框架的整合,既保持了各框架的...
java jboss seam jboss-seam-selectitems
【JBoss教程及深入浅出JBoss+Seam】是一个针对企业级Java应用服务器JBoss的深度学习资源,其中包含了两个主要部分:JBoss教程和对JBoss与Seam框架结合使用的详细介绍。这两个主题都是Java开发人员在部署和管理企业...
#### 第三部分:Seam 和 jBPM 示例 本节介绍了一个结合 Seam 和 jBPM 的待办事项应用示例。 **1.4.1 理解代码** - **Seam 和 jBPM 集成**:通过将 Seam 组件与 jBPM 流程引擎相结合,实现业务流程的自动化。 - **...