Null Pointer at getDisplayName()

Discussion in 'Plugin Development' started by ItsComits, Jun 28, 2017.

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

    ItsComits

    Hello, I have been getting this null pointer for a while now. I have tried to check whether the item in hand has item meta and a display name.
    Here is the code where I check the null pointers etc:
    Code:
      if (player.getItemInHand() != null && player.getItemInHand().hasItemMeta()
                        && player.getItemInHand().getItemMeta().hasDisplayName()) {
    The null pointer comes from getDisplayName() which is here in my code:
    Code:
      if (player.getItemInHand().getItemMeta().getDisplayName().equalsIgnoreCase(displayName)) {
     e.setCancelled(true);
    Any help regarding this will be greatly appreciated :)
     
  2. Offline

    timtower Administrator Administrator Moderator

    @ItsComits Print the values of player.getItemInHand() and player.getItemInHand().getMetaData() and displayName
     
  3. Offline

    ItsComits

    Ok. This is what the output was:
    Code:
    [15:07:32 INFO]: ItemInHand: ItemStack{SKULL_ITEM x 1, SKULL_META:{meta-type=SKULL, display-name=º5Randomerº7(Right-Click), lore=[ , º7Right-Click to have a higher chance of, º7finding a ºaRandom Itemº7.], internal=H4sIAAAAAAAAAE1QyY6jRgBlRonU05rPyK3VMhQY8KEP2CwGG7DZKUWKKBa72DFglm/KR8Z9y/Wteu+dIN6J33YxluXl0WS4TN+In2pC/MWSbAqyjPxME477ZHgGfO4SNv5MqYSmARVzPM2/E+8vU5s+Bpz2v4i3IZ2H8ZH27wRB/Hgjftn4VkffyM9/RW8Ec9QLjAPISHYwTXJQz4rmFKgDHnr2+FSQCs54anT1+CA/hkmbRk5T2smUFElwkFU3jOM7hmCUTnKrxpOSI+Thk23OiNxUzcHuio/hbj0KE7GGg0/6LbxuyhnalLyjLvc2PBxMfIzzZQeuVqRe/O2qupkGK+2wFqeRZQTSCOJHVUCwHqNBQNg0VO+WOkOY5Ny2ufIn2AR9AYp5G/EPIAtJdSryyL6M7XkS1w9+GFtb5JYTFlk7axZSPhn7OrrwFm273djh/irgODmOEV+Ij1LupxZ86KfRErNyEyEQ7CZY9PuqkeaXlaq2QacYqtsLluDWbndbtFlAt49ayCV4C0LPMfOWHBgwzxeanoMdGdwpUGfqk0lt35zWgjnpHtuJ/tEDa5gyl9lzQ0U6ax7X0IsUOOF8XR7W6ugcpyzdkRGRnV534rYzOWGiYO8oMr90bdyMYcbXs3zawyzzwUA6+sWgnFS4k/4+5vPXhftuY3bBVJynbUsymZQm8eNxLsCyLrnHeAOLdsaBOysOW3emvG66RnI2U+h4fSpS92SkMc0MAPESXSIR3xIlC8TnvEnCNtzfrM6j+2F3RYrTzu2ZXVFTu/g5qNQznc/JMCQ0Yyk1mpKmUjmR7aXhceH6YJZCtAWWN2s+E9xWLkQJ0ovNYF5nmnIjEtWKIBmIXvttF8gLItlCorj+643404vKMf3xd7poZORTZUxbdxQI2Mwl0nRuwHBUoK/ubIhhr9b7BQHYIsXT4EFl1TycjMpdYBVO0L/SxnplDFHdQhHm0JELfdUX3ddpU9QZFU84PmpPWJU9dLd35LvYxJphSzBzA++7t0WAweeDtkZ+MoaBRcWVZ8NApqJAK7/7kqNGQXvCieIxydFbYKBjs+6xSw6ag1X2teHlmb5zm+RoTSbmn//TjsgvR+gbS+hD8lxty+SwI2FwJ5NX/vl7Y24UL+4ernJhOvLdVPSt7lvYcGIQAvmFx699+mrk8QuXAHQkBor3ynixeh7TpgJzQ0wwfH1nVCpQa2qXXb++COKN+MOIqpT4rR/lf65j2g+4qQniPwpYhsiTBAAA, skull-owner=MHF_Question}}
    [15:07:32 INFO]: hasItemMeta: true
    [15:07:32 INFO]: ItemInHand: ItemStack{AIR x 0}
    [15:07:32 INFO]: hasItemMeta: false
     
    Last edited: Jul 1, 2017
  4. Offline

    timtower Administrator Administrator Moderator

    @ItsComits Nice to see that you know how to debug.
    What is the value of displayName ?
     
  5. Offline

    ItsComits

    There is no specific value for the displayName as I looped through multiple display names in the config to check if it is equal to the item in the hand displayName.
     
  6. Offline

    FrostedSnowman

    u do not need to check for ItemStack#hasItemMeta

    it will create an empty one if the item stack does not have one
     
Thread Status:
Not open for further replies.

Share This Page