Lorsque vous étendez une classe avec la classe Exception (pour créer une nouvelle exception), vous recevez un avertissement indiquant que vous avez un serialVersionUID
. Je sais que serialVersionUID
joue un rôle important lors de la sérialisation et de la désérialisation, mais quand mon exception doit-elle être sérialisée ? Quelqu'un peut-il me donner un cas pratique dans lequel je souhaite que ma classe d'exception personnalisée ait une sérialisation et une désérialisation ?
Réponses
Trop de publicités?Si votre exception personnalisée est déjà utilisée dans une application distribuée (à l'aide de RMI, Spring http-invoker, peu importe) et peut être lancée à partir d'une méthode serveur invoquée à partir d'un client distant, l'exception devra être sérialisée pour traverser le fil et allez chez le client.
Vos seules options sont soit de définir serialVersionUID
pour chaque type de Exception
vous définissez (l'IDE peut le générer pour vous) ou de supprimer l'avertissement.
Vous pouvez trouver ma question précédente explicite serialVersionUID considérée comme nuisible ? pertinent.