1) You should take several thread dumps, spaced a few seconds apart, to see what the app server is doing during startup.
2) You should ask about this in the Solaris forum (or ask Sun support). Most likely it is an issue pertaining to the Sun JVM and its interaction with Solaris. (Sounds like CPU cache trashing to me, I recommend also setting processor affinity so that the app server runs on at most 4 CPUs, but I don't know how to do that in Solaris.)
a little late but thanks for your suggestions.
It finally turned out that there is parameter called UseLargePages, that exists since jdk1.5.
This parameter is inactive on Windows/Linux etc. per default, but active on Solaris. Setting this parameter to inactive solved the problem.