|
From: Mohamed B. <bi...@gm...> - 2008-04-11 10:07:27
|
Hello All,
With reference to the email below I finally got my simulation to work. I
tried everything possible until I finally mimicked an example and created a
file in the .rs directory called
repast.simphony.dataloader.engine.ClassNameLoaderAction_0.xml and put inside
the name of my context creator class! now everything worked. Can someone
help me with explaining what exactly is the role of this file and why wasn't
it created automatically? or did the predatorprey example also create this
file manually?
Any explanation is appreciated and helps me better understand repast.
Cheers,
M
---------- Forwarded message ----------
From: Mohamed Bishr <bi...@gm...>
Date: Thu, Apr 10, 2008 at 1:59 PM
Subject: problem initializing simulation
To: rep...@li...
Hello,
I have modified my test simulation which was working normally. I had two
agent classes and when I start symphony I used to create a Grid display and
add agents to the grid using the editor. I then later built a context
creator class. Now when I start symphony and initialize the model I get the
following error in symphony (and below is my context creator class):
2008/04/10 13:58:15,970: Error while initializing simulation
java.lang.NullPointerException
at
repast.simphony.engine.controller.WatcherControllerAction.runInitialize(WatcherControllerAction.java:41)
at
repast.simphony.engine.controller.DefaultController$2.visit(DefaultController.java:171)
at
repast.simphony.engine.controller.DefaultController$2.visit(DefaultController.java:1)
at
repast.simphony.util.collections.NaryTree.preOrderTraverals(NaryTree.java:287)
at
repast.simphony.util.collections.NaryTree.preOrderTraverals(NaryTree.java:290)
at
repast.simphony.util.collections.NaryTree.preOrderTraverals(NaryTree.java:290)
at
repast.simphony.util.collections.NaryTree.preOrderTraversal(NaryTree.java:283)
at
repast.simphony.engine.controller.DefaultController.runInitialize(DefaultController.java:169)
at
repast.simphony.engine.controller.DefaultController.runInitialize(DefaultController.java:317)
at repast.simphony.ui.RSApplication.initSim(RSApplication.java:121)
at repast.simphony.ui.action.InitRun.actionPerformed(InitRun.java:17)
at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1882)
at
javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2202)
at
javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:420)
at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:258)
at
javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:236)
at java.awt.AWTEventMulticaster.mouseReleased(AWTEventMulticaster.java:231)
at java.awt.Component.processMouseEvent(Component.java:5602)
at javax.swing.JComponent.processMouseEvent(JComponent.java:3135)
at java.awt.Component.processEvent(Component.java:5367)
at java.awt.Container.processEvent(Container.java:2010)
at java.awt.Component.dispatchEventImpl(Component.java:4068)
at java.awt.Container.dispatchEventImpl(Container.java:2068)
at java.awt.Component.dispatchEvent(Component.java:3903)
at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4256)
at java.awt.LightweightDispatcher.processMouseEvent(Container.java:3936)
at java.awt.LightweightDispatcher.dispatchEvent(Container.java:3866)
at java.awt.Container.dispatchEventImpl(Container.java:2054)
at java.awt.Window.dispatchEventImpl(Window.java:1791)
at java.awt.Component.dispatchEvent(Component.java:3903)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:463)
at
java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchThread.java:269)
at
java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:190)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:184)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:176)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:110)
why is this error happening? here is my context creator class:
public class TrustModel implements ContextBuilder{
@SuppressWarnings("unchecked")
public Context build(Context context){
int xdim;
int ydim;
int initialNumberofAgents;
String agentID = "Agent-";
Parameters p = RunEnvironment.getInstance().getParameters();
initialNumberofAgents = (Integer)p.getValue("initialNumberofAgents");
xdim = (Integer)p.getValue("worldWidth");
ydim = (Integer)p.getValue("worldHight");
GridBuilderParameters params =
GridBuilderParameters.multiOccupancy2D(newSimpleGridAdder(),
new StrictBorders(),xdim, ydim);
GridFactory factory = GridFactoryFinder.createGridFactory(new HashMap());
Grid grid = factory.createGrid("Grid", context, params);
for (int i=0;i<initialNumberofAgents;i++){
Agent_P ap = new Agent_P();
context.add(ap);
ap.nameAgent(agentID+i);
}
return context;
}
}
--
Mohamed Bishr
Institute for Geoinformatics (ifgi)
University of Muenster.
Germany
--
Mohamed Bishr
Institute for Geoinformatics (ifgi)
University of Muenster.
Germany
|