更新:
private final java.util.Properties tilesPropertyMap = new Properties();
private class DelegatingServletConfig implements ServletConfig {
public String getServletName() {
return "TilesConfigurer";
}
public ServletContext getServletContext() {
return servletContext;
}
public String getInitParameter(String paramName) {
return tilesPropertyMap.getProperty(paramName);
}
@Override
public Enumeration<String> getInitParameterNames() {
return tilesPropertyMap.keys(); // returns Enumeration<Object>
}
} 更新:我正在实现ServletConfig,所以必须使用getInitParameterNames()
如何将枚举转换为枚举
发布于 2011-07-30 09:41:42
@Override
public Enumeration<String> getInitParameterNames() {
Enumeration tile = tilesPropertyMap.keys(); // returns Enumeration<Object>
return tile;
}发布于 2011-07-30 07:54:12
我的理解是,您以这种方式初始化了tilesPropertyMap (或多或少):
tilesPropertyMap = new HashMap<Object, Object>();最简单的解决方案是在创建过程中正确初始化HashMap,如下所示:
tilesPropertyMap = new HashMap<String, Object>();现在,您不必转换任何内容,上面所示的方法将非常有效。还是我没听过你的问题?
发布于 2011-07-30 07:54:32
我不会将所有映射键都转换为String。
如果您确实确定这些键中只有字符串,请将map键类型从object更改为string。
new HashMap()<String, Object>;抛出孔图键,可能会抛出一个类异常,您将不得不处理它。
https://stackoverflow.com/questions/6881874
复制相似问题