我已将.properties
文件放在webapps
的{{1}}文件夹中,但无法访问该文件。
我的tomcat
位于servlet
下的目录中。
我是否必须更改我的java代码以查看父目录?
webapps
答案 0 :(得分:2)
要访问应用程序目录中的文件,您应该使用以下命令:
private static final ResourceBundle ldap = ResourceBundle.getBundle("js_ldap.properties");
关于属性文件的放置,我不认为将它放在webapps目录中是个好主意。请注意,您作为开发人员无法访问生产环境中的此目录。
更好的解决方案是将这些文件包含在jar中,并将此jar放在Tomcat的类路径中。这样,属性文件可以被许多应用程序共享。
答案 1 :(得分:1)
如果文件已发货,请将文件复制到类路径(src / main / resources / anything.properties)中。像往常一样使用ResourceBundle或Properties类加载它。
如果文件在许多应用程序中共享,并且经常更改或特定于服务器,则将其放在服务器上任意位置的目录中,提供正确的权限,并使用absoluth加载它path using(Classloader)。 getResourcesAsStream (...)。不要把它放到服务器目录中,因为如果有人更改了服务器,它可能会被删除。
正如我所见,您正在尝试加载LDAP属性。如果您正在寻找验证用户身份的方法,请创建JNDIRealm。