There are several reasons, but the most important is that the customer has
specified this as a requirement :-)
This RCP application will replace an application which was called with
different command line parameters from other programs. This command line
parameters were the "API" of this program. The RCP application has to be
backward compatible, it has to support the same command line parameters
and the same behaviour (ie activate his workbench window and refresh the
UI, like it was requested in the command line).
But there is also a technical reason: the application starts an embedded
tomcat server, and we want to avoid starting 2 instances with 2 separate
tomcats inside.