通过应用程序读取WebSphere环境变量

因为特殊原因,需要把某些与应用部署环境相关的信息配置在Was Server上,但是在Java应用中能否取到WebSphere的环境变量信息呢?搜索资料后,找到方法,解决代码如下:


public class WasVariableUtil {
public static String loadVariable(String variableString) throws Throwable {
String result = null;
AdminService adminService = AdminServiceFactory.getAdminService();
ObjectName adminObjectQuery = new ObjectName("WebSphere:*,type=AdminOperations");
Set objectNames = adminService.queryNames(adminObjectQuery, null);
if (!objectNames.isEmpty()) {
ObjectName adminObjectName = (ObjectName) objectNames.iterator().next();
String operationName = "expandVariable";
String signature[] = { String.class.getName() };
String params[] = { variableString };
Object retVal = adminService.invoke(adminObjectName, operationName, params, signature);
result = String.valueOf(retVal);
}
return result;
}

public static void main(String[] args) {

String result = null;
try {
result = WasVariableUtil.loadVariable("${WAS_INSTALL_ROOT}");
} catch (Throwable e) {
e.printStackTrace();
result = "Default Value";
}
System.out.println(result);
}
}




以上为代码实现。此外,还依赖Was Client的jar,名称为:com.ibm.ws.webservices.thinclient_6.1.0.jar,在WebSphere的安装目录/opt/IBM/WebSphere/AppServer/runtimes(Linux环境)下可以找到此Jar包
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值