51111111111Rating 5.00 (2 Votes)

В этой статье я расскажу о том, как автоматически сгенерировать набор Java классов для приложения использующего WCF Data Service, данные классы могут использоваться к примеру в Android приложении, которое будет работать с данным сервисом.

Классы генерируются достаточно просто для этих целей мы будем использовать Restlet Framework, загружать необходимо Java SE, после загрузки и распаковки фреймворка, необходимо создать новый Java проект (я использую Eclipse поэтому все действия буду описываться именно под эту IDE):

create proj

далее добавить в проект некоторые библиотеки Restlet из папки lib, а именно:

  • org.restlet.jar
  • org.restlet.ext.odata.jar
  • org.restlet.ext.freemarker.jar
  • org.restlet.ext.atom.jar
  • org.restlet.ext.xml.jar
  • org.freemarker_2.3\org.freemarker.jar

библиотеки можно добавить нажатием кнопки Add external JARs...:

add jars

далее необходимо создать новый Java класс, назовем его main:

create class

в папке проекта необходимо создать папку для генерируемых классов, назовем ее gens, в свойствах папки необходимо просмотреть и скопировать путь к этой папке, он нам еще пригодится, делее в созданный класс необходимо добавить следующий код:

public static void main(String[] args){
        
        Generator.main(new String[] {
                  "http://Server/northdata.svc/",
                  "D:\\Project\\gens"
                });
    }

где http://Server/northdata.svc/ - наш WCF сервис, D:\\Project\\gens - наш каталог, далее запустить проект, если все было сделано правильно, в консоли должен быть отражен статус успешной работы:

---------------------------
OData client code generator
---------------------------
step 1 - check parameters
step 2 - check the ouput directory
step 3 - get the metadata descriptor
Starting the internal [HTTP/1.1] client
Get the metadata for http://Server/northdata.svc/ at http://Server/northdata.svc/$metadata
Starting the internal [HTTP/1.1] client
step 4 - generate source code
Starting the internal [HTTP/1.1] client
Get the metadata for http://Server/northdata.svc/ at http://Server/northdata.svc/$metadata
Starting the internal [HTTP/1.1] client
The source code has been generated in directory: D:\Project\gens

Далее эти классы можно уже использовать в своем Android приложении.

Добавить комментарий


Защитный код
Обновить

Сейчас 286 гостей и ни одного зарегистрированного пользователя на сайте

Вверх
Вниз