Зависит от того, является ли SomeException проверенным исключением или нет. Если это так (оно расширяет Exception, но не RuntimeException), тогда вы должны объявить его в методе или вместо этого выдать RuntimeException.
Вот как должен выглядеть ваш код:
...) throws SomeException {
....
try {
....
} catch (Exception e) {
throw new SomeException(e);
}
Если у какого-то исключения нет конструктора, который принимает исключение, сделайте следующее:
throw (SomeException) new SomeException().initCause(e);
Таким образом, когда исключение в конечном итоге обнаруживается, вы знаете причину проблемы.