API веб-служб Java, однако я не могу запустить JVM на своем сервере - PullRequest
1 голос
/ 10 сентября 2008

Я пытаюсь использовать некоторые данные из учетной записи PlanPlusOnline. Они предоставляют только API веб-сервисов Java. Сервер для сайта, на котором будут использоваться данные, не позволяет мне установить Tomcat (edit: или JVM в этом отношении). Я не собираюсь лгать, я инженер-программист на Java, и я занимаюсь веб-работой на стороне. Я не знаком с веб-сервисами или сервлетами, но я был готов попробовать. Я бы предпочел, чтобы у них был JSON-доступ к данным, но, насколько я знаю, у них нет. Есть идеи?

РЕДАКТИРОВАТЬ: уточнить. Веб-сервис, предоставляемый planplusonline, основан на Java. Я пытаюсь получить доступ к данным из этого веб-сервиса без использования Java. Я верю, что это возможно сейчас, но мне нужно сделать больше исследований. Любой, кто может помочь направить меня в правильном направлении, ценится.

Ответы [ 3 ]

1 голос
/ 10 сентября 2008

Чтобы прокомментировать комментарий Джодоннелла, соединение с веб-сервисом может быть установлено практически на любом языке на стороне сервера. Просто пример API, который они предоставили, был на Java, вероятно, потому что PlanPlusOnline написан на Java. Если у вас есть URL-адрес для службы и ключ доступа, то все, что вам действительно нужно сделать, - это выяснить, как пройти через возвращенный XML. Если вы не можете использовать Java, тогда я предлагаю PHP, потому что он может быть уже установлен и иметь соответствующие загруженные модули. Эта ссылка может быть полезна:

http://www.onlamp.com/pub/a/php/2007/07/26/php-web-services.html

0 голосов
/ 10 сентября 2008

Если я правильно понимаю ваш вопрос, вам нужно только подключиться к существующему веб-сервису, а не создавать свой собственный веб-сервис. Если это так, и, возможно, я что-то упустил, я не верю, что вам вообще понадобится Tomcat. Если вы используете Netbeans, вы можете создать новый рабочий стол или веб-приложение, а затем щелкнуть правой кнопкой мыши имя проекта. Выберите «Новый», а затем «Другой» и выберите «Веб-клиент». Введите информацию о том, где найти WSDL (обычно URL-адрес) и другую необходимую информацию.

После того, как вы добавили WebClient, создайте новый класс, который фактически делает ваши звонки в веб-сервис. Если имя веб-службы было PlanPlusOnline, то вы можете получить что-то вроде:

public final class PlanPlusOnlineClient
{
    //instance to this class so that we do not have to reinstantiate it every time
    private static PlanPlusOnlineClient _instance = new PlanPlusOnlineClient();

    //generated class by netbeans with information about the web service
    private PlanPlusOnlineService service         = null;

    //another generated class by netbeans but this is a property of the service
    //that contains information about the individual methods available.
    private PlanPlusOnline port                   = null;

    private PlanPlusOnlineClient()
    {
        try
        {
            service = new PlanPlusOnlineService();
            port = service.getPlanPlusOnlinePort();
        }
        catch (MalformedURLException ex)
        {
            MessageLog.error(this, ex.getClass().getName(), ex);
        }
    }

    public static  PlanPlusOnlineClient getInstance()
    {
        return _instance;
    }

    public static String getSomethingInteresting(String param)
    {
         //this will call one of the actual methods the web 
         //service provides.
         return port.getSomethingIntersting(param);
    }    

}

Надеюсь, это поможет вам в этом. Вы также должны проверить http://www.netbeans.org/kb/60/websvc/ для получения дополнительной информации о Netbeans и веб-сервисах. Я уверен, что это похоже на другие IDE.

0 голосов
/ 10 сентября 2008

Вы пытаетесь внедрить клиента в веб-сервис, размещенный где-то еще? Если это так, Java не требуется. Вы можете создавать клиенты веб-служб в .NET , PHP , Ruby или практически в любой современной веб-технологии. Все, что вам нужно, это документ WSDL для предоставления метаданных о том, как вызывать службы.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...