According to specs, the app-exception will be re-thrown.
But, according to specs too, these ejbs need to commit or rollback the transaction before the method ends.
I did a little test with my JBoss:
And the result is:
javax.ejb.EJBException: Application error: BMT stateless bean MySLSFBean should complete transactions before returning (ejb1.1 spec, 11.6.1); nested exception is: bmtappexception.MyAppException
Caused by: bmtappexception.MyAppException
So, even if you throw an application exception, you need to commit/rollback your transaction (probably in a finally clause).
Hope it helps,