Чтобы получить cookie в Java с использованием Selenide, вы можете воспользоваться методами, предоставляемыми этой библиотекой. Не нужно использовать `javax.servlet`, так как Selenide предоставляет собственные методы для работы с cookies.
Вот пример, как можно получить refresh token из cookie после авторизации с помощью Selenide:
```java
import com.codeborne.selenide.Selenide;
import com.codeborne.selenide.Selectors;
import static com.codeborne.selenide.Selenide.*;
public class MyTest {
public static void main(String[] args) {
// Открываем страницу авторизации
open("https://example.com/login");
// Вводим логин и пароль
$("input[name='username']").setValue("your_username");
$("input[name='password']").setValue("your_password");
$("button[type='submit']").click();
// Дождаться, пока авторизация завершится
// Подождем некоторое время, если нужно, чтобы страница загрузилась
Selenide.sleep(5000); // замените это на более подходящий метод ожидания
// Получаем все cookies
String refreshToken = getCookie("refresh");
if (refreshToken != null) {
System.out.println("Refresh Token: " + refreshToken);
} else {
System.out.println("Refresh token не найден.");
}
// Закрываем браузер
Selenide.closeWebDriver();
}
private static String getCookie(String cookieName) {
return Selenide.getWebDriver().manage().getCookieNamed(cookieName) != null ?
Selenide.getWebDriver().manage().getCookieNamed(cookieName).getValue() : null;
}
}
```
Обратите внимание на следующие моменты:
1. Убедитесь, что установлены зависимости `Selenide` в вашем проекте.
2. Замените URL, имя пользователя и пароль на свои собственные данные.
3. Вместо `Selenide.sleep(5000)` вы можете использовать более разумный метод ожидания, например, `waitUntil` или `shouldBe`, чтобы ждать появления определенного элемента на странице.
4. Если вы используете Java 11 и выше, также убедитесь, что версия Selenide поддерживает вашу версию Java.
Этот код выполняет авторизацию, ждет несколько секунд (вы можете настроить подходящий wait), а затем получает refresh token из cookies.