I am pretty confident if you implement this as written you will find yourself restarting the applications frequently to get the login page to work. There is a lot of JDBC connection pooling and you may even kill some concurrent managers waiting for something to do.
What is safe to do is kill self blocking forms sessions from the back end. If a user locks a row and is disconnected, when they go back to complete their work the shadow process form their earlier session is usually still holding the same row, and they create a blocking lock trying to resume their work. The original blocker will generally never clear itself so they are safe to kill.