Как указать ограничение шаблона с помощью аннотаций JAXB?

Я разрабатываю приложение SOAP с использованием JAX-WS и JAXB. Я хотел бы указать ограничение шаблона для одного из полей (голландский почтовый индекс, \d{4}[A-Z]{2}). Это очень легко сделать с помощью xsd:pattern, но я не могу найти эквивалентную аннотацию JAXB. Как мне этого добиться?


person Sietse    schedule 08.07.2011    source источник


Ответы (1)


Вы не можете. Идея состоит в том, чтобы использовать аннотации JAXB в сочетании с проверкой времени выполнения по схеме, используя javax.xml.validation.Schema, который можно подключить к Marshaller и Unmarshaller.

person skaffman    schedule 08.07.2011
comment
+1 – @Sietse для получения дополнительной информации: bdoughan.blogspot. ком/2010/12/ - person bdoughan; 08.07.2011
comment
+1, так как это отвечает на вопрос. К сожалению, это не решает мою проблему. Это работает, если у меня есть схема и я хочу создать из нее классы Java. Но что, если у меня есть классы Java и я хочу сгенерировать из них схему (в данном случае для включения в WSDL)? Думаю, я создам другой вопрос. - person Sietse; 08.07.2011
comment
@Sieste — вы можете использовать JAXB для создания схемы XML (wiki.eclipse.org /EclipseLink/Examples/MOXy/JAXB/GenerateSchema), затем добавьте ограничения схемы. И использовать эту схему со стратегией, предложенной Скаффманом. - person bdoughan; 08.07.2011