知识大全 部署基于JBoss 的 J2EE应用程序

Posted 文件

篇首语:少年击剑更吹箫,剑气箫心一例消。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 部署基于JBoss 的 J2EE应用程序相关的知识,希望对你有一定的参考价值。

部署基于JBoss 的 J2EE应用程序  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!

  JBoss 作为J EE应用服务器 以其EJB容器卓越的性能 技术的潮流性 开发部署J EE应用的方便性赢得了很多J EE开发者的信赖 其中 免安装 基于JMX构架 热部署(Hot Deploy) 快速开发EJB应用等几项特征与其他商用服务器相比 显得有些得意忘形的样子 尽管其本身没有重大的缺陷 但毕竟是Open Source的开发模式 文档很少 因此要很好的掌握 精通开发基于JBoss的应用还是显得有些力不从心     本文结合作者的开发经验 给出在JBoss 下开发J EE的一些很实用的相关的注意事项和规则 其中 读者一定要知道JBoss 作为JBoss的过渡产品(与JBoss x JBoss x相比) 自然有些东西和JBoss x JBoss x有很大差别 但是 一般情况下 本文介绍的内容 大体上都适合JBoss各个版本     下载完JBoss 后 解压到一个没有空格的目录路径下面就可以运行JBoss 所以很方便 但前提是目标机器安装了Java Standard Edition 一切就绪后 我们就开始吧 (假设JBoss 安装在 C:\\jboss _tomcat 本使用default配置)     一 相关配置文件的设置    为开发J EE应用 操作数据库成了必不可少的内容 调节日志输出的详细程度成了调试J EE应用的关键 EJB应用的调优过程是J EE应用的核心      数据源的配置     在JBoss 中 配置数据源的步骤很简单 JBoss 本身带了主流数据库的配置实例 于目录下 C:\\jboss _tomcat \\docs\\examples\\jca 具体使用哪个配置文件取决于目标用户的数据库 如果是SQL Server 则需要使用mssql ds xml文件(支持本地事务)或者mssql xa ds xml文件(支持全局事务) 如果是Oracle i数据库 则需要使用oracle ds xml文件或者oracle xa ds xml文件等 这里以SQL Server 为例     首先将mssql ds xml文件拷贝到目录 C:\\jboss _tomcat \\server\\default\\deploy下 然后打开文件 并作如下修改     <datasources>  <local tx datasource>  <jndi name>VSSDB</jndi name>  <connection url>jdbc:microsoft:sqlserver:// : ;DatabaseName=DDD  </connection url>  <driver class> microsoft jdbc sqlserver SQLServerDriver</driver class>  <user name>sa</user name>  <password>sa</password>  <min pool size> </min pool size>  <max pool size> </max pool size>  </local tx datasource>  </datasources>    如果目标J EE应用只需要本地事务 则上述过程已经完成了Datasource的配置 同时这个配置将用于JDBC以及EJB通过JNDI使用 如果要实现EJB使用Datasource 则还需要修改位于目录 C:\\jboss _tomcat \\server\\default\\conf下的standardjbosscmp jdbc xml文件 比如     <jbosscmp jdbc>    <defaults>  <datasource>java:/VSSDB </datasource>  <datasource mapping>MS SQLSERVER </datasource mapping>    <create table>true</create table>  <remove table>false</remove table>  <read only>false</read only>  <time out> </time out>  <pk constraint>true</pk constraint>  <fk constraint>false</fk constraint>    其中 java:/VSSDB中的VSSDB就是mssql ds xml配置的数据源 而 java:/ 前缀表明该命名空间只是对JBoss本身可见 即运行于JBoss外的应用是不能够使用这里定义的数据源 这一点希望注意     其次 MS SQLSERVER 中的MS SQLSERVER 可以在该文件的其他地方找到 (如果是其他数据库 情况都是类似的)     日志的输出详细程度配置     由于JBoss 开发采用了Log j管理其日志信息(严格地讲 它扩展了Log j) 因此了解Log j的机理 有助于理解JBoss 管理日志的方式 JBoss 采用JMX架构的同时 且以 xml文件类型为配置文件 因此可以找到位于目录 C:\\jboss _tomcat \\server\\default\\conf下的log j xml文件 比如 其中一段配置示例如下     <appender name= CONSOLE class= apache log j ConsoleAppender >  <param name= Target value= System out />  <param name= Threshold value= INFO />    <layout class= apache log j PatternLayout >  <! The default pattern: Date Priority [Category] Message\\n >  <param name= ConversionPattern value= %dABSOLUTE % p [%c ] %m%n />  </layout>  </appender>    比如 为了调节JBoss 控制台日志输出的详细程度(调整为DEBUG级别) 我们需要修改value= INFO 将INFO改为DEBUG 如果开发Entity Beans 可以调节位于与log j xml文件同一目录下的standardjboss xml文件(该文件主要是提供修改EJB相关的调试 运行 调优 部署参数) 如果Entity Beans采用的为Standard CMP x EntityBean 则将其中的属性的取值改为true     <container configuration>  <container name>Standard CMP x EntityBean</container name>  <call logging>false</call logging>  <invoker proxy binding name>entity rmi invoker</invoker proxy binding name>  <sync on mit only>false</sync on mit only>    完成上述两步后 在调试Entity Beans时通过控制台 可以看到Entity Beans发出的JDBC调用细节      Tomcat容器相关参数的配置     如果使用JBoss 与Tomcat 的集成版本 则可以通过调节分别位于目录 C:\\jboss _tomcat \\server\\default\\deploy\\jbossweb tomcat sar下的web xml和目录 C:\\jboss _tomcat \\server\\default\\deploy\\jbossweb tomcat sar\\META INF下的jboss service xml文件来达到目标读者特定需求 比如 如果想将HTTP服务端口改为 则可以修改jboss service xml文件 如果想使目标J EE应用处理更多的文件类型 可以修改web xml文件      相关类库的放置     如果应用涉及到第三方类库 比如JDBC Driver 则可以将这些JDBC Driver存放到目录下 C:\\jboss _tomcat \\server\\default\\lib 注意 不是目录 C:\\jboss _tomcat \\lib下     如果是与目标J EE应用相关 则可以存放到目标 war(或者 ear)里面 或者xxx war目录中的WEB INFO\\lib下 无论那种情形 都需要遵循J EE规范 当然 JBoss 的配置文件有很多 比如还有提供邮件服务的mail service xml文件等      二 开发EJB应用    如果开发EJB应用 建议采用JBoss作为开发服务器 因为开发 调试 部署速度快 如果采用其他商用服务器 由于实现机理的不同 其编译的速度很慢 如果采用Entity Beans技术 则您需要知道这几点 第一 您目标系统的数据源有多少个操作入口 即是否存在Entity Beans之外的方式来操作数据库 如果有 则需要调节相应的提交策略以及策略     比如 JBoss 采用的方式有 种 A B C D 当然 如果除了Entity Beans访问数据库外 别无它出 采用A是很理智的 如果有 则需要取决于具体的情况使用方式 同时 方式的选择与策略有关系 能够采用的Entity Beans或Entity Beans Methods 则尽量采用 这样会减少或消除死锁发生的可能性 尽量采用 :n的关系来操作n方的数据表结构 这样能够提高EJB Container的效率     一般情况下 J EE应用服务器支持JDBC事务 JTA事务 容器管理事务 同时 最好不要在程序中同时使用上述三种事务类型 比如在JTA事务中嵌套JDBC事务 第二方面 事务要在尽可能短的时间内完成 不要在不同方法中实现事务的使用 比如 下面给出了回滚JDBC事务的代码示例     public void processT(String orders)   Context initCtx = new InitialContext();  javax sql DataSource ds = javax sql DataSource)initCtx lookup  ( java:p/env/jdbc/OrdersDB );  java sql Connection conn = ds getConnection();  try  conn setAutoCommit( false ); //更改JDBC事务的默认提交方式  orderNo = createOrder( orders );  updateOrderStatus(orderNo orders created );  mit();//提交JDBC事务  catch( Exception e )  try  conn rollback();//回滚sJDBC事务  throw new EJBException( 事务回滚 + e getMessage());  catch( SQLException sqle )  throw new EJBException( 出现SQL操作错误 + sqle getMessage());          下面给出了JTA事务代码示例     public void processOrder(String orderMessage)   UserTransaction transaction = mySessionContext getUserTransaction();//获得JTA事务  try  transaction begin();//开始JTA事务  orderNo = sendOrder(orderMessage);  updateOrderStatus(orderNo order sent );  mit();//提交JTA事务  catch(Exception e)  try  transactio cha138/Article/program/Java/ky/201311/28619

相关参考

知识大全 J2EE应用服务器(Jboss+Tomcat)安装攻略

J2EE应用服务器(Jboss+Tomcat)安装攻略  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧

知识大全 Oracle9iAS下J2EE应用程序部署

Oracle9iAS下J2EE应用程序部署  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  安装配

知识大全 用Eclipse3.0+jboss4Lomboz 3开发J2EE

用Eclipse3.0+jboss4Lomboz3开发J2EE  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来

知识大全 JBoss虚拟主机安装部署指南收藏

JBoss虚拟主机安装部署指南收藏  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  环境说明  x

知识大全 在JBoss4.2及JBoss5.0上部署jax-ws 2.0/2.1 Web

在JBoss4.2及JBoss5.0上部署jax-ws2.0/2.1Web  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我

知识大全 基于JBoss来写MBean

基于JBoss来写MBean  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  用JDK自带的JMX

知识大全 PHP5中使用Web服务访问J2EE应用程序(2)

PHP5中使用Web服务访问J2EE应用程序(2)  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 

知识大全 如何在Eclipse中调试JBoss应用

如何在Eclipse中调试JBoss应用  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!一般来说在J

知识大全 JBoss EJB应用程序迁移到WebLogic上

JBossEJB应用程序迁移到WebLogic上  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  

知识大全 JBoss应用服务器5.0正式发布

JBoss应用服务器5.0正式发布  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  开源厂商Red