diff --git a/src/idl_gen_java.cpp b/src/idl_gen_java.cpp
index c3d0ba7519c203757c67f120648c772efa928a18..89eb051d2d493e6abe1c1001b97c88e038e133cd 100755
--- a/src/idl_gen_java.cpp
+++ b/src/idl_gen_java.cpp
@@ -335,7 +335,7 @@ static void GenStruct(StructDef &struct_def,
         code += "  public static void start" + MakeCamel(field.name);
         code += "Vector(FlatBufferBuilder builder, int numElems) ";
         code += "{ builder.startVector(";
-        code += NumToString(InlineSize(field.value.type));
+        code += NumToString(InlineSize(field.value.type.VectorType()));
         code += ", numElems); }\n";
       }
     }
diff --git a/tests/MyGame/Example/Monster.java b/tests/MyGame/Example/Monster.java
index aa0bf7f0d0160cfa2506db3318b1c76ed322e059..26bdf709573095628cd4c7644757c97873545f7a 100755
--- a/tests/MyGame/Example/Monster.java
+++ b/tests/MyGame/Example/Monster.java
@@ -36,7 +36,7 @@ public class Monster extends Table {
   public static void addHp(FlatBufferBuilder builder, short hp) { builder.addShort(2, hp, 100); }
   public static void addName(FlatBufferBuilder builder, int name) { builder.addOffset(3, name, 0); }
   public static void addInventory(FlatBufferBuilder builder, int inventory) { builder.addOffset(5, inventory, 0); }
-  public static void startInventoryVector(FlatBufferBuilder builder, int numElems) { builder.startVector(4, numElems); }
+  public static void startInventoryVector(FlatBufferBuilder builder, int numElems) { builder.startVector(1, numElems); }
   public static void addColor(FlatBufferBuilder builder, byte color) { builder.addByte(6, color, 2); }
   public static void addTestType(FlatBufferBuilder builder, byte testType) { builder.addByte(7, testType, 0); }
   public static void addTest(FlatBufferBuilder builder, int test) { builder.addOffset(8, test, 0); }