你查过了吗
this
,
有时,在运行时将配置信息传递给您无法或无法方便地编码的web应用程序很有用
一张网。xml。在这种情况下,您可以使用
在web中使用相同的名称。xml。
<New class="org.eclipse.jetty.plus.jndi.EnvEntry">
<Arg></Arg>
<Arg>mySpecialValue</Arg>
<Arg type="java.lang.Integer">4000</Arg>
<Arg type="boolean">true</Arg>
</New>
本例定义了一个名为mySpecialValue的虚拟env条目,其中包含
值4000,在整个JVM中是唯一的。在JNDI中输入
java:comp/env/mySpecialValue for
每一个
布尔参数表示该值覆盖env条目
在web中同名。xml。如果不想重写,请忽略
或将其设置为false。
用于内部自定义文件中的资源
etc
,文件说明:
假设以下命名条目位于
$JETTY_HOME/etc/jetty-myjndi.xml
:
<New id="jdbc/myds" class="org.eclipse.jetty.plus.jndi.Resource">
<Arg></Arg>
<Arg>jdbc/myds</Arg>
<Arg>
<New class="com.mysql.jdbc.jdbc2.optional.MysqlConnectionPoolDataSource">
<Set name="Url">jdbc:mysql://localhost:3306/chat</Set>
<Set name="User">root</Set>
<Set name="Password">sillyness</Set>
</New>
</Arg>
</New>
然后你可以链接
jdbc/myds
进入你的webapp的命名空间
java:comp/env/jdbc/myfoo
通过使用
WEB-INF/jetty-env.xml
文件:
<Call class="org.eclipse.jetty.plus.jndi.NamingEntryUtil" name="bindToENC">
<Arg></Arg> <!-- scope of naming entry, ie same as first argument to your naming entry definition, in this case, null -->
<Arg>jdbc/myfoo</Arg>
<Arg>jdbc/myds</Arg>
</Call>
请注意,您
必须
使用WEB-INF/jetty环境。调用
“bindToENC”方法和
不
上下文xml文件,后者不是
在webapp部署的正确阶段解释为
创建了java:comp/env命名空间。