Community
Participate
Working Groups
Build Identifier: WTP 3.2 The action Run on Server can cause the UI to hang if the call to the delegates ILaunchableAdapter.getLaunchable() hangs. In this situation the delegate call hangs (which is likely a defect in our adaptor product) but the WTP server tools framework could handle this scenario better by not putting this call in the UI thread. The Run on Server action is meant to be a background job however in the code for LaunchClientJob#run() a call to Display#asyncExec() is made to run the client in the UI (since the UI could be to launch a web browser, i.e. running a servlet on the server). I think this code tries to be too safe by executing the call to ILaunchableAdapter.getLaunchable() in the UI thread but I do not think that is necessary. Since this call would never really run any UI code (the call to IClient#launch will do that) then I think it would be safe to take it out of the Display.asyncExec() block. I will attached a patch which will correct this problem. Reproducible: Always Steps to Reproduce: 1. Cause the call to ILaunchableAdapter.getLaunchable() to hang when performing a Run on Server scenario.
Created attachment 170679 [details] possible patch.
Changes committed to 32M
Changes released to 32M
changes committed to HEAD
changes released to HEAD
New Gerrit change created: https://git.eclipse.org/r/109010