Java 类型不匹配:无法从元素类型对象转换为Cookie

Java 类型不匹配:无法从元素类型对象转换为Cookie,java,type-mismatch,Java,Type Mismatch,我一直在试图找到一种从Selenium内的网站下载文件的方法,并找到了一种解决方案 问题是,当我复制这个示例并将其粘贴到eclipse中时,我在一行中得到了一个错误:- Type mismatch: cannot convert from element type Object to Cookie LOG.info("Mimic WebDriver cookie state: " + this.mimicWebDriverCookieState); if (this.mimicWebDrive

我一直在试图找到一种从Selenium内的网站下载文件的方法,并找到了一种解决方案

问题是,当我复制这个示例并将其粘贴到eclipse中时,我在一行中得到了一个错误:-

Type mismatch: cannot convert from element type Object to Cookie
LOG.info("Mimic WebDriver cookie state: " + this.mimicWebDriverCookieState);
if (this.mimicWebDriverCookieState) {
    localContext.setAttribute(ClientContext.COOKIE_STORE, mimicCookieState(this.driver.manage().getCookies()));
}
有关章节为:-

private BasicCookieStore mimicCookieState(Set seleniumCookieSet) {
        BasicCookieStore mimicWebDriverCookieStore = new BasicCookieStore();
        for (Cookie seleniumCookie : seleniumCookieSet) {    <<---This is the problem line
            BasicClientCookie duplicateCookie = new BasicClientCookie(seleniumCookie.getName(), seleniumCookie.getValue());
            duplicateCookie.setDomain(seleniumCookie.getDomain());
            duplicateCookie.setSecure(seleniumCookie.isSecure());
            duplicateCookie.setExpiryDate(seleniumCookie.getExpiry());
            duplicateCookie.setPath(seleniumCookie.getPath());
            mimicWebDriverCookieStore.addCookie(duplicateCookie);
        }
        return mimicWebDriverCookieStore;
    }
我不知道如何解决这个问题,因为我没有写过任何代码,也不是很熟悉,加上最初的帖子是一年多前发布的,所以我猜现在不再被监控/更新了

有人能帮我弄清楚这个吗


非常感谢您的帮助。

这是因为您使用原始类型
Set
作为参数。将其更改为
Set
。对于原始类型
,您得到的迭代器只是
迭代器
。它的
next()
方法将为您提供类型为
Object

的元素,尝试使用泛型
集(或
)而不是原始
,大多数转换问题将很容易解决。原始类型仅用于向后支持,在过去7年中编写的任何代码中都应避免使用原始类型。这将消除验证警告,干杯!一旦Stackoverflow允许我,我将标记为答案!:)