[
https://issues.apache.org/jira/browse/WICKET-2846?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12872967#action_12872967
]
Alexandru Objelean commented on WICKET-2846:
--------------------------------------------
The main reason why this cannot be moved outside the UI tier is:
- the use case is to have some sort of component which launch a long running
task and have a clear visual indication of the status (in progress, complete,
not started).
One more thing I want to point out is that though there was a long discussion
about the problem the ITL may cause, nobody actually managed to prove it:
http://apache-wicket.1842946.n4.nabble.com/vote-Revert-WICKET-2846-td2226987i20.html
> Store Application in InheritableThreadLocal instead of ThreadLocal
> ------------------------------------------------------------------
>
> Key: WICKET-2846
> URL: https://issues.apache.org/jira/browse/WICKET-2846
> Project: Wicket
> Issue Type: Improvement
> Components: wicket
> Reporter: Alexandru Objelean
> Assignee: Jeremy Thomerson
> Priority: Minor
> Fix For: 1.4.10
>
> Attachments: wicket-application-leak.tar.gz
>
>
> Is there any particular reason why Application class wouldn't be stored in
> InheritableThreadLocal instead of ThreadLocal? The problem is that I need to
> be able to access Application class from a thread created when a button is
> pressed. Using InheritableThreadLocal instead of ThreadLocal would solve
> this problem.
> Use case example:
> public class MyPage extends Page {
> @SpringBean
> private MyService service;
> //perform a polling of long running process triggered by a button click
> onClickButton() {
> new Thread() {
> run() {
> service.executeLongRunningProcess();
> }
> }.start();
> }
> }
> The following example won't work well if the Application is not stored in
> InheritableThreadLocal. The reason why it doesn't work, as I understand that,
> is because @SpringBean lookup depends on Application instance which is not
> accessible from within the thread. Having it stored inside of ITL would solve
> the problem.
> Thanks!
> Alex
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.