Estou tentando criar uma ant task que faça o wsimport e gere as classes do cliente para mim apartir de um wsdl. Porem quando rodo ele me retorna a seguinte erro:
[quote]
BUILD FAILED
/home/ejb1090/workspace-fj31/fj31-webservice-standalone/build.xml:16: You are running on JDK6 which comes with JAX-WS 2.0 API, but this tool requires JAX-WS 2.2 API. Use the endorsed standards override mechanism (http://java.sun.com/javase/6/docs/technotes/guides/standards/), or set xendorsed=“true” on .[/quote]
Como faço para resolver sem trocar a versão do JAVA, para não dar pau em outros lugares da aplicação?
funcionou, mas ai alem de ele ter dado erro no service, por falta de construtor na classe pai, que para resolver só exclui os construtores e mantive só o princiapl, fui testar e dei um toString em um objeto gerado por ele e ele deu o seguinte erro:
[code]Exception in thread “main” java.lang.LinkageError: JAXB 2.1 API is being loaded from the bootstrap classloader, but this RI (from jar:file:/home/ejb1090/workspace-fj31/fj31-webservice-standalone/lib/jaxb-impl.jar!/com/sun/xml/bind/v2/model/impl/ModelBuilder.class) needs 2.2 API. Use the endorsed directory mechanism to place jaxb-api.jar in the bootstrap classloader. (See http://java.sun.com/j2se/1.6.0/docs/guide/standards/)
at com.sun.xml.bind.v2.model.i
mpl.ModelBuilder.(ModelBuilder.java:173)
at com.sun.xml.bind.v2.runtime.JAXBContextImpl.getTypeInfoSet(JAXBContextImpl.java:456)
at com.sun.xml.bind.v2.runtime.JAXBContextImpl.(JAXBContextImpl.java:302)
at com.sun.xml.bind.v2.runtime.JAXBContextImpl$JAXBContextBuilder.build(JAXBContextImpl.java:1140)
at com.sun.xml.bind.v2.ContextFactory.createContext(ContextFactory.java:154)
at com.sun.xml.bind.v2.ContextFactory.createContext(ContextFactory.java:121)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at javax.xml.bind.ContextFinder.newInstance(ContextFinder.java:210)
at javax.xml.bind.ContextFinder.find(ContextFinder.java:368)
at javax.xml.bind.JAXBContext.newInstance(JAXBContext.java:574)
at javax.xml.bind.JAXBContext.newInstance(JAXBContext.java:522)
at com.sun.xml.ws.spi.ProviderImpl$2.run(ProviderImpl.java:259)
at com.sun.xml.ws.spi.ProviderImpl$2.run(ProviderImpl.java:257)
at java.security.AccessController.doPrivileged(Native Method)
at com.sun.xml.ws.spi.ProviderImpl.getEPRJaxbContext(ProviderImpl.java:256)
at com.sun.xml.ws.spi.ProviderImpl.(ProviderImpl.java:90)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
at java.lang.Class.newInstance0(Class.java:355)
at java.lang.Class.newInstance(Class.java:308)
at javax.xml.ws.spi.FactoryFinder.newInstance(FactoryFinder.java:36)
at javax.xml.ws.spi.FactoryFinder.find(FactoryFinder.java:95)
at javax.xml.ws.spi.Provider.provider(Provider.java:76)
at javax.xml.ws.Service.(Service.java:57)
at br.com.caelum.client.ws.EasyDominio_Service.(EasyDominio_Service.java:42)
at br.com.caelum.cliente.programa.TestaXmlBean.main(TestaXmlBean.java:29)[/code]
que acredito que seja pelo mesmo motivo, mas ai ja não consigo resolver. =/
Os WSDL não são nosso, é d uma outra empresa, o java q estamos usando é o da IBM e entao baixamos o JAXB e o JAXWS, mas reparei que a versão 2.0 não possui wsimport só a 2.2. =/
Sera que existe outra solução sem eu precisar ter que atualizar os JARs e correr risco de dar pau em algum outro lugar?
Consegui, na pasta do jdk foi soh criar dentro da jre/lib a pasta endorsed e colocar o jar la dentro.
Mas ainda estou com um problema, estou tendo esse erro:
BUILD FAILED
W:\projects\amadeus\build\build.xml:57: Problem: failed to create task or type wsimport
Cause: Could not load a dependent class org/apache/tools/ant/DynamicConfigurator
This class may be in a separate JAR that is not installed.
Action: Determine what extra JAR files are needed, and place them in one of:
-C:\Documents and Settings\voliveira\Desktop\apache-ant-1.8.0RC1\lib
-C:\Documents and Settings\voliveira.ant\lib
-a directory added on the command line with the -lib argument
Do not panic, this is a common problem.
The commonest cause is a missing JAR.
This is not a bug; it is a configuration problem
essa versao do ant é a ultima que baxei do site, tentei antes com a versão que veio no eclipse e tambem deu esse erro.