Networking (SpiderMonkey) again

Hello. I did an example follow the tutorial i wiki and it seems even Ok but instead of expected string I am getting such form:
Server received ‘jme3test.helloworld.HelloMessage@1b1a817c’ from client #0
Server received ‘jme3test.helloworld.HelloMessage@12f1e629’ from client #2
Server received ‘jme3test.helloworld.HelloMessage@27f6aea5’ from client #1
and adding helloMessage.toString(); changes nothing.
Why I get an addres instead of string?

Because HelloMessage doesn’t really have a toString().

Whatever you did to add it isn’t really adding it.

That’s all I can tell from here.

Edit: probably you need to rebuild all or something but again we have limited view here into what you’ve actually done so that’s just a guess. If the server didn’t get recompiled then it’s still going to have the old class.

OK. I did it other way. Seemengly comunication is working but adding 3rd client throws:

Uncaught exception thrown in Thread[jME3 Main,5,main]
IllegalStateException: Scene graph is not properly updated for rendering.
State was changed after rootNode.updateGeometricState() call. 
Make sure you do not modify the scene from another thread!
Problem spatial name: netMe2
  1. I dont know why just on third connection (so far) and why it happens.
  2. Position of models is slightly offseted in clients views :face_with_raised_eyebrow: It happens when I update position using setLocalTranslation(x,y,z) - taken from arrayList composed of received message

I assume thats somehow related.

Well, adding the 3rd connection probably just increased the odds of this happening. Never modify the scene from other than the render thread.

Use Application.enqueue method to add you scene graph modification code to happen in render thread.