Задумался я, как бы мне сделать отображение xsd:dateTime на класс java.util.Date. С ним просто удобнее работать.
Решение оказалось простым - нужно при генерации классов с помощью wsdl2java указать jaxb binding. В этом файле можно указать свои правила отображения. После небольшого иследования я привёл файл к следующему виду:
<jxb:bindings version="2.0"
xmlns:jxb="http://java.sun.com/xml/ns/jaxb"
xmlns:xs="http://www.w3.org/2001/XMLSchema">
<jxb:bindings schemaLocation="file:/home/duglas/workspacejuno/WsTimeService2/wsdl/businessTime_schema.xsd" node="/xs:schema">
<jxb:globalBindings xmlns:jxb="http://java.sun.com/xml/ns/jaxb" xmlns:xs="http://www.w3.org/2001/XMLSchema">
<jxb:javaType name="java.util.Date" xmlType="xs:dateTime"
parseMethod="org.apache.cxf.xjc.runtime.DataTypeAdapter.parseDateTime"
printMethod="org.apache.cxf.xjc.runtime.DataTypeAdapter.printDateTime"/>
</jxb:globalBindings>
</jxb:bindings>
</jxb:bindings>
С виду ничего необычного. На сайте apache cxf приводится почти такой же файл. Ключевое слово здесь - почти, так как в версии 2.6.1 разработчики переместили класс DataTypeAdapter в пакет org.apache.cxf.xjc.runtime.
This blog is a collection of minds around linux, java, javascript, etc. Looking for great opportunities.
воскресенье, 26 августа 2012 г.
вторник, 21 августа 2012 г.
Apache cxf 2.6.1 и Eclipse (part 2)
В этой части я решил избавиться от зависимости в виде Eclipse и научиться генерировать веб-сервис с помощью CXF.
суббота, 18 августа 2012 г.
Apache cxf 2.6.1 и Eclipse
В этой заметке мы опишем, как можно с помощью ant в Eclipse создавать веб сервис apache cxf.
понедельник, 13 августа 2012 г.
Ant. Первое знакомство.
Функции Ant:
1) компиляция
2) junit тесты
3) junit отчёты
4) проверка кода на соответствие стилю программирования checkstyle (http://checkstyle.sourceforge.net)
5) создание jar\war файла
6) создания meta-inf файла
7) создание javadoc
8) генерация классов для клиента к веб-сервису с помощью wsdl2java (из пакета apache cxf)
9) выполнение sql скриптов к СУБД
10) установка war файла на сервер приложений, например Tomcat
Можно ли заменить билдер в Eclipse и оставить только ant?
В Eclipse невозможно полностью отключить встроенный builder проекта, поэтому в данном случае исполнение задачи javac не будет иметь смысл.
Состав целей проекта:
default - цель по умолчанию
all - создание дистрибутива и тестирование
clean - удаление всех созданных файлов
dist - создание дистрибутива
docs - создание документации
test - запуск unit тестов
noop - вывод на экран названия проекта
diag - вывод параметров окружения ant.
Управление большими проектами:
С помощью задачи ant можно вызывать цели в других build файлах. Начиная с версии 1.7 появилась задача subant, которая может исполнять build файлы.
Подписаться на:
Сообщения (Atom)