ServletContext#getRealPath(String)
がTomcat 6,8ではnullではなかったけれど、GlassFish 4ではnullを返しました。
This method returns null if the servlet container cannot translate the virtual path to a real path for any reason (such as when the content is being made available from a .war archive).
ServletContext (Servlet API Documentation)
でも仕様としてはこの説明なので、全然nullを返していいんですけどね。 ライブラリの内部でこのメソッドを呼んでいてNPEが出たのですが、ライブラリのバージョンを上げて解決となりました。