cyberpwnn / Gloss

API https://github.com/VolmitSoftware/GlossAPI
0 stars 1 forks source link

NullPointerException when server stops #90

Closed Andre601 closed 5 years ago

Andre601 commented 5 years ago

Describe the bug When you disable your server does Gloss throw a NPE when there are holograms in a world which isn't loaded. See stack trace below.

To Reproduce Steps to reproduce the behavior:

  1. Have holograms saved in a world that isn't loaded/null
  2. Stop the server or restart it

Expected behavior There shouldn't be an error or at least not the spammy StackTrace. Perhaps a message about having some holograms in an unloaded world?

Screenshots or Video Recordings

Server and Plugin Informations

Additional context Console error.

>.... [23:38:42 INFO]: [Gloss] Disabling Gloss v1.3.2
>.... [23:38:42 WARN]: java.lang.NullPointerException: Cannot convert ''@'info_1' to JSON, location or world is null
>.... [23:38:42 WARN]: at com.volmit.gloss.context.GlossDescriptor.toJSON(GlossDescriptor.java:167)
>.... [23:38:42 WARN]: at com.volmit.gloss.context.GlossDescriptor.toJSON(GlossDescriptor.java:160)
>.... [23:38:42 WARN]: at com.volmit.gloss.controllers.SourceController.save(SourceController.java:126)
>.... [23:38:42 WARN]: at com.volmit.gloss.controllers.SourceController.stop(SourceController.java:211)
>.... [23:38:42 WARN]: at mortar.bukkit.plugin.MortarPlugin.stopControllers(MortarPlugin.java:595)
>.... [23:38:42 WARN]: at mortar.bukkit.plugin.MortarPlugin.unregisterAll(MortarPlugin.java:88)
>.... [23:38:42 WARN]: at mortar.bukkit.plugin.MortarPlugin.onDisable(MortarPlugin.java:293)
>.... [23:38:42 WARN]: at org.bukkit.plugin.java.JavaPlugin.setEnabled(JavaPlugin.java:265)
>.... [23:38:42 WARN]: at org.bukkit.plugin.java.JavaPluginLoader.disablePlugin(JavaPluginLoader.java:373)
>.... [23:38:42 WARN]: at org.bukkit.plugin.SimplePluginManager.disablePlugin(SimplePluginManager.java:453)
>.... [23:38:42 WARN]: at org.bukkit.plugin.SimplePluginManager.disablePlugins(SimplePluginManager.java:439)
>.... [23:38:42 WARN]: at org.bukkit.plugin.SimplePluginManager.disablePlugins(SimplePluginManager.java:432)
>.... [23:38:42 WARN]: at org.bukkit.craftbukkit.v1_14_R1.CraftServer.disablePlugins(CraftServer.java:401)
>.... [23:38:42 WARN]: at net.minecraft.server.v1_14_R1.MinecraftServer.stop(MinecraftServer.java:727)
>.... [23:38:42 WARN]: at net.minecraft.server.v1_14_R1.DedicatedServer.stop(DedicatedServer.java:739)
>.... [23:38:42 WARN]: at net.minecraft.server.v1_14_R1.MinecraftServer.run(MinecraftServer.java:959)
>.... [23:38:42 WARN]: at java.lang.Thread.run(Thread.java:748)
>.... [23:38:42 WARN]: java.lang.NullPointerException: Cannot convert ''@'gloss_example' to JSON, location or world is null
>.... [23:38:42 WARN]: at com.volmit.gloss.context.GlossDescriptor.toJSON(GlossDescriptor.java:167)
>.... [23:38:42 WARN]: at com.volmit.gloss.context.GlossDescriptor.toJSON(GlossDescriptor.java:160)
>.... [23:38:42 WARN]: at com.volmit.gloss.controllers.SourceController.save(SourceController.java:126)
>.... [23:38:42 WARN]: at com.volmit.gloss.controllers.SourceController.stop(SourceController.java:211)
>.... [23:38:42 WARN]: at mortar.bukkit.plugin.MortarPlugin.stopControllers(MortarPlugin.java:595)
>.... [23:38:42 WARN]: at mortar.bukkit.plugin.MortarPlugin.unregisterAll(MortarPlugin.java:88)
>.... [23:38:42 WARN]: at mortar.bukkit.plugin.MortarPlugin.onDisable(MortarPlugin.java:293)
>.... [23:38:42 WARN]: at org.bukkit.plugin.java.JavaPlugin.setEnabled(JavaPlugin.java:265)
>.... [23:38:42 WARN]: at org.bukkit.plugin.java.JavaPluginLoader.disablePlugin(JavaPluginLoader.java:373)
>.... [23:38:42 WARN]: at org.bukkit.plugin.SimplePluginManager.disablePlugin(SimplePluginManager.java:453)
>.... [23:38:42 WARN]: at org.bukkit.plugin.SimplePluginManager.disablePlugins(SimplePluginManager.java:439)
>.... [23:38:42 WARN]: at org.bukkit.plugin.SimplePluginManager.disablePlugins(SimplePluginManager.java:432)
>.... [23:38:42 WARN]: at org.bukkit.craftbukkit.v1_14_R1.CraftServer.disablePlugins(CraftServer.java:401)
>.... [23:38:42 WARN]: at net.minecraft.server.v1_14_R1.MinecraftServer.stop(MinecraftServer.java:727)
>.... [23:38:42 WARN]: at net.minecraft.server.v1_14_R1.DedicatedServer.stop(DedicatedServer.java:739)
>.... [23:38:42 WARN]: at net.minecraft.server.v1_14_R1.MinecraftServer.run(MinecraftServer.java:959)
>.... [23:38:42 WARN]: at java.lang.Thread.run(Thread.java:748)
>.... [23:38:42 WARN]: java.lang.NullPointerException: Cannot convert ''@'info_2' to JSON, location or world is null
>.... [23:38:42 WARN]: at com.volmit.gloss.context.GlossDescriptor.toJSON(GlossDescriptor.java:167)
>.... [23:38:42 WARN]: at com.volmit.gloss.context.GlossDescriptor.toJSON(GlossDescriptor.java:160)
>.... [23:38:42 WARN]: at com.volmit.gloss.controllers.SourceController.save(SourceController.java:126)
>.... [23:38:42 WARN]: at com.volmit.gloss.controllers.SourceController.stop(SourceController.java:211)
>.... [23:38:42 WARN]: at mortar.bukkit.plugin.MortarPlugin.stopControllers(MortarPlugin.java:595)
>.... [23:38:42 WARN]: at mortar.bukkit.plugin.MortarPlugin.unregisterAll(MortarPlugin.java:88)
>.... [23:38:42 WARN]: at mortar.bukkit.plugin.MortarPlugin.onDisable(MortarPlugin.java:293)
>.... [23:38:42 WARN]: at org.bukkit.plugin.java.JavaPlugin.setEnabled(JavaPlugin.java:265)
>.... [23:38:42 WARN]: at org.bukkit.plugin.java.JavaPluginLoader.disablePlugin(JavaPluginLoader.java:373)
>.... [23:38:42 WARN]: at org.bukkit.plugin.SimplePluginManager.disablePlugin(SimplePluginManager.java:453)
>.... [23:38:42 WARN]: at org.bukkit.plugin.SimplePluginManager.disablePlugins(SimplePluginManager.java:439)
>.... [23:38:42 WARN]: at org.bukkit.plugin.SimplePluginManager.disablePlugins(SimplePluginManager.java:432)
>.... [23:38:42 WARN]: at org.bukkit.craftbukkit.v1_14_R1.CraftServer.disablePlugins(CraftServer.java:401)
>.... [23:38:42 WARN]: at net.minecraft.server.v1_14_R1.MinecraftServer.stop(MinecraftServer.java:727)
>.... [23:38:42 WARN]: at net.minecraft.server.v1_14_R1.DedicatedServer.stop(DedicatedServer.java:739)
>.... [23:38:42 WARN]: at net.minecraft.server.v1_14_R1.MinecraftServer.run(MinecraftServer.java:959)
>.... [23:38:42 WARN]: at java.lang.Thread.run(Thread.java:748)
>.... [23:38:42 WARN]: java.lang.NullPointerException: Cannot convert ''@'blockparty' to JSON, location or world is null
>.... [23:38:42 WARN]: at com.volmit.gloss.context.GlossDescriptor.toJSON(GlossDescriptor.java:167)
>.... [23:38:42 WARN]: at com.volmit.gloss.context.GlossDescriptor.toJSON(GlossDescriptor.java:160)
>.... [23:38:42 WARN]: at com.volmit.gloss.controllers.SourceController.save(SourceController.java:126)
>.... [23:38:42 WARN]: at com.volmit.gloss.controllers.SourceController.stop(SourceController.java:211)
>.... [23:38:42 WARN]: at mortar.bukkit.plugin.MortarPlugin.stopControllers(MortarPlugin.java:595)
>.... [23:38:42 WARN]: at mortar.bukkit.plugin.MortarPlugin.unregisterAll(MortarPlugin.java:88)
>.... [23:38:42 WARN]: at mortar.bukkit.plugin.MortarPlugin.onDisable(MortarPlugin.java:293)
>.... [23:38:42 WARN]: at org.bukkit.plugin.java.JavaPlugin.setEnabled(JavaPlugin.java:265)
>.... [23:38:42 WARN]: at org.bukkit.plugin.java.JavaPluginLoader.disablePlugin(JavaPluginLoader.java:373)
>.... [23:38:42 WARN]: at org.bukkit.plugin.SimplePluginManager.disablePlugin(SimplePluginManager.java:453)
>.... [23:38:42 WARN]: at org.bukkit.plugin.SimplePluginManager.disablePlugins(SimplePluginManager.java:439)
>.... [23:38:42 WARN]: at org.bukkit.plugin.SimplePluginManager.disablePlugins(SimplePluginManager.java:432)
>.... [23:38:42 WARN]: at org.bukkit.craftbukkit.v1_14_R1.CraftServer.disablePlugins(CraftServer.java:401)
>.... [23:38:42 WARN]: at net.minecraft.server.v1_14_R1.MinecraftServer.stop(MinecraftServer.java:727)
>.... [23:38:42 WARN]: at net.minecraft.server.v1_14_R1.DedicatedServer.stop(DedicatedServer.java:739)
>.... [23:38:42 WARN]: at net.minecraft.server.v1_14_R1.MinecraftServer.run(MinecraftServer.java:959)
>.... [23:38:42 WARN]: at java.lang.Thread.run(Thread.java:748)
>.... [23:38:42 WARN]: java.lang.NullPointerException: Cannot convert ''@'hdb1' to JSON, location or world is null
>.... [23:38:42 WARN]: at com.volmit.gloss.context.GlossDescriptor.toJSON(GlossDescriptor.java:167)
>.... [23:38:42 WARN]: at com.volmit.gloss.context.GlossDescriptor.toJSON(GlossDescriptor.java:160)
>.... [23:38:42 WARN]: at com.volmit.gloss.controllers.SourceController.save(SourceController.java:126)
>.... [23:38:42 WARN]: at com.volmit.gloss.controllers.SourceController.stop(SourceController.java:211)
>.... [23:38:42 WARN]: at mortar.bukkit.plugin.MortarPlugin.stopControllers(MortarPlugin.java:595)
>.... [23:38:42 WARN]: at mortar.bukkit.plugin.MortarPlugin.unregisterAll(MortarPlugin.java:88)
>.... [23:38:42 WARN]: at mortar.bukkit.plugin.MortarPlugin.onDisable(MortarPlugin.java:293)
>.... [23:38:42 WARN]: at org.bukkit.plugin.java.JavaPlugin.setEnabled(JavaPlugin.java:265)
>.... [23:38:42 WARN]: at org.bukkit.plugin.java.JavaPluginLoader.disablePlugin(JavaPluginLoader.java:373)
>.... [23:38:42 WARN]: at org.bukkit.plugin.SimplePluginManager.disablePlugin(SimplePluginManager.java:453)
>.... [23:38:42 WARN]: at org.bukkit.plugin.SimplePluginManager.disablePlugins(SimplePluginManager.java:439)
>.... [23:38:42 WARN]: at org.bukkit.plugin.SimplePluginManager.disablePlugins(SimplePluginManager.java:432)
>.... [23:38:42 WARN]: at org.bukkit.craftbukkit.v1_14_R1.CraftServer.disablePlugins(CraftServer.java:401)
>.... [23:38:42 WARN]: at net.minecraft.server.v1_14_R1.MinecraftServer.stop(MinecraftServer.java:727)
>.... [23:38:42 WARN]: at net.minecraft.server.v1_14_R1.DedicatedServer.stop(DedicatedServer.java:739)
>.... [23:38:42 WARN]: at net.minecraft.server.v1_14_R1.MinecraftServer.run(MinecraftServer.java:959)
>.... [23:38:42 WARN]: at java.lang.Thread.run(Thread.java:748)
>.... [23:38:42 WARN]: java.lang.NullPointerException: Cannot convert ''@'info_3' to JSON, location or world is null
>.... [23:38:42 WARN]: at com.volmit.gloss.context.GlossDescriptor.toJSON(GlossDescriptor.java:167)
>.... [23:38:42 WARN]: at com.volmit.gloss.context.GlossDescriptor.toJSON(GlossDescriptor.java:160)
>.... [23:38:42 WARN]: at com.volmit.gloss.controllers.SourceController.save(SourceController.java:126)
>.... [23:38:42 WARN]: at com.volmit.gloss.controllers.SourceController.stop(SourceController.java:211)
>.... [23:38:42 WARN]: at mortar.bukkit.plugin.MortarPlugin.stopControllers(MortarPlugin.java:595)
>.... [23:38:42 WARN]: at mortar.bukkit.plugin.MortarPlugin.unregisterAll(MortarPlugin.java:88)
>.... [23:38:42 WARN]: at mortar.bukkit.plugin.MortarPlugin.onDisable(MortarPlugin.java:293)
>.... [23:38:42 WARN]: at org.bukkit.plugin.java.JavaPlugin.setEnabled(JavaPlugin.java:265)
>.... [23:38:42 WARN]: at org.bukkit.plugin.java.JavaPluginLoader.disablePlugin(JavaPluginLoader.java:373)
>.... [23:38:42 WARN]: at org.bukkit.plugin.SimplePluginManager.disablePlugin(SimplePluginManager.java:453)
>.... [23:38:42 WARN]: at org.bukkit.plugin.SimplePluginManager.disablePlugins(SimplePluginManager.java:439)
>.... [23:38:42 WARN]: at org.bukkit.plugin.SimplePluginManager.disablePlugins(SimplePluginManager.java:432)
>.... [23:38:42 WARN]: at org.bukkit.craftbukkit.v1_14_R1.CraftServer.disablePlugins(CraftServer.java:401)
>.... [23:38:42 WARN]: at net.minecraft.server.v1_14_R1.MinecraftServer.stop(MinecraftServer.java:727)
>.... [23:38:42 WARN]: at net.minecraft.server.v1_14_R1.DedicatedServer.stop(DedicatedServer.java:739)
>.... [23:38:42 WARN]: at net.minecraft.server.v1_14_R1.MinecraftServer.run(MinecraftServer.java:959)
>.... [23:38:42 WARN]: at java.lang.Thread.run(Thread.java:748)
>.... [23:38:42 WARN]: java.lang.NullPointerException: Cannot convert ''@'info_4' to JSON, location or world is null
>.... [23:38:42 WARN]: at com.volmit.gloss.context.GlossDescriptor.toJSON(GlossDescriptor.java:167)
>.... [23:38:42 WARN]: at com.volmit.gloss.context.GlossDescriptor.toJSON(GlossDescriptor.java:160)
>.... [23:38:42 WARN]: at com.volmit.gloss.controllers.SourceController.save(SourceController.java:126)
>.... [23:38:42 WARN]: at com.volmit.gloss.controllers.SourceController.stop(SourceController.java:211)
>.... [23:38:42 WARN]: at mortar.bukkit.plugin.MortarPlugin.stopControllers(MortarPlugin.java:595)
>.... [23:38:42 WARN]: at mortar.bukkit.plugin.MortarPlugin.unregisterAll(MortarPlugin.java:88)
>.... [23:38:42 WARN]: at mortar.bukkit.plugin.MortarPlugin.onDisable(MortarPlugin.java:293)
>.... [23:38:42 WARN]: at org.bukkit.plugin.java.JavaPlugin.setEnabled(JavaPlugin.java:265)
>.... [23:38:42 WARN]: at org.bukkit.plugin.java.JavaPluginLoader.disablePlugin(JavaPluginLoader.java:373)
>.... [23:38:42 WARN]: at org.bukkit.plugin.SimplePluginManager.disablePlugin(SimplePluginManager.java:453)
>.... [23:38:42 WARN]: at org.bukkit.plugin.SimplePluginManager.disablePlugins(SimplePluginManager.java:439)
>.... [23:38:42 WARN]: at org.bukkit.plugin.SimplePluginManager.disablePlugins(SimplePluginManager.java:432)
>.... [23:38:42 WARN]: at org.bukkit.craftbukkit.v1_14_R1.CraftServer.disablePlugins(CraftServer.java:401)
>.... [23:38:42 WARN]: at net.minecraft.server.v1_14_R1.MinecraftServer.stop(MinecraftServer.java:727)
>.... [23:38:42 WARN]: at net.minecraft.server.v1_14_R1.DedicatedServer.stop(DedicatedServer.java:739)
>.... [23:38:42 WARN]: at net.minecraft.server.v1_14_R1.MinecraftServer.run(MinecraftServer.java:959)
>.... [23:38:42 WARN]: at java.lang.Thread.run(Thread.java:748)
DavidRockin commented 5 years ago

Looks like a hologram is in a world that was deleted or unloaded.

Andre601 commented 5 years ago

Looks like a hologram is in a world that was deleted or unloaded.

Read what I just said in the issue:

When you disable your server does Gloss throw a NPE when there are holograms in a world which isn't loaded. See stack trace below.

DavidRockin commented 5 years ago

Haha, oops. Sorry I skimmed over that :P

DavidRockin commented 5 years ago

Thanks for the bug report, this has been resolved in 1.3.3.