我必须为之前可能多次问过的问题道歉,但经过广泛搜索后我仍然不确定。
web.xml 可以存储 JSP 页面和 servlet 的配置参数。可以用于同一项目中的bean吗?否则豆子有什么类似的吗?
我要存储的项目将是特定于部署的字符串:数据库驱动程序类、连接字符串和一堆资源路径。
我遇到的选项之一是 java.util.Properties,但是它需要一些编码。
编辑:
为了实现以下建议的解决方案,我已将 ejb-jar.xml 添加到 bean 项目并填充以下内容:
<enterprise-beans>
<session>
<ejb-name>ejbConfigurator</ejb-name>
<env-entry>
<description>Path to the directory containing images</description>
<!--env-entry-name>package.ejbConfigurator/imageBasePath</env-entry-name-->
<env-entry-name>imageBasePath</env-entry-name>
<env-entry-type>java.lang.String</env-entry-type>
<env-entry-value>/home/user/NetBeansProjects/Builder/images</env-entry-value>
</env-entry>
</session>
</enterprise-beans>
未填充带注释的变量:
@Resource(name="imageBasePath")
private String imageBasePath;
或者
@Resource private String imageBasePath;
以及下面的代码
try {
Context ctx = new InitialContext();
this.imageBasePath = (String) ctx.lookup("java:comp/env/imageBasePath");
}
catch (NamingException ex) {
Logger.getLogger(ejbBlanketConfigurator.class.getName()).log(Level.SEVERE, null, ex);
}
抛出异常:
javax.naming.NameNotFoundException: No object bound to name java:comp/env/imageBasePath