lives
lives

Reputation: 1185

opta planner error loading score calculator class

I am trying out a simple example in the opta planner documentation

This is my configuration

<?xml version="1.0" encoding="UTF-8"?>
<solver>
    <!-- Domain model configuration -->
    <scanAnnotatedClasses />
    <!-- Score configuration -->
    <scoreDirectorFactory>
        <scoreDefinitionType>HARD_SOFT</scoreDefinitionType>

        <easyScoreCalculatorClass>
            optaplanner.learn.CloudBalancingEasyScoreCalculator
            </easyScoreCalculatorClass>

    </scoreDirectorFactory>
    <!-- Optimization algorithms configuration -->
    <termination>
        <secondsSpentLimit>30</secondsSpentLimit>
    </termination>
</solver>

When I run the app , I get below error

Exception in thread "main" java.lang.IllegalArgumentException: Unmarshalling of solverConfigResource (solver-config.xml) fails.
    at org.optaplanner.core.impl.solver.XStreamXmlSolverFactory.configure(XStreamXmlSolverFactory.java:114)
    at org.optaplanner.core.api.solver.SolverFactory.createFromXmlResource(SolverFactory.java:108)
    at optaplanner.learn.App.main(App.java:15)
Caused by: com.thoughtworks.xstream.converters.ConversionException: Cannot load java class 
            optaplanner.learn.CloudBalancingEasyScoreCalculator

---- Debugging information ----
message             : Cannot load java class 
            optaplanner.learn.CloudBalancingEasyScoreCalculator

class               : java.lang.Class
required-type       : java.lang.Class
converter-type      : com.thoughtworks.xstream.converters.SingleValueConverterWrapper
wrapped-converter   : com.thoughtworks.xstream.converters.extended.JavaClassConverter
line number         : 11
class[1]            : org.optaplanner.core.config.score.director.ScoreDirectorFactoryConfig
converter-type[1]   : com.thoughtworks.xstream.converters.reflection.ReflectionConverter
class[2]            : org.optaplanner.core.config.solver.SolverConfig

Has anybody faced this issue ? Optaplanner is not able to load the easyscorecalculatorclass. Is any other setting needed to run the sample app ?

Upvotes: 0

Views: 370

Answers (1)

lives
lives

Reputation: 1185

When i wrapped the xml tag to one line it worked

<easyScoreCalculatorClass>optaplanner.learn.CloudBalancingEasyScoreCalculator</easyScoreCalculatorClass>

Upvotes: 1

Related Questions