Utilizzare questa regola per contrassegnare i metodi di implementazione EJB che dispongono di una clausola throws che non corrisponde ai metodi dell'interfaccia remota o home corrispondente. Le clausole throws devono corrispondere; in caso contrario il compilatore RMI genera errori e non è in grado di generare stub RMI. È disponibile una correzione rapida nello scanner di origine. La soluzione rapida rimuove l'eccezione, NullPointerException, dal seguente metodo di implementazione dei bean.
Ad esempio, la seguente riga è definita nell'interfaccia remota:
|
public Object getEmployee(java.lang.String serialNumber) throws RemoteException, SQLException, IllegalStateException; |
|
public Object getEmployee(java.lang.String serialNumber)
throws SQLException, |
Solo le classi di implementazione vengono contrassegnate dalla regola e modificate mediante la correzione rapida. Se l'interfaccia non è corretta, modificarla manualmente aggiungendo l'eccezione mancante. Quindi, eseguire nuovamente l'analisi.
L'eccezione java.rmi.RemoteException non viene copiata delle interfacce all'implementazione del bean. L'implementazione del bean non deve generare RemoteException perché questa azione è anche una violazione della specifica EJB.
Se viene aggiunta un'eccezione, l'operazione import viene aggiunta se può essere risolta. Quando un'eccezione viene rimossa, l'operazione import non viene rimossa nel caso in cui sia utilizzata da altri metodi nella classe. Potrebbe essere necessario organizzare le istruzioni import una volta completate le correzioni rapide.
Gli errori Java devono essere risolti nella definizione del metodo prima che sia possibile rilevare throws non corrispondenti. Se sono presenti errori Java, correggerli ed eseguire nuovamente l'analisi.