What have i done wrong to get a null pointer.

Discussion in 'Plugin Development' started by toxiccoke, Apr 28, 2016.

Thread Status:
Not open for further replies.
  1. Offline

    toxiccoke

    Hi

    So basically im working on a simplified version of factions were there is 4 factions teams players can join im trying to check to see if the player is already in a faction im using a for and if statement but im getting a null pointer from the for statement.

    It would be great if someone could help me out with the problem im getting.

    Hers my code and error.

    Code:
    [14:00:45 ERROR]: null
    org.bukkit.command.CommandException: Unhandled exception executing command 'factions' in plugin ChromaticFactions v1.0
            at org.bukkit.command.PluginCommand.execute(PluginCommand.java:46) ~[spigot.jar:git-Spigot-550ebac-7019900]
            at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:141) ~[spigot.jar:git-Spigot-550ebac-7019900]
            at org.bukkit.craftbukkit.v1_8_R1.CraftServer.dispatchCommand(CraftServer.java:646) ~[spigot.jar:git-Spigot-550ebac-7019900]
            at net.minecraft.server.v1_8_R1.PlayerConnection.handleCommand(PlayerConnection.java:1115) [spigot.jar:git-Spigot-550ebac-7019900]
            at net.minecraft.server.v1_8_R1.PlayerConnection.a(PlayerConnection.java:950) [spigot.jar:git-Spigot-550ebac-7019900]
            at net.minecraft.server.v1_8_R1.PacketPlayInChat.a(PacketPlayInChat.java:26) [spigot.jar:git-Spigot-550ebac-7019900]
            at net.minecraft.server.v1_8_R1.PacketPlayInChat.a(PacketPlayInChat.java:53) [spigot.jar:git-Spigot-550ebac-7019900]
            at net.minecraft.server.v1_8_R1.PacketHandleTask.run(SourceFile:13) [spigot.jar:git-Spigot-550ebac-7019900]
            at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source) [?:1.8.0_77]
            at java.util.concurrent.FutureTask.run(Unknown Source) [?:1.8.0_77]
            at net.minecraft.server.v1_8_R1.MinecraftServer.z(MinecraftServer.java:696) [spigot.jar:git-Spigot-550ebac-7019900]
            at net.minecraft.server.v1_8_R1.DedicatedServer.z(DedicatedServer.java:316) [spigot.jar:git-Spigot-550ebac-7019900]
            at net.minecraft.server.v1_8_R1.MinecraftServer.y(MinecraftServer.java:634) [spigot.jar:git-Spigot-550ebac-7019900]
            at net.minecraft.server.v1_8_R1.MinecraftServer.run(MinecraftServer.java:537) [spigot.jar:git-Spigot-550ebac-7019900]
            at java.lang.Thread.run(Unknown Source) [?:1.8.0_77]
    Caused by: java.lang.NullPointerException
            at chromatic.network.factions.commands.Factions.onCommand(Factions.java:49) ~[?:?]
            at org.bukkit.command.PluginCommand.execute(PluginCommand.java:44) ~[spigot.jar:git-Spigot-550ebac-7019900]
            ... 14 more
    Code:
                if((args[0].equalsIgnoreCase("join")) && (args.length == 2)){
                   
                    if(args[1].equalsIgnoreCase("plagues")){
                       
                        for (String factions : file.getFactionsData().getConfigurationSection("factions").getKeys(false)) {
                            if(file.getFactionsData().getStringList("factions." + factions + ".members").contains(p.getName())){
                           
                                p.sendMessage(ChatUtils.prefix() + "You cannot be in more then one faction.");
                                return true;
                               
                            }
                           
                        }
    
                        List<String> plagues = file.getFactionsData().getStringList("factions.plagues.members");
                        plagues.add(p.getName());
                        file.getFactionsData().set("factions.plagues.members", plagues);
                        file.saveFactionsData();
                        p.sendMessage(ChatUtils.prefix() + "You have joined the faction §5Plagues§7.");
                       
                       
                    }
    Thanks.
    toxiccoke.
     
  2. Offline

    mine-care

  3. Offline

    toxiccoke

    @mine-care i understand that the for statement is causing the error but i don't know why it is causing it
     
  4. Offline

    mine-care

    @toxiccoke
    Think, what can possibly cause a null pointer there?
    Possibilities:
    file is null
    getFactionData() returns null
    there is no configuration section named 'factions'

    So do your debuging and you will find out what is null ;)
     
Thread Status:
Not open for further replies.

Share This Page