Is using Try[Unit] the proper way?

error-handling, scala, scala-2.10

Solution

`Try[Unit]` is normal. For example, if you persist the entity, you can use:

try { 
    em.persist(entity)
} catch{
  case ex:PersistenceException =>
  handle(ex)
} 

or just

Try(em.persist(entity)) match {
  case Success(_) => 
  case Failure(ex) => handle(ex)
}

Problem

I recently came across the concept of `Try`/`Success`/`Failure`, and I am wondering how to use it for a method that has the return type `Unit`. Is using `Try[Unit]` the correct way? Maybe I am too influenced from my Java background, but is it a good idea to force the caller to deal with the problem?

Original source