Pergunta

Eu estou tentando expor serviços usando JAX-WS, mas a primeira surpresa que eu obtive foi que Weblogic não suporta classes internas para objetos de solicitação / resposta. Depois de acabar com esta situação aqui , estou enfrentando outro desafio:

Gerar getXXX() ao invés de / adicionalmente ao isXXX() método.

Eu preciso gerar esta métodos Porque quando eu iniciar o serviço eu recebo a mensagem:

<WS data binding error>could not find getter for property 'IsXXX' on com.foo.MyClass

Tentou uma personalização:

<jaxb:globalBindings generateIsSetMethod="false" enableJavaNamingConventions="false">

sem efeito. : (

Qualquer ajuda?

Foi útil?

Solução

BooleanGetter XJC plugin para JAXB está disponível em http://fisheye5.cenqua.com/browse/~raw,r=1.1/jaxb2-commons/www/boolean-getter/index.html

Se você está trabalhando com JavaSE 6, em seguida, ele precisa ser re-embalados - veja http://forums.java.net/jive/message.jspa?messageID=319434

Use em construção Ant como abaixo:

    <taskdef name="xjc" classname="com.sun.tools.xjc.XJCTask" classpathref="development.classpath"/>

    <xjc schema="some.xsd" package="com.acme.jaxb" destdir="gen-src">
        <arg value="-Xcollection-setter-injector"/>  
        <arg value="-Xboolean-getter"/>
    </xjc>          

HTH

Outras dicas

Isso foi corrigido ou melhor dizer suportado em jaxb 2.1.13 (ver JAXB-131 para mais detalhes). Atualizar suas dependências e configure enableIntrospection xjc opção. Mais detalhes sobre as opções XJC podem ser encontradas no este link . Se você estiver usando org.codehause.mojo: maven-jaxb2-plugin: 1.3.1 plug-in ver esta questão comentário para uma solução alternativa.

Opção: -enableIntrospection

Aqui está um outro plugin que resolve o problema:

http://code.google.com/p/nebulent- xjc-booleangetter / wiki / AboutThisProject

É geneates o getXXX() addiotionally ao isXXX() padrão, portanto, o código já está usando essas classes não quebrar após a aplicação do plugin.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top