Stiamo aggiornando la nostra applicazione da Weblogic 10.3.0
a 10.3.6
. Quando cerchiamo di distribuirlo otteniamo l'errore:java.lang.ClassFormatError: Duplica il nome del metodo e la firma nel file di classe
java.lang.ClassFormatError: Duplicate method name&signature in class file...
Con ulteriori indagini abbiamo scoperto che il problema è causato dal codice che assomiglia a questo:
interface Foo{
void foo();
}
interface Bar{
void foo();
}
interface Baz extends Foo, Bar{}
BazEJB implements Baz....
Questo porta a 2 metodi foo generate nel Baz .... ELOImpl.class
che porta a questo errore quando proviamo a distribuire i file ear.
L'ovvia soluzione è rimuovere questo modello, ma ci sono altri suggerimenti? Siamo noi che abbiamo sbagliato qui o che dovrebbe essere considerato un bug in weblogic?
Stiamo ancora utilizzando EJB 2
e questo modello lavorato in Weblogic 8.1 and 10.3.0
interfaccia Baz estende Foo, Bar {} invece dovrebbe interfacciare Baz implementa Foo, Bar {} –
Sbagliato. Interfacce 'estende' altre interfacce. Interfacce 'implements' delle classi. –
È stato solo aggiornato weblogic? Nient'altro? Inoltre, perché questo modello per iniziare? Che cosa cercava di risolvere questo schema? – fge