定义环境变量 用XML在组件的部署描述符文件中定义环境变量。假如使用部署工具(例如J2EE参考实现所带的部署工具程序),你就可以用GUI方式确定部署描述符。但是下面我们还是假定用文本编辑器手工编辑部署描述符。 环境变量有四个部分: · 描述: 定义在scription> tag 内的一个串。 · 名称:定义在<env-entry-name> tag内的一个串。 · 值:定义在<env-entry-value> tag内的一个值。 · 类名:定义在<env-entry-type> tag内的环境变量的类型 描述是可选的文字描述,出现在部署工具的用户界面上。它告诉部署者在确定环境实体引用时做什么。换句话说,它是一个可读描述,告诉部署者如何填写其他值。它也告诉部署者这个环境变量是否是可选的。 环境变量的名称是相对于JNDI上下文名“jndi:comp/env”的,组件用名称查找环境变量。所有环境变量都由它们的容器在JNDI上下文中注册。 环境变量的值是环境变量应取的值,格式是字符串。除了表示单个字符的类型java.lang.Character以外,答应作为环境变量的所有类型都有以串作为参数的构造函数。Env-entry-value tag包含了用于值的构造函数的串。 环境变量的类型是环境变量值的类型类名。必须是下面的类型之一: l java.lang.Boolean l java.lang.Byte l java.lang.Character l java.lang.Double l java.lang.Float l java.lang.Integer l java.lang.Long l java.lang.Short l java.lang.String
SMTP主机例子中的环境变量可以象下面这样: <env-entry> <description> Enter the host name for sending email </description> <env-entry-name>SMTP Host Name</env-entry-name> <env-entry-value> homer.sPRingfield.ma.us </env-entry-value> <env-entry-type>java.lang.String</env-entry-type> </env-entry>
<env-entry> <description>SMTP port number for email </description> <env-entry-name>SMTP Port</env-entry-name> <env-entry-value>2101</env-entry-value> <env-entry-type>java.lang.Integer</env-entry-type> </env-entry>
<env-entry> <description> User authentication for SMTP server </description> <env-entry-name>SMTP User</env-entry-name> <env-entry-value>bart</env-entry-value> <env-entry-type>java.lang.String</env-entry-type> </env-entry>
<env-entry> <description> PassWord for SMTP user </description> <env-entry-name>SMTP Password</env-entry-name> <env-entry-value>D'oh!</env-entry-value> <env-entry-type>java.lang.String</env-entry-type> </env-entry>