On 02/04/13 16:10, Daniel Kulp wrote:
Actually, this stack trace really concerns me. This makes it look like we
have an XMLStreamReader that was not created via one of the StaxUtils methods.
Otherwise, this exception would be raised at creation time, not close. That
bothers me as all the creations of the readers should be done via the StaxUtils
methods if possible. (providing this is XML. I suppose if this is JSON
with Jettison or Fastinfoset that has their own factories, it's different)
Is there anyway you could help debug where the stream reader is being created
in this case?
I look at JSONProvider and indeed it uses StaxUtils.close() to close the
reader, so it is a good observation indeed, though I'm not 100% sure
this is the path one of Romain's tests is exercising.
thanks, Sergey
Thanks!
Dan
On Apr 2, 2013, at 3:42 AM, Romain Manni-Bucau<rmannibu...@gmail.com> wrote:
when unmarshalling
(org.apache.cxf.jaxrs.provider.JAXBElementProvider.readFrom) the reader is
closed thanks to StaxUtils.close(reader); call
and it triggers:
org.apache.cxf.jaxrs.client.ClientWebApplicationException:
java.lang.NoClassDefFoundError: com/ctc/wstx/stax/WstxInputFactory
at org.apache.cxf.jaxrs.client.WebClient.handleResponse(WebClient.java:871)
at
org.apache.cxf.jaxrs.client.WebClient.doChainedInvocation(WebClient.java:841)
at org.apache.cxf.jaxrs.client.WebClient.doInvoke(WebClient.java:768)
at org.apache.cxf.jaxrs.client.WebClient.doInvoke(WebClient.java:729)
at org.apache.cxf.jaxrs.client.WebClient.invoke(WebClient.java:345)
at org.apache.cxf.jaxrs.client.WebClient.get(WebClient.java:481)
at org.superbiz.rest.UserServiceTest.show(UserServiceTest.java:95)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at
org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:45)
at
org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:15)
at
org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:42)
at
org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:20)
at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:263)
at
org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:68)
at
org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:47)
at org.junit.runners.ParentRunner$3.run(ParentRunner.java:231)
at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:60)
at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:229)
at org.junit.runners.ParentRunner.access$000(ParentRunner.java:50)
at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:222)
at
org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:28)
at
org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:30)
at org.junit.runners.ParentRunner.run(ParentRunner.java:300)
at org.junit.runner.JUnitCore.run(JUnitCore.java:157)
at
com.intellij.junit4.JUnit4IdeaTestRunner.startRunnerWithArgs(JUnit4IdeaTestRunner.java:77)
at
com.intellij.rt.execution.junit.JUnitStarter.prepareStreamsAndStart(JUnitStarter.java:195)
at com.intellij.rt.execution.junit.JUnitStarter.main(JUnitStarter.java:63)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at com.intellij.rt.execution.application.AppMain.main(AppMain.java:120)
Caused by: java.lang.NoClassDefFoundError:
com/ctc/wstx/stax/WstxInputFactory
at
org.apache.cxf.jaxrs.provider.JAXBElementProvider.readFrom(JAXBElementProvider.java:196)
at
org.apache.cxf.jaxrs.client.AbstractClient.readBody(AbstractClient.java:446)
at org.apache.cxf.jaxrs.client.WebClient.handleResponse(WebClient.java:857)
... 34 more
Caused by: java.lang.ClassNotFoundException:
com.ctc.wstx.stax.WstxInputFactory
at java.net.URLClassLoader$1.run(URLClassLoader.java:366)
at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
at java.lang.ClassLoader.loadClass(ClassLoader.java:423)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
at java.lang.ClassLoader.loadClass(ClassLoader.java:356)
... 37 more
*Romain Manni-Bucau*
*Twitter: @rmannibucau<https://twitter.com/rmannibucau>*
*Blog: **http://rmannibucau.wordpress.com/*<http://rmannibucau.wordpress.com/>
*LinkedIn: **http://fr.linkedin.com/in/rmannibucau*
*Github: https://github.com/rmannibucau*
2013/4/2 Freeman Fang<freeman.f...@gmail.com>
Hi,
I believe it's just compile time dependency, during runtime, you still can
use any other stax parser for now.
What's the error you run into?
-------------
Freeman(Yue) Fang
Red Hat, Inc.
FuseSource is now part of Red Hat
Web: http://fusesource.com | http://www.redhat.com/
Twitter: freemanfang
Blog: http://freemanfang.blogspot.com
http://blog.sina.com.cn/u/1473905042
weibo: @Freeman小屋
On 2013-4-2, at 下午3:19, Romain Manni-Bucau wrote:
Hi,
seems woodstox is now mandatory to use cxf (tested with v2.6.7) because
of org.apache.cxf.staxutils.StaxUtils
is it normal?
in TomEE we were remove it by default so basically it means we can't
upgrade
*Romain Manni-Bucau*
*Twitter: @rmannibucau<https://twitter.com/rmannibucau>*
*Blog: **http://rmannibucau.wordpress.com/*<
http://rmannibucau.wordpress.com/>
*LinkedIn: **http://fr.linkedin.com/in/rmannibucau*
*Github: https://github.com/rmannibucau*