powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Java [игнор отключен] [закрыт для гостей] / web service, app client выдает NullPointerException
4 сообщений из 4, страница 1 из 1
web service, app client выдает NullPointerException
    #38107245
mr.Jack
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Здравствуйте.
Пытаюсь сделать appclient для веб вервиса, по http://docs.oracle.com/javaee/6/tutorial/doc/bnayn.html .
Сделал вручную, сервис протестировал - работает.
При создании se приложения, импортировал wsdl файл через netbeans, т.е. wsdl реально доступен по wsdlLocation в @WebServiceRef аннотации; вот код класса:
Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
public class AppClient {
    @WebServiceRef(wsdlLocation="META-INF/wsdl/localhost_8080/HelloService/HelloService.wsdl")
    private static HelloService service;
    
    public static void main(String[] args) {
        System.out.println(sayHallo("world:)"));
    }
    
    private static String sayHallo(String arg0) {
        Hello port = service.getHelloPort();
        return port.sayHello(arg0);
    }
}



На строке Hello port = service.getHelloPort(); вылетает
Exception in thread "main" java.lang.NullPointerException
at appclient.AppClient.sayHallo(AppClient.java:22)
at appclient.AppClient.main(AppClient.java:18)
Java Result: 1


Замечу, что в туториале эта строка указана как
Код: java
1.
helloservice.endpoint.Hello port = service.getHelloPort();



но я не пойму, как там могут быть прописаны пакеты, доступные только в вебсервисе. Разве что только из wsdl файла. Но IDE ругается если сделать так как в туториале - т.е. прописать вместе с пакетами "helloservice.endpoint.Hello port = ..."

Подскажите пожалуйста, что я упустил? В чем косяк...
...
Рейтинг: 0 / 0
web service, app client выдает NullPointerException
    #38107728
mr.Jack
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
[/quot Я]но я не пойму, как там могут быть прописаны пакеты, доступные только в вебсервисе. Разве что только из wsdl файла. Но IDE ругается если сделать так как в туториале - т.е. прописать вместе с пакетами "helloservice.endpoint.Hello port = ..."[/quot]

С этим понятно. IDE на основе wsdl генерит пакеты и классы, необходимые для работы с веб-сервисом. В первый раз я просто явно указал другой пакет, тот же, в котором лежал мой класс.

Но ситуация с java.lang.NullPointerException остается загадкой.. вылетает на строке
Код: java
1.
helloservice.endpoint.Hello port = service.getHelloPort();
...
Рейтинг: 0 / 0
web service, app client выдает NullPointerException
    #38107912
mr.Jack
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Проблема решена. Надо было создавать Enterprise Application Client (EE), а я создал SE приложение. Проблема с NullPointerException и аннотацией WebServiceRef описана еще тут http://www-01.ibm.com/support/docview.wss?uid=swg21264135 .

Теперь осталось понять, что такое Enterprise Application Client и его отличия от SE приложения..
...
Рейтинг: 0 / 0
web service, app client выдает NullPointerException
    #38107920
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Экземпляр объекта в переменной service сам по себе не появится. Его должен кто-то создать. JEE сервер сканирует JEE модуль на предмет аннотаций. И при обнаружении нужных проводит соответствующие инъекции. В standalone приложении без какого-либо контейнера никто экземпляр не создаст.
...
Рейтинг: 0 / 0
4 сообщений из 4, страница 1 из 1
Форумы / Java [игнор отключен] [закрыт для гостей] / web service, app client выдает NullPointerException
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]