【发布时间】:2009-10-02 15:38:42
【问题描述】:
这可能是一个愚蠢的问题,由于缺少对 java 的一些理解,但我有这个代码:
@Stateless
@WebService
public class MLHRequesterBean implements MLHRequesterBeanRemote {
private final static String sel = "MLHRequesterPU" + (isProduction()? " " : "-dev");
public static boolean isProduction(){
try {
if (Inet4Address.getLocalHost().getHostName().equalsIgnoreCase("ironman")) {
return true;
}
} catch (UnknownHostException ex) {}
return false;
}
@PersistenceContext(unitName=sel)
...
为什么 sel 不被视为常数?我们有我们的测试服务器和生产服务器,每个服务器都应该写入不同的数据库。我该如何克服这个问题?
这是错误:
C:\projects\workspace\MLHRequester\MLHRequester-ejb\src\java\mlh\MLHRequesterBean.java:33:属性值必须是常量 @PersistenceContext(unitName=sel) 1 个错误
【问题讨论】:
标签: java