Spatials attached to a node does not change location when the node does

private void movePhysicsObjects(Node parentNode, Vector3f changeLoc)
    {
        Vector3f temp = new Vector3f();
        for(int i = 0; i < parentNode.getQuantity(); i++)
        {
            temp = parentNode.getChild(i).getControl(RigidBodyControl.class).getPhysicsLocation();
            parentNode.getChild(i).getControl(RigidBodyControl.class).setPhysicsLocation(temp.add(changeLoc));
        }
    }

The function takes each of the children's physical location and adds the vector to it which resembles the position you want to move the node by that affects all its children. I am not sure if this is the best way but this worked for me.

I literally slapped this together with cut and paste from wiki and SDK.

package mygame;

import com.jme3.app.SimpleApplication;
import com.jme3.asset.TextureKey;
import com.jme3.bullet.BulletAppState;
import com.jme3.bullet.PhysicsSpace;
import com.jme3.bullet.collision.shapes.BoxCollisionShape;
import com.jme3.bullet.collision.shapes.SphereCollisionShape;
import com.jme3.bullet.control.RigidBodyControl;
import com.jme3.light.DirectionalLight;
import com.jme3.material.Material;
import com.jme3.math.ColorRGBA;
import com.jme3.math.FastMath;
import com.jme3.math.Quaternion;
import com.jme3.math.Vector2f;
import com.jme3.math.Vector3f;
import com.jme3.renderer.RenderManager;
import com.jme3.renderer.queue.RenderQueue.ShadowMode;
import com.jme3.scene.Geometry;
import com.jme3.scene.Node;
import com.jme3.scene.shape.Box;
import com.jme3.scene.shape.Sphere;
import com.jme3.texture.Texture;
import com.jme3.texture.Texture.WrapMode;
import com.jme3.util.TangentBinormalGenerator;

/**
 * This is the Main Class of your Game. You should only do initialization here.
 * Move your Logic into AppStates or Controls
 *
 * @author normenhansen
 */
public class Main extends SimpleApplication {

    public static final Quaternion PITCH045 = new Quaternion().fromAngleAxis(FastMath.PI / 4, new Vector3f(1, 0, 0));
    private BulletAppState bulletAppState;
    private Node moveNode;
    
    public static void main(String[] args) {
        Main app = new Main();
        app.start();
    }

    @Override
    public void simpleInitApp() {
        bulletAppState = new BulletAppState();
        bulletAppState.setDebugEnabled(true);
        stateManager.attach(bulletAppState);

        this.flyCam.setMoveSpeed(10f);
        this.cam.setLocation(new Vector3f(0f, 15f, -20f));
        this.cam.setRotation(PITCH045);
        
        initMoveNode();
        initBox();
        initShinyBall();
        initObstacle();       
        initFloor();
        initLight();
    }
    
    private void initMoveNode() {
        moveNode = new Node("Move Me");
        moveNode.setLocalTranslation(new Vector3f(-5f, 1f, 0f));
        SphereCollisionShape sphereShape = new SphereCollisionShape(1.0f);
        RigidBodyControl rbc = new RigidBodyControl(sphereShape, 1f);
        moveNode.addControl(rbc);
        rbc.setKinematic(true);
        this.getPhysicsSpace().add(rbc);
        rootNode.attachChild(moveNode);
    }

    private void initBox() {
        Box b = new Box(1, 1, 1);
        Geometry geom = new Geometry("Box", b);
        geom.setLocalTranslation(new Vector3f(3f, 3f, 0f));
        Material mat = new Material(assetManager, "Common/MatDefs/Misc/Unshaded.j3md");
        mat.setColor("Color", ColorRGBA.Blue);
        geom.setMaterial(mat);
        RigidBodyControl rbc = new RigidBodyControl(1f);
        geom.addControl(rbc);
        rbc.setKinematic(true);
        this.getPhysicsSpace().add(rbc);
        moveNode.attachChild(geom);
    }

    private void initShinyBall() {
        /**
         * Illuminated bumpy rock with shiny effect. Uses Texture from
         * jme3-test-data library! Needs light source!
         */
        Sphere sphereMesh = new Sphere(32, 32, 2f);
        Geometry shinyGeo = new Geometry("Shiny rock", sphereMesh);
        shinyGeo.setLocalTranslation(new Vector3f(-3f, 3f, 0f));
        sphereMesh.setTextureMode(Sphere.TextureMode.Projected); // better quality on spheres
        TangentBinormalGenerator.generate(sphereMesh);   // for lighting effect
        Material shinyMat = new Material(assetManager, "Common/MatDefs/Light/Lighting.j3md");
        shinyMat.setTexture("DiffuseMap", assetManager.loadTexture("Textures/Terrain/Pond/Pond.jpg"));
        shinyMat.setTexture("NormalMap", assetManager.loadTexture("Textures/Terrain/Pond/Pond_normal.png"));
        //shinyMat.setTexture("GlowMap", assetManager.loadTexture("Textures/glowmap.png")); // requires glow filter!
        shinyMat.setBoolean("UseMaterialColors", true);  // needed for shininess
        shinyMat.setColor("Specular", ColorRGBA.White); // needed for shininess
        shinyMat.setColor("Diffuse", ColorRGBA.White); // needed for shininess
        shinyMat.setFloat("Shininess", 5f); // shininess from 1-128
        shinyGeo.setMaterial(shinyMat);
        RigidBodyControl rbc = new RigidBodyControl(1f);
        shinyGeo.addControl(rbc);
        rbc.setKinematic(true);
        this.getPhysicsSpace().add(rbc);
        moveNode.attachChild(shinyGeo);
    }

    private void initObstacle() {
        /* A colored lit cube. Needs light source! */
        Box boxMesh = new Box(1f, 1f, 1f);
        Geometry boxGeo = new Geometry("Colored Box", boxMesh);
        boxGeo.setLocalTranslation(new Vector3f(5f, 3f, 0f));
        Material boxMat = new Material(assetManager, "Common/MatDefs/Light/Lighting.j3md");
        boxMat.setBoolean("UseMaterialColors", true);
        boxMat.setColor("Ambient", ColorRGBA.Green);
        boxMat.setColor("Diffuse", ColorRGBA.Green);
        boxGeo.setMaterial(boxMat);
        RigidBodyControl rbc = new RigidBodyControl(1f);
        boxGeo.addControl(rbc);
        this.getPhysicsSpace().add(rbc);
        rootNode.attachChild(boxGeo);
    }
    
    public void initFloor() {
        Box floorBox = new Box(10f, 0.1f, 5f);
        floorBox.scaleTextureCoordinates(new Vector2f(3, 6));
        Material mat3;
        mat3 = new Material(assetManager, "Common/MatDefs/Misc/Unshaded.j3md");
        TextureKey key3 = new TextureKey("Textures/Terrain/Pond/Pond.jpg");
        key3.setGenerateMips(true);
        Texture tex3 = assetManager.loadTexture(key3);
        tex3.setWrap(WrapMode.Repeat);
        mat3.setTexture("ColorMap", tex3);

        Geometry floor = new Geometry("floor", floorBox);
        floor.setMaterial(mat3);
        floor.setShadowMode(ShadowMode.Receive);
        floor.setLocalTranslation(0, -0.1f, 0);
        floor.addControl(new RigidBodyControl(new BoxCollisionShape(new Vector3f(10f, 0.1f, 5f)), 0));
        this.rootNode.attachChild(floor);
        this.getPhysicsSpace().add(floor);
    }
    
    private void initLight() {
        /**
         * A white, directional light source
         */
        DirectionalLight sun = new DirectionalLight();
        sun.setDirection((new Vector3f(-0.5f, -0.5f, -0.5f)).normalizeLocal());
        sun.setColor(ColorRGBA.White);
        rootNode.addLight(sun);
    }

    @Override
    public void simpleUpdate(float tpf) {
        moveNode.move(speed * tpf, 0, 0);
    }

    @Override
    public void simpleRender(RenderManager rm) {
        //TODO: add render code
    }

    private PhysicsSpace getPhysicsSpace() {
        return bulletAppState.getPhysicsSpace();
    }

}

See
https://jmonkeyengine.github.io/wiki/jme3/advanced/physics.html
definitely,
https://jmonkeyengine.github.io/wiki/jme3/advanced/physics.html#kinematic-vs-dynamic-vs-static

and especially Normens code,

https://jmonkeyengine.github.io/wiki/jme3/advanced/sourcecode.html