melange icon indicating copy to clipboard operation
melange copied to clipboard

NullPointerException when accessing element in a reference [0..*]

Open fcoulon opened this issue 9 years ago • 0 comments

I modified the 3semantics example to test uniqueness of created adapter and I get a NullPointerException:

Modified part of FSM.melange

transformation execute(FiniteStateMachineUMLMT stateMachine, String input, String outputFile){
    val root = stateMachine.contents.head as finitestatemachines.finitestatemachineumlmt.StateMachine
//  root.eval(new FSM.interfaces.Context(input), outputFile)
    println(root.states)
    println(root.states)
    println(root.states.get(0))
    println(root.states.get(0).outgoing.head.source)
}

The error:

fr.inria.diverse.melange.adapters.EListAdapter@5a8e6209
fr.inria.diverse.melange.adapters.EListAdapter@4b4523f8
Adap<finitestatemachines.finitestatemachineuml.adapters.finitestatemachineumlmt.StateAdapter>(finitestatemachinescomposite.impl.InitialStateImpl@67b92f0a (name: init) (initialTime: 0, finalTime: 0))
Exception in thread "main" java.lang.NullPointerException
    at finitestatemachines.finitestatemachineuml.adapters.finitestatemachineumlmt.TransitionAdapter.getSource(TransitionAdapter.java:63)
    at finitestatemachines.execute.call(execute.java:29)
    at finitestatemachines.main.call(main.java:13)
    at finitestatemachines.main.main(main.java:18)

I guess it come from ListAdapter

fcoulon avatar Apr 03 '15 16:04 fcoulon