【发布时间】:2016-01-22 22:31:09
【问题描述】:
我正在使用下面的代码从 Spring Authentication 类中提取 deviceId。
import org.springframework.security.core.Authentication;
import org.springframework.security.core.context.SecurityContextHolder;
import com.google.common.base.Optional;
public static Optional<String> getId() {
Authentication auth = SecurityContextHolder.getContext().getAuthentication();
if (!auth.isAuthenticated()) {
return Optional.absent();
}
// I see a warning as "Type safety: Unchecked cast from Object to Map<String,String>"
Map<String, String> details = (Map<String, String>) auth.getDetails();
return Optional.of(details.get("deviceId"));
}
我如何摆脱这种类型安全警告消息?我想避免添加Suprress Warnings 标签。
类型安全:未经检查的从
Object转换为Map<String,String>
【问题讨论】:
-
如果这是可能的,我会感到惊讶。
标签: java dictionary spring-security