Der Compiler scheint zwei Versionen einer überladenen Methode zu verwirren. Warum?

8

In meiner jsp-Datei gibt es eine Zeile:

%Vor%

und die Sonnenfinsternis klagt:

  

Die Methode decodeBase64 (byte []) im Typ Base64 ist nicht anwendbar für die Argumente (String) "

Es besagt, dass die Methode ein String erhält, aber ein byte[] erwartet. Aber in der Klasse Base64 gibt es zwei überladene Versionen von decodeBase64 ; eine mit dem Argument String , und eins mit dem Argument byte[] .

Ich verstehe nicht, warum der Compiler zu denken scheint, dass ich die byte[] -Version mit einem falschen String -Argument anrufe, wo er die String -Version ohne irgendeinen Compilerfehler hätte verwenden sollen.

    
Jan de Ruiter 06.11.2012, 13:47
quelle

1 Antwort

8

Base64 -Klasse im Paket org.apache.commons.codec.binary hat 2 Dekodierungsmethoden

%Vor%

Ich denke, Sie müssen Jar vor commons codec 1.4 in Ihrem Klassenpfad

haben

Ich hoffe, es hilft.

    
Sajan Chandran 06.11.2012, 14:01
quelle