Errors after batching

Hello!

About 1 month ago I batched my map and it worked perfet! Loading decreased from 3mins to 30sec! I used back my non-batched map to edit it. Now I added few new models and try to batch again. After I run my game I get strange error:
(thought it was caused by mill rotating control but even without mill on the map it exist)
[java]SEVERE: Uncaught exception thrown in Thread[LWJGL Renderer Thread,5,main]
java.lang.NullPointerException
at com.jme3.bounding.BoundingBox.intersects(BoundingBox.java:587)
at com.jme3.terrain.geomipmap.TerrainQuad.fixNormals(TerrainQuad.java:1606)
at com.jme3.terrain.geomipmap.TerrainQuad.updateNormals(TerrainQuad.java:268)
at com.jme3.terrain.geomipmap.TerrainQuad.read(TerrainQuad.java:1757)
at com.jme3.export.binary.BinaryImporter.readObject(BinaryImporter.java:344)
at com.jme3.export.binary.BinaryInputCapsule.resolveIDs(BinaryInputCapsule.java:483)
at com.jme3.export.binary.BinaryInputCapsule.readSavableArray(BinaryInputCapsule.java:471)
at com.jme3.export.binary.BinaryInputCapsule.readSavableArrayList(BinaryInputCapsule.java:587)
at com.jme3.scene.Node.read(Node.java:599)
at com.jme3.terrain.geomipmap.TerrainQuad.read(TerrainQuad.java:1743)
at com.jme3.export.binary.BinaryImporter.readObject(BinaryImporter.java:344)
at com.jme3.export.binary.BinaryInputCapsule.resolveIDs(BinaryInputCapsule.java:483)
at com.jme3.export.binary.BinaryInputCapsule.readSavableArray(BinaryInputCapsule.java:471)
at com.jme3.export.binary.BinaryInputCapsule.readSavableArrayList(BinaryInputCapsule.java:587)
at com.jme3.scene.Node.read(Node.java:599)
at com.jme3.terrain.geomipmap.TerrainQuad.read(TerrainQuad.java:1743)
at com.jme3.export.binary.BinaryImporter.readObject(BinaryImporter.java:344)
at com.jme3.export.binary.BinaryInputCapsule.resolveIDs(BinaryInputCapsule.java:483)
at com.jme3.export.binary.BinaryInputCapsule.readSavableArray(BinaryInputCapsule.java:471)
at com.jme3.export.binary.BinaryInputCapsule.readSavableArrayList(BinaryInputCapsule.java:587)
at com.jme3.scene.Node.read(Node.java:599)
at com.jme3.export.binary.BinaryImporter.readObject(BinaryImporter.java:344)
at com.jme3.export.binary.BinaryImporter.load(BinaryImporter.java:242)
at com.jme3.export.binary.BinaryImporter.load(BinaryImporter.java:125)
at com.jme3.export.binary.BinaryImporter.load(BinaryImporter.java:109)
at com.jme3.asset.DesktopAssetManager.loadAsset(DesktopAssetManager.java:288)
at com.jme3.asset.DesktopAssetManager.loadModel(DesktopAssetManager.java:374)
at com.jme3.asset.DesktopAssetManager.loadModel(DesktopAssetManager.java:378)
at sourceWorld.TerrainManager.loadSavedScene(TerrainManager.java:73)
at sourceGame.GameState.initialize(GameState.java:158)
at com.jme3.app.state.AppStateManager.initializePending(AppStateManager.java:251)
at com.jme3.app.state.AppStateManager.update(AppStateManager.java:281)
at com.jme3.app.SimpleApplication.update(SimpleApplication.java:239)
at com.jme3.system.lwjgl.LwjglAbstractDisplay.runLoop(LwjglAbstractDisplay.java:151)
at com.jme3.system.lwjgl.LwjglDisplay.runLoop(LwjglDisplay.java:185)
at com.jme3.system.lwjgl.LwjglAbstractDisplay.run(LwjglAbstractDisplay.java:228)
at java.lang.Thread.run(Thread.java:744)[/java]

EDIT: It was caused by batching terrain. Now I fixed but get that error
: [java]SEVERE: Uncaught exception thrown in Thread[LWJGL Renderer Thread,5,main]
java.lang.ArrayIndexOutOfBoundsException: -32768
at java.util.ArrayList.elementData(ArrayList.java:400)
at java.util.ArrayList.get(ArrayList.java:413)
at jme3tools.optimize.LodGenerator.gatherIndexData(LodGenerator.java:337)
at jme3tools.optimize.LodGenerator.build(LodGenerator.java:275)
at jme3tools.optimize.LodGenerator.<init>(LodGenerator.java:264)
at sourceFilters.LODControl.parseSceneForLOD(LODControl.java:44)
at sourceFilters.LODControl.parseSceneForLOD(LODControl.java:58)
at sourceFilters.LODControl.parseSceneForLOD(LODControl.java:58)
at sourceWorld.TerrainManager.createLODForSceneObjects(TerrainManager.java:66)
at sourceWorld.TerrainManager.loadScene(TerrainManager.java:81)
at sourceWorld.TerrainManager.loadSavedScene(TerrainManager.java:74)
at sourceGame.GameState.initialize(GameState.java:158)
at com.jme3.app.state.AppStateManager.initializePending(AppStateManager.java:251)
at com.jme3.app.state.AppStateManager.update(AppStateManager.java:281)
at com.jme3.app.SimpleApplication.update(SimpleApplication.java:239)
at com.jme3.system.lwjgl.LwjglAbstractDisplay.runLoop(LwjglAbstractDisplay.java:151)
at com.jme3.system.lwjgl.LwjglDisplay.runLoop(LwjglDisplay.java:185)
at com.jme3.system.lwjgl.LwjglAbstractDisplay.run(LwjglAbstractDisplay.java:228)
at java.lang.Thread.run(Thread.java:744)

[/java]

Here’s the method part: (error is at line 6: [java]LodGenerator lodGenerator = new LodGenerator(g);)[/java]
[java]if (spatial instanceof Geometry) {

            Geometry g = (Geometry) spatial;              
         //   g.getMaterial().getAdditionalRenderState().setWireframe(true); //Debug

            LodGenerator lodGenerator = new LodGenerator(g);
            lodGenerator.bakeLods(LodGenerator.TriangleReductionMethod.PROPORTIONAL,
            0.1f, 0.2f, 0.3f, 0.4f, 0.5f, 0.6f, 0.7f, 0.8f, 0.9f);

          //System.out.println("Found geometry " + g.getName() + " = " + g.getMesh().getNumLodLevels());
            
            LODControl lod = new LODControl(10); //Change this value for distance to change LOD
            g.addControl(lod);

            
        } else if (spatial instanceof Node) {
            Node node = (Node) spatial;
            for (int i = 0; i &lt; node.getQuantity(); i++) {
                Spatial child = node.getChild(i);
                parseSceneForLOD(child);
            }[/java]