基于jboss4 xj2ee应用开发指南案例_第1页
基于jboss4 xj2ee应用开发指南案例_第2页
基于jboss4 xj2ee应用开发指南案例_第3页
基于jboss4 xj2ee应用开发指南案例_第4页
基于jboss4 xj2ee应用开发指南案例_第5页
已阅读5页,还剩47页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

JBoss4.xJ2EE1.4JBoss4.xJ2EE1.4内部培训[200536日稿,初稿未完成版权声能够联系写作建修改日2005-03-052005-03-06JBossWindows目录0 案例研 J2EE JavaPet 钟情JBoss 目录0 案例研 J2EE JavaPet 钟情JBoss 1安装JBoss 背 Java5的安 JBoss4.x的安 2安装JBoss-IDE 概 安 注 3基于JBoss4.x的JSF应用开 安 使 小 4基于JBoss4.x的JMS应用开 背 5基于 使 小 4基于JBoss4.x的JMS应用开 背 5基于JBoss4.x的Hibernate应用开 5.1Hibernate应用架 Hibernate HAR 5.2Hibernate应用实例研 小 6基于JBoss4.x的JTA应用开 背 7基于JBoss4.x的JavaMail应用开 背 8基于JBoss4.x的JAAS应用开 背 9基于JBoss4.x的Web服务开 9.1Web服务背 9.2Web服务实例应用研 基于JBoss4.x的任务调度应用开 10.1背 10.2任务调度实例应用研 基于JBoss4.x的JCA开 10.2任务调度实例应用研 基于JBoss4.x的JCA开 背 基于JBoss4.x的其他应用开 背 EJB3.0应 后 0序逻辑分割成组0序逻辑分割成组件。然后,将组成应用的各个组件部署在不同的服务器中。比如,图0-1给0-1多层J2EE环境[来自J2EEJBoss4.xJ2EE1.4J2EE平台技术外,还提供以动态调整所J2EE平台服那些Spring开发经验的开发JBoss的这种特性很有帮助。基于JMX微内核的JBoss4.x具有如下几方面的功能:动态性、可配置FrameworkJBoss4.x的架构更为模块化。利用AOP,开发者能够为POJO对象提供类EJB组件使用的声明式企业服务,比如事务服务、安全性服务等等。当然,基于JBoss4.x内置的Hibernate服务使得开发者开发HibernateRDBMS持久化应用更为流畅。JMXJMX总线,JBoss提供的平台服务能够动态集成在一起。其中,可JMX微内核层之上存在服务层。它展示了整个JBoss应用服务器所具有的功能。其中,包Invoker、安全性、事务服务、缓存技术、监控以及持久化服务。第三,JBossPOJO的开发模型奠定了有利的基础。第四,JBossJ2EE应用层。开发者只J2EE开发趋势。比如,J2EE5.0将重点放在简化企业级应用开1JBoss4.x/JBoss5.x中,开发J2EEJBoss4.x/JBoss5.x中,开发J2EEJava桌面应用类似。0-2JBoss的J2EE开发模型[JBoss网站因此,借助于JMXAOP框架,开发者能够更愉悦地开发J2EE1.4应用。J2EEHibernate等的成功,开发者能够看出,J2EE开发模型需要简化、架构需要更灵活,而不只J2EEAPI。J2EE平台服务解决了企业级应用所需服务的问题,但是开发者如J2EEJ2EE规范并没有涉足。对于那些Spring框架[]J2EESpringIoC,开发者能够对所需要的应用组件进行依赖注入。借助于SpringAOP,开发者能够透明地使用企业级服J2EE架构。因此,SpringJava/J2EE2为了使得Web容器具有全局事为了使得Web容器具有全局事务的功能,开发者可以将JOTM集成到Spring应用中;为了使HibernateSpringDAOHibernate集成到应用组件JSF、TapestryWeb框架集Spring应用中,开发者可以直接使用Spring提供的集成支持。因此,Spring是未来J2EE发展趋势的缩影。总体上而言,整个J2EE开发模型需要简化,比如简化EJB组件开发(基于POJO开发EJBBean的效率WebJSF技术(提供可复WebOOP、基于事件方式开发Web前端JNDI提供依赖注入等等。J2EE5.0正是在上述背景下诞生的。来一起期待美好的J2EE未来吧JBoss/J2EE的阐述,其间J2EE研究并使用J2EE,作者建议开发者从Sun提供的J2EETutorial入手。当然,开发者不J2EETutorialJ2EETutorial过程中,往往认为它只是在教会开发者如何部署各种J2EE组件。其实,这种理解存在问题的。借助于J2EEJ2EETutorialJ2EE平台技术。这使得开发者的知识体系而不至于对重要内容产生距离发者可以选择性地研究J2EETutorial提供的内容。J2EEJ2EETutorial。这对于开发者了解新其中,JavaBluePrints[其中包括,JavaPetStore、AdventureBuilder。]集成了实际开3JBoss是轻量J2EE应用服务不用J2EETutorialJ2EE应用服务器。对于JBoss的安装和使用,很简单,开发者只需要将JBoss拷贝到不存在JBossIDEJ2EETutorial提供的研究实例。借助于JBossJMXWebJMS目的地中可以提升开发者对J2EE的掌握程度,这在架构开发者自身的技术体系上也很有帮助。OpenSource领域[WebLogic8.x、WebSphere6.x、OracleJBossJ2EEJavaPetJavaAdventure4器嵌入在开发者的应用中,JBoss应用服务器都是很理想的中间件平台,它适合于上述任何器嵌入在开发者的应用中,JBoss应用服务器都是很理想的中间件平台,它适合于上述任何4.xEJBJSP2.0/ServletJCAJMS1.1JAAS1.0JAFJNDIJAXPJavaMailCORBASAAJJAXRJ2EEManagementSpecification1.0JMX1.2J2EEDeploymentSpecificationJACC[已经由电子工业出版社于2004年11月出版发行]5611J2EE1.4应用服务器,JBoss4.xJavaJava5。因此,开发者需要下载并安装Java5。Java51-1Java5的正确安7OracleDatabase10gOracleDatabase10g数据库首先,开发者需要打开1-2打开DatabaseConfiguration81-3选择DB模第三步,1-3选择DB模第三步,输入全局数据库SID。本书jboss4x1-4输入DB标识91-5管理选第五1-5管理选第五步,提供帐号口令,本书使用jbossj2ee1-6用户帐号口令1-7存储选1-7存储选1-8数据库文件位1-9“恢复配置”1-9“恢复配置”向1-11数据库文件位1-11数据库文件位1-12数据库存储向1-13“创建选项”1-13“创建选项”向1-14“确认”向1-16激活SCOTT用1-16激活SCOTT用看到jboss4x数据库的内容。MySQL4.0.xMySQL4.0.x载不需安装的MySQL,比如mysql-4.0.23-win-noinstall.zip。1-18MySQL安装为Windows服才能够使用它,见图1.20所示。1-20连接考虑到MySQL4.0.x1-20连接考虑到MySQL4.0.x的中文问题,开发者在使用JDBCDriver意:不要使用3.0.11,其操作中文时存在Bug。JBoss4.xJBoss应用服务器解压到某目录即可。具体运行过程如下[其JBoss的defaultrun–cdefault,则同D:\jboss-..JBOSS_HOME:D:\jboss-.JAVA:..CLASSPATH:D:\jdk1.5.0_01\lib\tools.jar;D:\jboss-..20:05:28,455INFO[Server]StartingJBoss(MX20:05:28,455INFO[Server]ReleaseID:JBoss[Zion]4.0.1(build:4_0_120:05:28,46520:05:28,46520:05:28,46520:05:28,46520:05:28,46520:05:28,46520:05:28,465/20:05:28,46520:05:28,4654_0_120:05:28,46520:05:28,46520:05:28,46520:05:28,46520:05:28,46520:05:28,46520:05:28,465/20:05:28,46520:05:28,46520:05:28,46520:05:28,46520:05:28,47520:05:28,80620:05:28,806[Server]HomeDir:D:\jboss-4.0.1[Server]HomeURL:file:/D:/jboss-4.0.1/[Server]PatchURL:null[Server]ServerName:[Server]ServerHomeDir:D:\jboss-4.0.1\server\default[Server]ServerHomeURL:file:/D:/jboss-4.0.1/server/default[Server]ServerDataDir:D:\jboss-4.0.1\server\default\data[Server]RootDeploymentFilename:jboss-service.xml[Server]StartingGeneralPurposeArchitecture(GPA)...[ServerInfo]Javaversion:1.5.0_01,SunMicrosystemsInc.[ServerInfo]JavaVM:JavaHotSpot(TM)ClientVM1.5.0_01-20:05:28,80620:05:29,17620:05:30,87920:05:30,999/20:05:31,189[ServerInfo]OS-System:WindowsXP5.1,x86[Server]Coresysteminitialized[Log4jService$URLWatchTimerTask]ConfiguringfromURL:1098,backlog=50,bindAddress=/,ClientSocketFactory=null,Server20:05:37,85920:05:38,450-20:05:38,48020:05:38,48020:05:38,490820:05:38,51020:05:38,530[Embedded]Catalinanaming[Catalina]Initializationprocessedin521ms[Catalina]Serverstartupin5020:05:38,730INFO[TomcatDeployer]deploy,ctxPath=/invoker,warUrl=file:/D:/jb20:05:38,730INFO[TomcatDeployer]deploy,ctxPath=/invoker,warUrl=file:/D:/jb20:05:39,671INFO[TomcatDeployer]deploy,ctxPath=/ws4ee,warUrl=file:/D:/jbos20:05:39,842INFO[TomcatDeployer]deploy,ctxPath=/,warUrl=file:/D:/jboss-.1/server/default/deploy/jbossweb-20:05:40,082INFO[TomcatDeployer]deploy,ctxPath=/jbossmq-httpil,:/D:/jboss-4.0.1/server/default/deploy/jms/jbossmq-httpil.sar/jbossmq-/20:05:43,166INFO[MailService]MailServiceboundto20:05:43,767INFO[RARDeployment]RequiredlicensetermsexistviewtheMETA-INF/ra.xml:file:/D:/jboss-4.0.1/server/default/deploy/jboss-local-jdbc.rar20:05:43,938INFO[RARDeployment]RequiredlicensetermsexistviewtheMETA-INF/ra.xml:file:/D:/jboss-4.0.1/server/default/deploy/jboss-xa-jdbc.rar20:05:44,208INFO[RARDeployment]RequiredlicensetermsexistviewtheMETA-INF/ra.xml:file:/D:/jboss-4.0.1/server/default/deploy/jms/jms-ra.rar20:05:44,338INFO[RARDeployment]RequiredlicensetermsexistviewtheMETA-INF/ra.xml:file:/D:/jboss-4.0.1/server/default/deploy/mail-ra.rar20:05:45,560INFO[WrapperDataSourceService]BoundconnectionfactoryforresourceadapterforConnectionManager'jboss.jca:service=DataSourceBinding,name=DefaultDStoJNDIname'java:DefaultDS'20:05:45,610WARN[ConfiguredIdentityLoginModule]CreatingLoginModulewithconfigured20:05:45,98120:05:45,98120:05:45,98120:05:45,98120:05:45,98120:05:46,001BoundtoJNDIname:BoundtoJNDIname:BoundtoJNDIname:BoundtoJNDIname:queue/D[ex]BoundtoJNDIname:queue/ex[testTopic]BoundtoJNDIname:topic/testTopic[securedTopic]BoundtoJNDIname:topic/securedTopic20:05:46,02120:05:46,07120:05:46,101[testQueue]BoundtoJNDIname:[DLQ]BoundtoJNDIname:20:05:46,281INFO[WrapperDataSourceService]BoundconnectionfactoryforspetstoretoJNDIname20:05:46,501INFOspetstoretoJNDIname20:05:46,501INFO[ConnectionFactoryBindingService]BoundconnectionfactoryforresourceadapterforConnectionManager'jboss.jca:service=ConnectionFactoryBinding,name=JmsXAtoJNDIname'java:JmsXA'20:05:46,581INFO[TomcatDeployer]deploy,ctxPath=/jmx-console,:/jboss-4.0.1/server/default/deploy/jmx-20:05:46,952INFO[TomcatDeployer]deploy,ctxPath=/web-console,:/jboss-4.0.1/server/default/deploy/management/web-20:05:47,823020:05:47,98320:05:47,98320:05:47,993[ChannelSocket]JK2:ajp13listeningon/:8009[JkMain]JkrunningID=0time=0/80config=null[Server]JBoss(MXMicroKernel)[4.0.1(build:_0_1date=200412230944)]Startedin其中,上述日志表明,MySQL数据源成功配置(其配置过程,本书第三章将有介绍。1-21JBoss4.xJMX控制台应将JBoss安装成Windows服务使得开发者将JBoss安装成Windows服务使得开发者不用手工启动JBoss而且不会出现运行JavaServiceJava应用运行为WindowsOpenSource开发的,具体setjavaPath=D:\jdk1.5.0_01set--out-err-current-如果直SourceForgeCVS下载Eclipse如果直SourceForgeCVS下载EclipseCVS支持,这并不明智。因为JBoss的过程比较复杂,除非开发者已JBoss很熟悉了。否则,花费半天功夫后,还载jboss-4.0.1sp1-src.tar压缩存档。删除掉构建好的JBoss服务器。EclipseJava项目。注意JBoss源代码目录下新Java项目。比JBossD:\jboss-4.0.1sp1-srcEclipse提供的Java工程Wizard构建jboss-4.0.1sp1-src项目。最后,用户将jboss-4.0.1sp1-src项目。这就是包含了完JBoss源码Java项相应的Java构建路径中。22目前,其最新版为JBossIDE1.4.0。对XDoclet提供相当完善的支持,并且易用性特别好。提供JSP、HTML、XML编辑器。基于软件更新新过程。具体更新URL如下。2-1基于软通过安装包开发者通过如下URL2-1基于软通过安装包开发者通过如下URL,能够下载到最新版的JBossIDE。Java格局来看,EclipseEclipse是免费的、OpenSource的。这是吸引企业采纳它的主要原CVSTeam而言,能够较好地实施每日流程时,全程使用了AntEclipse的插件[Eclipse/]很丰富。EclipseJBossIDE1.433SunJavaPetJDJ2004.11期介绍的MyPetJBossPetStoreJSF/Spring/HibernateWebjbosspetstorejbosspetstoreJ2EE/JBoss的服务,因此还是使用JBoss。JSFJSF安<!--$Id:mysql-ds.xml,v2004/12/0111:46:00schroufExp$--<!--DatasourceconfigforMySQLusing3.0.9available/downloads/api-jdbc---/downloads/api-jdbc---<driver-class>com.mysql.jdbc.Driver</driver-<user-name>root</user-</exception-sorter-class-<!--sqltocallwhenconnectionis<new-connection-sql>somearbitrarysql</new-connection---<!--sqltocallonanexistingpooledconnectionwhenitisobtainedfrom<check-valid-connection-sql>somearbitrarysql</check-valid-connection---其次,初始化RDBMS。位于目录other中,jbosspetstore.sql20:32:51,518INFO[TomcatDeployer]deploy,ctxPath=/jbosspetstore,20:32:53,280WARN[Digester][ValidatorRule]{faces-config/validator}Merge(com.20:32:54,112INFO[Engine]StandardContext[/jbosspetstore]Loading20:32:54,112INFO[Engine]StandardContext[/jbosspetstore]LoadingrootWebAppli20:32:54,182INFO[XmlBeanDefinitionReader]LoadingXMLbeandefinitionsfromresource[/WEB-INF/applicationContext.xml]ofServletContext20:32:54,312INFO[XmlWebApplicationContext]Beanfactoryforapplicationcontext[RootXmlWebApplicationContext]:org.springframework.beans.factory.support.DefaultListableBeanFactorydefiningbeans[dataSource,sessionFactory,hibernateTempe];RootofBeanFactory20:32:54,322INFO[XmlWebApplicationContext]13beansdefinedinApplicationContext[RootXmlWebApplicationContext]20:32:54,322INFO[XmlWebApplicationContext]NoMessageSourcefoundfor[RootXmlWebApplicationContext]:usingemptyStaticMessageSource20:32:54,332INFO[UiApplicationContextUtils]NoThemeSourcefoundfor[RootXmlWebApplicationContext]:usingResourceBundleThemeSource20:32:54,342INFO[XmlWebApplicationContext]Refreshinglisteners20:32:54,342INFO[DefaultListableBeanFactory]Pre-instantiatingsingletonsinfactory[org.springframework.beans.factory.support.DefaultListableBeanFactorydeTarget,customerService,orderServiceTarget,orderService];RootofBeanFactoryhie20:32:54,342INFO[DefaultListableBeanFactory]Creatingsharedinstanceofsingletonbean'dataSource'20:32:54,392INFO[DefaultListableBeanFactory]Creatingsharedinstanceofletonbean20:32:54,41220:32:54,42220:32:54,42220:32:54,562[Environment]Hibernate2.1.6[Environment]usingCGLIBreflection[Binder]Mappingclass:20:32:54,703INFO[Binder]Mappingclass:.Category->20:32:54,713INFO[Binder]Mappingclass:.Item->20:32:54,733INFO[Binder]Mappingclass:.LineItem->20:32:55,003.Order->orders20:32:55,033.Product->20:32:55,043[Binder]Mappingclass:.LineItem->20:32:55,003.Order->orders20:32:55,033.Product->20:32:55,043[Binder]Mappingclass:[Binder]Mappingclass:[Binder]Mappingclass:.BannerData->20:32:55,053INFO[Binder]Mappingclass:.Profile->20:32:55,063INFO[Binder]Mappingclass:.Signon->20:32:55,073INFO[Binder]Mappingclass:.Inventory->20:32:55,083INFO[Binder]Mappingclass:.Sequence->20:32:55,09320:32:55,09320:32:55,09320:32:55,09320:32:55,123t20:32:55,12320:32:55,12320:32:55,123[Configuration]processingone-to-oneassociationproperty[Configuration]processingforeignkey[SettingsFactory]Maximimouterjoinfetchdepth:2[SettingsFactory]Useouterjoinfetching:true20:32:55,133INFO[TransactionManagerLookupFactory]NoTransactionManagerLookupconfigured(inJTAenvironment,useofprocesslevelread-writecacheisnotre20:32:55,46420:32:55,46420:32:55,46420:32:55,46420:32:55,46420:32:55,464[SettingsFactory]Usescrollableresultsets:true[SettingsFactory]UseJDBC3getGeneratedKeys():true[SettingsFactory]Optimizecacheforminimalputs:false[SettingsFactory]echoingallSQLtostdout[SettingsFactory]Querylanguagesubstitutions:{}20:32:55,50420:32:55,654[Configuration]20:32:55,50420:32:55,654[Configuration]instantiatingandconfiguringcaches[SessionFactoryImpl]buildingsessionfactoryspring.model.businessobject.Account,BulkBeanException:Propertyisprivate(propertysetSignon)20:32:55,694INFO[ReflectHelper]reflectionoptimizerdisabledfor:com.openv.spring.model.businessobject.Item,BulkBeanException:Propertyisprivate(propertysetInventory)20:32:55,794INFO[SessionFactoryObjectFactory]NotbindingfactorytoJNDI,noJNDInameconfigured20:32:55,794INFO[DefaultListableBeanFactory]Creatingsharedinstanceofsingletonbean'hibernateTemplate'20:32:55,804INFO[DefaultListableBeanFactory]Creatingsharedinstanceofsingletonbean'catalogDao'20:32:55,814INFO[DefaultListableBeanFactory]Creatingsharedinstanceofsingletonbean'customerDao'20:32:55,814INFO[DefaultListableBeanFactory]Creatingsharedinstanceofsingletonbean'orderDao'20:32:55,814INFO[DefaultListableBeanFactory]Creatingsharedinstanceofsingletonbean'transactionManager'20:32:55,824INFO[HibernateTransactionManager]UsingDataSource[org.jboss.resource.adapter.jdbc.WrapperDataSource@16954e1]fromHibernateSessionFactoryfor20:32:55,824INFO[DefaultListableBeanFactory]Creatingsharedinstanceofsingletonbean'catalogServiceTarget'20:32:55,824INFO[DefaultListableBeanFactory]Creatingsharedinstanceofsingletonbean'catalogService'20:32:55,924INFO[DefaultListableBeanFactory]Creatingsharedinstanceofsingletonbean'customerServiceTarget'20:32:55,934INFO[DefaultListableBeanFactory]Creatingsharedinstanceofsingletonbean'customerService'20:32:55,934INFO[DefaultListableBeanFactory]Creatingsharedinstanceofsingletonbean'orderServiceTarget'20:32:55,944INFO[DefaultListableBeanFactory]Creatingsharedinstanceofsingletonbean'orderService'20:32:55,944INFO[ContextLoader]Usingcontextclass20:32:55,944INFO[ContextLoader]PublishedrootWebApplicationContext[org.sprWebApplicationContext];startupdate=[WedJan1220:32:54CST2005];rootofApplicationContexthierarchy;configlocations=[/WEB-INF/applicationContext.xml];]asServletContextattributewith20:32:55,944INFO[ContextLoader]PublishedrootWebApplicationContext[org.sprWebApplicationContext];startupdate=[WedJan1220:32:54CST2005];rootofApplicationContexthierarchy;configlocations=[/WEB-INF/applicationContext.xml];]asServletContextattributewi

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论