J2EE配置指南

原创 2003年04月09日 09:56:00
J2EE配置指南
 

  1、介绍

  本文介绍J2EE环境的配置,所有涉及的文件都在J2EE安装目录下的oncfig目录,这些文件都是文本文件,你可以有任意的文本编辑器来编辑它们。

  通常情况下,你没有改变这些文件的必要。但是如果你使用的数据库驱动不是cloudscape的时候,你需要遵循本章的内容进行配置。

  2、JDBC驱动

  默认的J2EE安装后支持cloudscape数据库(一个sun公司提供的演示数据库),如果你的ejb使用的jdbc不是连接cloudscape数据库,那么你需要按照下面的知道进行配置。(如果你不能确定本版本的J2EE支持你使用的jdbc驱动,请到 11111 看相关信息。)

  3、驱动的位置


  你必须把驱动文件(.jar文件)copy到 $J2EE_HOME/lib/system目录下。并且保证该文件包含在J2EE_CLASSPATH 的环境变量中。

  4、J2EE_CLASSPATH 环境变量

  J2EE server通过JDBC驱动连接数据库。通通过J2EE_CLASSPATH 的环境变量定位驱动文件(.jar文件)的位置。你可以在启动J2EE前在命令行设置这个变量。但是我们推荐你在脚本中设置J2EE_CLASSPATH 变量。编辑用户配置文件在安装的过程中是必须的一步。在unix中,用户配置文件是 /bin/userconfig.sh,windows nt中是bin/userconfig.bat

  注意:你应该同时在CLASSPATH环境变量中去掉驱动文件(.jar文件)。

  5、JDBC 1.0 驱动

  为了配置jdbc1.0驱动,编辑config/default.properties 文件的jdbc.drivers 和 jdbc.datasources两个属性值。再次要注意的是驱动文件必须包含在J2EE_CLASSPATH环境变量中。

  jdbc.drivers 属性

  jdbc.drivers 属性的值是有一系列的冒号分割的jdbc驱动的类名。格式如下:

  jdbc.drivers=:: . . .

  例如:

   jdbc.drivers=oracle.jdbc.driver.OracleDriver:testutil.MyDriver

   jdbc.datasources 属性值

   jdbc.datasources 属性值由两部分组成,一个是datasource的jndi的名字,一个是数据库的url。典型的情况是:jndi名字是数据库的逻辑名字,rul指定数据库的实际位置。jndi名字和url都是在ejb编码的过程中指定的。rul的格式,请参照jdbc驱动提供商的文档。

   jdbc.datasources 的语法如下:

   jdbc.datasources=|||. . .

   |符号有两个作用。第一,它隔开几个jndi_datasource;第二,它隔开每一个jndi_datasource中的jndi_datasource> 和 元素.

   jndi_datasource元素的语法如下:

    jdbc/

  由jdbc关键字开头,jndi_name是在jndi目录中指定的datasouce名字。

  例如:

   jdbc.datasources=jdbc/Oracle|jdbc:oracle:thin@rtc:1521:acct|jdbc/MyDB|jdbc:test

  6、支持JTA的JDBC2.0驱动

  配置JTA的JDBC2.0的驱动,你需要设置以下属性的值:

  jdbc20.datasources

  xadatasource..jndiname

  xadatasource..classname

  xadatasource..dbuser

  xadatasource..dbpassword

  xadatasource..prop.

  同时你也必须在J2EE_CLASSPATH 环境变量中包括jdbc驱动文件。

  jdbc20.datasources 属性

  jdbc20.datasources 属性的值和jndi名字连接,用于定位datasouce的位置(它就是lookup方法的参数)。

  jdbc20.datasources 的语法如下:

  jdbc20.datasources=||||的作用有两个,第一,隔开jndi_datasource 和并组成一对,第二,隔开每一对的jndi_datasource> 、元素。

  和 jndi_XA_datasource有相同的语法:

  jdbc/

  jdbc关键字开头。jndi_name是datasource名字,这个名字指向jndi目录。

  例如:

  jdbc20.datasources=jdbc/Merant|jdbc/XAMerant|jdbc/Finch|jdbc/XAFinch

  xadatasource属性

  xadatasource..jndiname 属性指定XA DataSource的jndi名字。语法如下:

  xadatasource..jndiname=jdbc/

  n代表每一组xadatasource。第一个jdbc2.0驱动n为0,下一个是1,2等等。jndi_XA_datasource元素和jdbc20.datasources 指定的值对应。The xadatasource..dbuser 和 xadatasource..dbpassword 属性指定数据库用户和密码。通常该用户具有管理员的权限(更多的信息请看 2222 The distributed.transaction.recovery )。

    xadatasource..prop. 指定和特定的属性值关联的值。实际的值可能是jdbc驱动。

  例如:

    xadatasource.0.jndiname=jdbc/XAMerant

    xadatasource.0.classname=com.merant.sequelink.jdbcx.datasource.SequeLinkDataSource

    xadatasource.0.prop.url=jdbc:sequelink://mypc:5000/[Oracle]

  7、事务

  你可以编辑config/default.properties 文件控制事务发生和超时设置。distributed.transaction.recovery 属性这个属性控制分布事物是否发生。这些事物可以发生的话,下面的条件必须满足:

  跨库操作时的事物范围。

  J2EE程序通过jdbc2.0 JTA驱动访问数据库

  当故障发生的时候,事物的各个的组成部分可以按照符合两段提交协议的方式提交或回滚。

  事物发生的时候,server重新启动后事物可以提交或回滚。

  distributed.transaction.recovery的值为true或者false。J2EE安装后默认为false。

  distributed.transaction.recovery=false

  transaction.time属性

  在应用container-managed 事物的ejb中,你可以控制事物超时的间隔通过设置transaction.timeout的值。例如:

   transaction.timeout=5

  在设置以后,如果事物在5秒内没有完成,J2EE事物管理器将回滚它。当J2EE第一次安装的时候,timeout的值时0代表没有超时。

  只有使用container-managed 管理事物的ejb受到timeout的影响。至于在bean-managed和JTA transactions 中你可以引用 UserTransaction 的 setTransactionTimeout方法。同时你也可以在其他组建中引用setTransactionTimeout方法:比如servlets和jsp。

  8、端口

  J2EE需要tcp/ip端口。修改config目录下的相应文件可以修改端口号。下表是端口号和相应的文件。

  EJB 9191 ejb.properties http.port=9191

  HTTP 8000 web.properties port=8000

  HTTPS 7000 web.properties https.port=7000

  Naming and Directory 1050 orb.properties port=1050

  9191 端口用于提供client下载需要的stub类

  8000 提供http服务

  7000 提供https服务

  1050 基于orb的jndi名字服务使用的端口

  9、日志文件

  J2EE server有几个日志文件。默认这些文件在logs目录下。编辑config/default.properties 文件中的 log.directory 属性可以更改默认目录。

  log.directory=logs

  同时你也可以编辑default.properties 文件更改日志文件的名字。例如:你可以修改log.output 属性的值来修改the output.log 文件的名字。

  一般来说,日志文件决定于启动J2EE的模式。(single还是multiple VM (virtual machine) 模式) Single VM 日志文件默认的情况是Single VM 模式。在这种情况下,日志文件位于

   $J2EE_HOME///ejb

  logs是在default.properties 文件中log.directory 属性指定的。host元素是计算机名称。生成下列文件。

  system.out

  system.err

  event.log

  output.log

  error.log


  system.out 和system.err文件包括ejb中 System.out 和 System.err的输出。如果你运行J2EE -verbose数,输出被写到stdout(标准输出) 和stderr(标准错误。输出)。system.out 和 system.err日志文件不建。只有config/auth.properties 文件中audit属性值为true时audit.lo才创建。

  Multiple VM 日志

  如果你用J2EE -mutiVM启动server,ejb和http服务在自己的虚拟机以单独的服务启动。每一个depploy的应用程序也在自己的虚拟机中运行。日志文件和上述的一样,但是存放的目录不同。目录如下:

  EJB $J2EE_HOME//ejb/ejbd

  HTTP $J2EE_HOME//ejb/httpd

  deployed application $J2EE_HOME//ejb/

  web server日志

  编辑web.properties文件中的内容,可以改变由web server创建的日志文件的名字。

  10、安全

  未授权用户

   对于J2EE来说,当有未授权的用户试图调用ejb container的时候,J2EE必须存在一般意义上的未授权用户存在。在J2EE中这个用户名字是guest,密码是guest123。你可以在auth.properties 文件中修改用户名和密码。

  default.principal.name=guest

  default.principal.password=guest123

  Keystore密码

  如果用户使用公钥访问https,认证信息放在/.keystore 文件中。同时user-home是System.getProperty("user.home")的返回值。keystore是一个典型的密码文件。默认的密码是changeit。可以在web.properties 文件中修改keystore.password 属性的值来改变密码。

  ANYONE 角色

  在application deployment工具的security面板中,默认的情况下方法分配给ANYONE 角色。这样的结果 是所有的用户和组都可以调用它。如果你没有影射到一个特定的角色,每一个用户和用户都可以调用它。可以在auth.properties 文件中设置anyone.role.name 的值来改变默认anyone角色。

  钝化发生的条件:内存限制

  当ejb container开始钝化一个ejb的时候,它把ejb保存在附属存储中并且试图重新分配内存。默认的情况下,如果内存使用超过128m的时候钝化开始发生。可以编辑config/default.properties 文件中passivation.threshold.memory 属性的值来修改默认值。

  passivation.threshold.memory=128000000

值必须是一个正的整数。当你减少这个值的时候钝化现象回经常发生。

  jndi name server host

  如果jndi name server和J2EE server不在同一个机器上,你必须改变config/orb.properties 文件中host属性的值。

  host=localhost

  HTTP 文档根

  默认的情况下,http和https服务的文档是public_html。你可以编辑web.properties 文件中documentroot属性的值来改变它。

  documentroot=public_html/

J2EE环境安装配置

在下载,安装前先说下下面几个概念JDK,SDK,JRE,JVM ◆JDK Java Develop Kit (Java 开发包) ◆SDK Software Develop kit, 以前JDK叫做J...
  • Jerry_1126
  • Jerry_1126
  • 2014年05月18日 21:23
  • 2293

J2EE环境变量配置

注意事项: 1、安装JDK 选择安装目录 安装过程中会出现两次 安装提示 。第一次是安装 jdk ,第二次是安装 jre 。建议两个都安装在同一个java文件夹中的不同文件夹中。两次按照的效果图如下...
  • u013036959
  • u013036959
  • 2016年01月24日 21:59
  • 933

J2ee项目从0搭建(一):eclipse下载、安装、使用习惯配置迁移

JDK安装我们默认已经安装好了,推荐JDK1.7以上。 1.eclipse下载:在eclipse官网下载最新版本,http://www.eclipse.org/downloads/:在这里我们选择...
  • u010246789
  • u010246789
  • 2016年06月02日 11:12
  • 1668

J2EE通过tomcat部署的两种方式

本文是介绍J2EE项目,通过tomcat插件方式和eclipse server 视图两种方式的部署。 一、集成Tomcat插件到Eclipse 1. 下载 Tomcat         作者选择...
  • psp0001060
  • psp0001060
  • 2015年10月25日 21:05
  • 5622

【linux j2ee环境搭建】之三:nginx安装部署

nginx一般需要先装pcre, zlib,前者为了重写rewrite,后者为了gzip压缩。 1.选定源码目录 选定目录 /usr/local/   cd /usr/local/   2...
  • andybbc
  • andybbc
  • 2016年01月25日 10:08
  • 514

J2EE基础教程(1):简介和windows下环境配置

(1)相关概念我们以前在linux操作系统初级教程中,介绍过LAMP架构服务器技术。现在,我们来介绍J2EE。 通过J2EE开发的应用程序属于分布式多层应用程序,包括 (1)客户层:客户应用,we...
  • define_us
  • define_us
  • 2016年07月12日 20:37
  • 942

j2ee项目开发web.xml文件加载及配置详解

最近又有点闹不明白web.xml文件配置加载顺序了,今天没事又对web.xml文件知识整理了下。就web.xml文件配置及加载顺序讲解:Repeatable="true" 表示可以有多个这样的元素,O...
  • xzy0725
  • xzy0725
  • 2014年02月04日 16:57
  • 1638

J2ee项目从0搭建(二):Maven下载、安装、eclipse+maven配置

1、Maven下载:我们从maven官网(http://maven.apache.org/download.cgi)下载最新的maven或者我这边已经下载好的:apache-maven-3.3.9-b...
  • u010246789
  • u010246789
  • 2016年06月02日 13:05
  • 1252

java j2ee多数据源配置

这里主要介绍两种多数据源方式,一种是SpringMVC+MYbatis注解的方式,一种spring JNDI方式; 总体大概流程: 1. 拷贝所需jar 2.写一个数据库切换的工具类:DataSou...
  • q_zx1bydcom
  • q_zx1bydcom
  • 2016年09月12日 09:41
  • 348

Ubuntu Linux下的J2EE(JAVA EE)环境配置

转载自: http://blog.chinaunix.net/uid-21102786-id-1830552.html 首先说明为什么要在Linux下边开发J2EE。思考了一下大致有以下几点: ...
  • a13429921973
  • a13429921973
  • 2013年05月31日 21:46
  • 3038
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:J2EE配置指南
举报原因:
原因补充:

(最多只允许输入30个字)