[TEEDA-306] サブミット連打対策が不十分だったのを修正 Created: 2007-06-03  Updated: 2007-07-17  Resolved: 2007-06-03

Status: Resolved
Project: Teeda
Component/s: None
Affects Version/s: 1.0.7
Fix Version/s: 1.0.8

Type: Bug Priority: Major
Reporter: higa Assignee: higa
Resolution: Fixed Votes: 0
Labels: None


 Description   

サブミットを連打したときに、これまでは、同じロジックが再度実行されることはないが、タイミングによっては、正しい画面に遷移しないときや、リダイレクトの循環実行とみなされてしまうことがあった。



 Comments   
Comment by jflute [ 2007-07-17 ]

> 正しい画面に遷移しないとき

これは具体的にどういった例外になりますでしょうか?

例えばTomcatだと

Caused by: java.lang.IllegalStateException
at org.apache.catalina.connector.ResponseFacade.sendRedirect(ResponseFacade.java:432)

という感じでしょうか?

> リダイレクトの循環実行

同じく
これは具体的にどういった例外になりますでしょうか?

Caused by: org.seasar.teeda.core.exception.AlreadyRedirectingException: [ETDA0029]既にリダイレクトされています。
at org.seasar.teeda.extension.util.TeedaExtensionErrorPageManagerImpl.handleException(TeedaExtensionErrorPageManagerImpl.java:74)
at org.seasar.teeda.core.lifecycle.LifecycleImpl.handleException(LifecycleImpl.java:112)

という感じでしょうか?

利用者でこの現象で悩んでいる方もいると思うので、例外を具体的に示唆した方が良いかと思いました。
また、既にリリース済みでVersionをUpできないような利用者のために、
どういった修正をしたのかを具体的に提示するのも大事かと思います。
(というか自分がその状況だったり...)

> これからは、アプリケーション側でチェックする必要があります。

こちら、1.0.7から1.0.8へ移行する際の注意点というような形で
利用者へ通知した方がいいかと思いました。(リリースメール等で)

Comment by higa [ 2007-06-03 ]

修正しました。ただし、リダイレクトの循環実行は、フレームワーク側では、サブミット連打と区別つかないため、チェックをはずしました。これからは、アプリケーション側でチェックする必要があります。

Generated at Fri Apr 26 18:13:57 JST 2024 using Jira 9.15.0#9150000-sha1:9ead8528714127d8cfabf2446010d7e62c0a195c.