`
kingsz1
  • 浏览: 155168 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

在Glassfish, 我的xml文件该放哪里?

阅读更多
在我的应用里,我想把一些常用的设置放到一个 xml 文件,然后,在应用启动的时候,读取这些设置。
如果是一个桌面应用,就把 xml 放在 jar 相同的目录。但是,如果是 web 项目呢?

我的设置文件 myconfig.xml 很简单:
<?xml version="1.0" encoding="UTF-8"?>
<Mysysteminfo>
	<AppServer>
		<HostIpAddr>192.168.11.6</HostIpAddr>
		<HostPort>8080</HostPort>
		<AppRoot>BulaUser1-war</AppRoot>
		<AppScheme>http</AppScheme>
	</AppServer>
</Mysysteminfo>


在我的 web应用 项目里,有一个 class 来读取这个 myconfig.xml:
public class AppsvrTest {
	public static void main(String args[]) {
		AppsvrParser readSvr = new AppsvrParser();
		List<Appsvr> SvrConfig = readSvr.readConfig("myconfig.xml");
		for (Appsvr appsvr : SvrConfig) {
                        System.out.println(appsvr.getAppscheme());
                        System.out.println(appsvr.getHostipaddr());
                        System.out.println(appsvr.getHostport());
                        System.out.println(appsvr.getApproot());
		}

	}
}


开始的时候,我是把 myconfig.xml 放到与 index.jsp 一起的 /web 目录,编译部署后发现不能读取到 xml 的设置。然后尝试把 myconfig.xml 放在该项目的其他地方,也试过把它放到 /domain/domain1/docroot 等等,都不能读到 xml 的数据。

在网上乱搜,找到一段代码:Get the current directory http://www.rgagnon.com/javadetails/java-0076.html
把这段代码放到我的类里,运行的结果显示:
1)我的当前目录为: domain/domain1/config
2)当前的上级目录是: domain/domain1

呵呵,还真没想到我的应用的当前目录是 domain1/config 呢。现在把 myconfig.xml 复制到 domain1/config,重新编译和部署,就可以正确读取 xml 里的设置。



:-
  • 大小: 31.2 KB
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics