Java.lang.IllegalStateException: объект запроса был переработан и больше не связан с этим фасадом.JAVA

Программисты JAVA общаются здесь
Ответить Пред. темаСлед. тема
Anonymous
 Java.lang.IllegalStateException: объект запроса был переработан и больше не связан с этим фасадом.

Сообщение Anonymous »

Я создал функцию времени в Vaadin, используя планировщик для обновления метки каждую секунду.

Код: Выделить всё

  if (getUI().isPresent()) {
ScheduledExecutorService scheduler = Executors.newScheduledThreadPool(1);
UI ui = getUI().get();

Runnable repeatedTask = () -> {
if (ui.isAttached()) {
ui.access(() -> {
timeLabel.setText(
DateTimeFormatter.ofPattern("HH:mm:ss").format(LocalDateTime.now()));
});
}

};
scheduler.scheduleAtFixedRate(repeatedTask, 1, 1, TimeUnit.SECONDS);
ScheduledExecutorService shutdownSchedule = Executors.newScheduledThreadPool(1);
Runnable shutdownTask = () -> {
scheduler.shutdown();
shutdownSchedule.shutdown();
};
shutdownSchedule.schedule(shutdownTask, 3, TimeUnit.MINUTES);
}

Когда я запускаю программу локально, проблем нет, но в рабочей среде отображается это сообщение об ошибке.

Код: Выделить всё

java.lang.IllegalStateException: The request object has been recycled and is no longer associated with this facade
at org.apache.catalina.connector.RequestFacade.removeAttribute(RequestFacade.java:549) ~[tomcat-embed-core-10.1.5.jar:10.1.5]
at org.apache.catalina.core.ApplicationHttpRequest.removeAttribute(ApplicationHttpRequest.java:281) ~[tomcat-embed-core-10.1.5.jar:10.1.5]
at jakarta.servlet.ServletRequestWrapper.removeAttribute(ServletRequestWrapper.java:268) ~[tomcat-embed-core-10.1.5.jar:6.0]
at jakarta.servlet.ServletRequestWrapper.removeAttribute(ServletRequestWrapper.java:268) ~[tomcat-embed-core-10.1.5.jar:6.0]
at org.atmosphere.cpr.
.AtmosphereRequestImpl.removeAttribute(AtmosphereRequestImpl.java:681) ~[atmosphere-runtime-3.0.0.slf4jvaadin2.jar:3.0.0.slf4jvaadin2]
at org.atmosphere.cpr.DefaultBroadcaster.executeAsyncWrite(DefaultBroadcaster.java:915) ~[atmosphere-runtime-3.0.0.slf4jvaadin2.jar:3.0.0.slf4jvaadin2] at org.atmosphere.cpr.DefaultBroadcaster$2.run(DefaultBroadcaster.java:477) ~[atmosphere-runtime-3.0.0.slf4jvaadin2.jar:3.0.0.slf4jvaadin2] at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) ~[na:na]
at java.base/java.util.concurrent.FutureTask.run(F (FutureTask.java:264) ~[na:na]
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) ~[na:na]
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) ~[na:na] at java.base/java.lang.Thread.run(Thread.java:833) ~[na:na]
: This message com.vaadin.flow.server.communication.  AtmospherePushConnection$PushMessage@6cbb2d50 will be lost for AtmosphereResour : Failed to execute a write operation for Broadcaster /*
2023-10-02T13:11:23.767+08:00 WARN 254255 --- [here-Shared-278] org.atmosphere.cpr.DefaultBroadcaster ce 999e5bfb-9531-4708-bff3-195024ca36d1, adding it to the BroadcasterCache 2023-10-02T13:11:23.767+08:00 WARN 254255 [here-Shared-278] org.atmosphere.cpr.DefaultBroadcaster java.lang.IllegalStateException: The request object has been recycled and is no longer associated with this facade
at org.apache.catalina.connector.RequestFacade.removeAttribute(RequestFacade.java:549) ~[tomcat-embed-core-10.1.5.jar:10.1.5]
at org.apache.catalina.core.ApplicationHttpRequest.removeAttribute(ApplicationHttpRequest.java:281) ~[tomcat-embed-core-10.1.5.jar:10.1.5]
at jakarta.servlet.ServletRequestWrapper.removeAttribute(ServletRequestWrapper.java:268) ~[tomcat-embed-core-10.1.5.jar:6.0]
at jakarta.servlet.ServletRequestWrapper.removeAttribute(ServletRequestWrapper.java:268) ~[tomcat-embed-core-10.1.5.jar:6.0]
at org.atmosphere.cpr.
.AtmosphereRequestImpl.removeAttribute(AtmosphereRequestImpl.java:681) ~[atmosphere-runtime-3.0.0.slf4jvaadin2.jar:3.0.0.slf4jvaadin2]
at org.atmosphere.cpr.DefaultBroadcaster.executeAsyncWrite(DefaultBroadcaster.java:915) ~[atmosphere-runtime-3.0.0.slf4jvaadin2.jar:3.0.0.slf4jvaadin2] at org.atmosphere.cpr.DefaultBroadcaster$2.run(DefaultBroadcaster.java:477) ~[atmosphere-runtime-3.0.0.slf4jvaadin2.jar:3.0.0.slf4jvaadin2] at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) ~[na:na]
at java.base/java.util.concurrent.FutureTask.run(F (FutureTask.java:264) ~[na:na]
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) ~[na:na]
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) ~[na:na]
at java.base/java.lang.Thread.run(Thread.java:833) ~[na:na]
2023-10-02T13:11:25.767+08:00 WARN 254255 --- [here-Shared-282] org.atmosphere.cpr.DefaultBroadcaster 2023-10-02T13:11:25.767+08:00 WARN 254255 [here-Shared-282] org.atmosphere.cpr.DefaultBroadcaster
ce 999e5bfb-9531-4708-bff3-195024ca36d1, adding it to the BroadcasterCache
: This message com.vaadin.flow.server.communication. Atmosphere PushConnection$PushMessage@48d18881 will be lost for AtmosphereResour : Failed to execute a write operation for Broadcaster /*
java.lang.IllegalStateException: The request object has been recycled and is no longer associated with this facade
at org.apache.catalina.connector.RequestFacade.removeAttribute(RequestFacade.java:549) ~[tomcat-embed-core-10.1.5.jar:10.1.5]
at org.apache.catalina.core.ApplicationHttpRequest.removeAttribute(ApplicationHttpRequest.java:281) ~[tomcat-embed-core-10.1.5.jar:10.1.5] .servlet.ServletRequestWrapper.removeAttribute(ServletRequestWrapper.java:268) ~[tomcat-embed-core-10.1.5.jar:6.0]
at
at
at org.atmosphere.cpr.
at org.atmosphere.cpr.AtmosphereRequestImpl.removeAttribute(AtmosphereRequestImpl.java:681) ~[atmosphere-runtime-3.0.0.slf4jvaadin2.jar:3.0.0.slf4jvaadin2] at org.atmosphere. .cpr.
.executeAsyncWrite(DefaultBroadcaster.java:915) ~[atmosphere-runtime-3.0.0.slf4jvaadin2.jar:3.0.0.slf4jvaadin2]
at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) ~[na:na]
at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) ~[na:na]
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) ~[na:na]
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) ~[na:na]
at java.base/java.lang.Thread.run(Thread.java:833) ~[na:na]
·Defair to do ver $2.run(DefaultBroadcaster.java:477) ~[atmosphere-runtime-3.0.0.slf4jvaadin2.jar:3.0.0.slf4jvaadin2]
X
Изображение

Я считаю, что причиной этой проблемы является то, что планировщик пытается обновить метку каждую секунду, но я не знаю, как это исправить. Я использую Vaadin 24, и буду очень признателен за любую помощь.

Подробнее здесь: https://stackoverflow.com/questions/772 ... -and-is-no
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «JAVA»