WSDL não usa schema para validação

Olá pessoal,

Estou usando CXF para publicação de alguns webservices aqui na empresa.
Eu possuo um schema chamado simpleTypes.xsd que define um tipo, como abaixo:

	<simpleType name="marcaOtica">
		<restriction base="string">
			<pattern value="[0-9]{9}"/>
		</restriction>
	</simpleType>

E este tipo está sendo usado em um outro tipo definido dentro de um WSDL:

      <xsd:complexType name="ws_dadosRecuperacaoSenhaBeneficiario">
        <xsd:sequence>
          <xsd:element name="marcaOtica" type="st:marcaOtica"/>
        </xsd:sequence>
      </xsd:complexType>

Este tipo de dado deveria recebe apenas números com tamanho 9, certo?

Acontece que está sendo permitdo que o serviço seja chamado como valores como “asd123asd” ou “2 2 5 5 4 1 1 5 7”.
E estes valores inválidos acabam gerando exceção no java quando preciso recuperar o valor como Long.

A minha dúvida é a seguinte: Isso é um problema do CXF? É alguma configuração que está faltando? Pode ser algum problema com JAXB ou alguma outra biblioteca? Talvez seja alguma configuração destas outras bibliotecas?

Eu não sei mais o que fazer. Para mim isso era transparente: você define as restrições e o schema valida. Pronto.

Alguém pode me dar uma ajuda?

Obrigado.