У меня есть приложение, которое отлично работает, когда я не пытаюсь использовать его в качестве приложения для веб-запуска, но когда я конвертирую его в один из Netbeans, он взлетает вверх. Консоль показывает исключение нулевого указателя при попытке получить ресурс, расположенный в зависимой библиотеке. Сама строка кода захватывает файл .png в этом файле библиотеки и использует его для значка окна. Строки кода, которые убивают именно:Веб-запуск не находит системный ресурс
java.net.URL url = ClassLoader.getSystemResource("/com/my/icon/someimage.png");
Toolkit kit = Toolkit.getDefaultToolkit();
Image img = kit.createImage(url); // fails with null pointer exception
Если я не пытаюсь сделать это как начать веб-приложение, то у меня есть ноль проблем. Он работает отлично. Web start = failboat. Код подписан, если это имеет значение. Файл библиотеки, который используется, является одним большим банком, который содержит 3 файла библиотеки, которые я создал, и еще 4 других, которые мне не нужны. Нужно ли мне также подписывать файл библиотеки? Возможно, это проблема сама по себе?
EDIT:
Если я достаю эти строки кода, веб-приложение работает без каких-либо проблем.
Здесь ошибка:
Exception in thread "AWT-EventQueue-2" java.lang.NullPointerException
at sun.net.util.URLUtil.getConnectPermission(Unknown Source)
at sun.awt.SunToolkit.checkPermissions(Unknown Source)
at sun.awt.SunToolkit.createImage(Unknown Source)
at DDSC.initComponents(DDSC.java:265)
at DDSC.<init>(DDSC.java:103)
Любая конкретная причина вы используете 'getSystemResource' вместо' getResource'? – Powerlord
Спасибо. Я использовал getSystemResource, поскольку он работал до этого, и я никогда не потрудился даже попробовать getResource из-за того, что он не разбирается в методе. –
Согласитесь с @Powerlord, это определенно не системный ресурс, и было чистой удачей, что он работал как приложение без JWS. См. [Информация о встроенных ресурсах. страница] (http://stackoverflow.com/tags/embedded-resource/info) для правильного метода/подхода (в основном, что предложил Powerlord, с чуть более подробной информацией). –