Uploaded image for project: 'OptaPlanner'
  1. OptaPlanner
  2. PLANNER-55

Benchmarker should support custom reading and writing of solutions (it should not enforce 1 specific xstream configuration)

XMLWordPrintable

      Title was: Benchmark doesn't allow for de-serializing XMLs with references

      I have a solution configuration serialized via XStream [1]. When I'm attempting to benchmark [2] my solver with that solution, I get the following error:

      [ERROR] Failed to execute goal org.codehaus.mojo:exec-maven-plugin:1.2:java (default-cli) on project tournaments: An exception occured while executing the Java class. null: InvocationTargetException: Problem reading unsolvedSolutionFile: src/main/resources/input-tiny.xml: Invalid reference
      [ERROR] ---- Debugging information ----
      [ERROR] reference : ../../group
      [ERROR] class : org.drools.planner.examples.tournaments.model.Team
      [ERROR] required-type : org.drools.planner.examples.tournaments.model.Team
      [ERROR] converter-type : com.thoughtworks.xstream.converters.reflection.ReflectionConverter
      [ERROR] line number : 22
      [ERROR] class[1] : org.drools.planner.examples.tournaments.TournamentsSolution
      [ERROR] version : null
      [ERROR] -------------------------------

      I can see two solutions:
      a) Make it so that Planner benchmark does understand XStream's XML.
      b) Provide a method inside Planner to serialize Solutions in a way that benchmark will understand them later.

      References:
      [1] https://github.com/triceo/Drooling-Tournaments/blob/master/src/main/resources/input-tiny.xml
      [2] https://github.com/triceo/Drooling-Tournaments/blob/master/src/main/resources/benchmarkConfig.xml
      [3] https://github.com/triceo/Drooling-Tournaments

              gdesmet@redhat.com Geoffrey De Smet (Inactive)
              lpetrovi@redhat.com Lukáš Petrovický (Inactive)
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

                Created:
                Updated:
                Resolved: