2017-07-17 4 views
-1

Ich arbeite mit fitnesse. Und obwohl ich bereits an Fitnesse Wartung gearbeitet habe, ist dies das erste Mal, dass ich es implementiere.fitnesse slim java.lang.ClassCastException: java.util.ArrayList kann nicht in java.lang.String umgewandelt werden

Alles scheint an Ort und Stelle zu sein, aber ich bekomme die folgende Ausnahme auf meiner Wiki-Seite, wenn ich den Test ausführe.

Fitnesse Wiki-Seite

Fitnesse Wiki Page

Bei der Untersuchung sehe ich, dass das Programm von dem folgenden Schritt beendet:

Die Ausführung verlässt diese Debug-Anweisung The execution exits from this debug statement

Die Daten sind korrekt bei Bedarf abgerufen. Ich verwende hier die Query-Tabelle, um meine Daten zu vergleichen. Alle Werte werden in verschachtelte Listen eingefügt, bis ich die singulären Werte, die ich in jeder Zelle in fitnesse wiki apage benötige, erreicht habe. Die Nachrichtenvariable in dieser Methode hat die folgende Ausnahme:

000002:000014:queryTable_2_1:001810:__EXCEPTION__:fitnesse.slim.SlimError: message:<<NO_METHOD_IN_CLASS table[1] com.ezops.fitnesse.smoketest.SmokeTestConfigReader.>> 
    at fitnesse.slim.MethodExecutionResult$NoMethod.returnValue(MethodExecutionResult.java:28) [fitnesse-standalone.jar:20161106] 
    at fitnesse.slim.StatementExecutor.call(StatementExecutor.java:103) [fitnesse-standalone.jar:20161106] 
    at fitnesse.slim.instructions.CallInstruction.executeInternal(CallInstruction.java:35) [fitnesse-standalone.jar:20161106] 
    at fitnesse.slim.instructions.Instruction.execute(Instruction.java:29) [fitnesse-standalone.jar:20161106] 
    at fitnesse.slim.ListExecutor$Executive.executeStatement(ListExecutor.java:49) [fitnesse-standalone.jar:20161106] 
    at fitnesse.slim.ListExecutor$Executive.executeStatements(ListExecutor.java:43) [fitnesse-standalone.jar:20161106] 
    at fitnesse.slim.ListExecutor.execute(ListExecutor.java:85) [fitnesse-standalone.jar:20161106] 
    at fitnesse.slim.SlimServer.executeInstructions(SlimServer.java:82) [fitnesse-standalone.jar:20161106] 
    at fitnesse.slim.SlimServer.processOneSetOfInstructions(SlimServer.java:75) [fitnesse-standalone.jar:20161106] 
    at fitnesse.slim.SlimServer.tryProcessInstructions(SlimServer.java:62) [fitnesse-standalone.jar:20161106] 
    at fitnesse.slim.SlimServer.serve(SlimServer.java:47) [fitnesse-standalone.jar:20161106] 
    at fitnesse.slim.SlimService.handle(SlimService.java:168) [fitnesse-standalone.jar:20161106] 
    at fitnesse.slim.SlimService.acceptOne(SlimService.java:176) [fitnesse-standalone.jar:20161106] 
    at fitnesse.slim.SlimService.accept(SlimService.java:138) [fitnesse-standalone.jar:20161106] 
    at fitnesse.slim.SlimService.startWithFactory(SlimService.java:91) [fitnesse-standalone.jar:20161106] 
    at fitnesse.slim.SlimService.main(SlimService.java:56) [fitnesse-standalone.jar:20161106]:] 

Antwort

0

Bei der weiteren Analyse wurde mir klar, dass die Frage überschritten Länge des Ergebnisses zurückzuführen war.

Die Länge des Parameters, der an die OutputStream.write() -Methode übergeben werden soll, sollte die Länge der BufferedOutputStream.buf-Variablen nicht überschreiten. Wenn dies der Fall ist, beendet das Programm die ClassCastException auf Fitnesse Wiki-Seite.

Verwandte Themen