The entityManager getSingleResut() went off into the wild. I switched to using 
the List return and everything started working.

-----Original Message-----
From: Sobkowiak Krzysztof [mailto:[email protected]] 
Sent: Thursday, June 25, 2015 10:48 PM
To: [email protected]
Subject: Re: karaf cxf jpa issue

Hi

What was the problem?

Regards
Krzysztof

On 26.06.2015 01:39, Pratt, Jason wrote:
>
> Fixed it
>
>  
>
> *From:*Pratt, Jason [mailto:[email protected]]
> *Sent:* Thursday, June 25, 2015 9:12 AM
> *To:* [email protected]
> *Subject:* karaf cxf jpa issue
>
>  
>
> Hello - I am getting a strange cast exception I haven't run into 
> before. I am trying to simply return a json document via a restful 
> call that loads a jpa entity by id number. The stack says I can't cast 
> from X to X, which doesn't make sense to me. I've followed
>
>  
>
> http://www.liquid-reality.de/display/liquid/2012/07/20/Apache+Karaf+Tu
> torial+Part+7+-+Camel+JPA+and+JTA+transactions
>
> http://www.liquid-reality.de/display/liquid/2011/12/22/Karaf+Tutorial+
> Part+4+-+CXF+Services+in+OSGi
>
>  
>
> in making this test up. I am not sure what I am doing wrong, any help 
> would be greatly appreciated
>
>  
>
>  
>
> @GET
>
>         @Path("{id}")
>
>         @Produces(MediaType.*/APPLICATION_JSON/*)
>
>         *public*Test getTestById(@PathParam("id") Long id) {
>
>                Test myTest= *null*;
>
>                */log/*.info("\n\n\n********** getTestById id = "+ 
> id+"\n\n");
>
>        
>
>                *try*{
>
>                        myTest= (TestBean) 
> getEm().find(TestBean.*class*, id);
>
>                        */log/*.info("test = "+ myTest.toString());
>
>                } *catch*(Exception e) {
>
>                        */log/*.error(">>> Caught getTestById: ", e);
>
>                }
>
>                *return*myTest;
>
>         }
>
>  
>
> ID: 14
>
> Address: http://localhost:8181/cxf/test/600
>
> Http-Method: GET
>
> Content-Type:
>
> Headers: 
> {Accept=[text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0
> .8], accept-encoding=[gzip, deflate], Accept-Language=[null], 
> connection=[keep-alive], Content-Type=[null], Host=[loc
>
> --------------------------------------
>
> 2015-06-24 18:43:26,240 | INFO  | qtp713727344-65  | TestServiceImpl          
>         | 564 - product - 1.0.0 |
>
>  
>
>  
>
> ********** getTestById id = 600
>
>  
>
>  
>
> 2015-06-24 18:43:57,610 | ERROR | qtp713727344-65  | TestServiceImpl          
>         | 564 - product - 1.0.0 | >>> Caught getTestById:
>
> java.lang.ClassCastException: product.domain.TestBean cannot be cast 
> to product.domain.TestBean
>
>         at 
> com.wrs.ept.dart.core.product.service.TestServiceImpl.getTestById(Test
> ServiceImpl.java:118)[564: product:1.0.0]
>
>         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native 
> Method)[:1.8.0_45]
>
>         at 
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.j
> ava:62)[:1.8.0_45]
>
>         at 
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccess
> orImpl.java:43)[:1.8.0_45]
>
>         at java.lang.reflect.Method.invoke(Method.java:497)[:1.8.0_45]
>
>         at 
> org.apache.aries.proxy.impl.ProxyHandler$1.invoke(ProxyHandler.java:54
> )
>
>         at 
> org.apache.aries.proxy.impl.ProxyHandler.invoke(ProxyHandler.java:119)
>
>         at 
> com.wrs.ept.dart.core.product.service.$TestServiceImpl571557319.getTes
> tById(Unknown Source)[564: product:1.0.0]
>
>         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native 
> Method)[:1.8.0_45]
>
>         at 
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.j
> ava:62)[:1.8.0_45]
>
>         at 
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccess
> orImpl.java:43)[:1.8.0_45]
>
>         at java.lang.reflect.Method.invoke(Method.java:497)[:1.8.0_45]
>
>         at 
> org.apache.cxf.service.invoker.AbstractInvoker.performInvocation(Abstr
> actInvoker.java:181)[317:org.apache.cxf.cxf-core:3.0.4]
>
>         at 
> org.apache.cxf.service.invoker.AbstractInvoker.invoke(AbstractInvoker.
> java:97)[317:org.apache.cxf.cxf-core:3.0.4]
>
>         at 
> org.apache.cxf.jaxrs.JAXRSInvoker.invoke(JAXRSInvoker.java:200)[441:or
> g.apache.cxf.cxf-rt-frontend-jaxrs:3.0.4]
>
>         at 
> org.apache.cxf.jaxrs.JAXRSInvoker.invoke(JAXRSInvoker.java:99)[441:org
> .apache.cxf.cxf-rt-frontend-jaxrs:3.0.4]
>
>         at 
> org.apache.cxf.interceptor.ServiceInvokerInterceptor$1.run(ServiceInvo
> kerInterceptor.java:59)[317:org.apache.cxf.cxf-core:3.0.4]
>
>         at 
> org.apache.cxf.interceptor.ServiceInvokerInterceptor.handleMessage(Ser
> viceInvokerInterceptor.java:96)[317:org.apache.cxf.cxf-core:3.0.4]
>
>         at 
> org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseIntercepto
> rChain.java:307)[317:org.apache.cxf.cxf-core:3.0.4]
>
>         at 
> org.apache.cxf.transport.ChainInitiationObserver.onMessage(ChainInitia
> tionObserver.java:121)[317:org.apache.cxf.cxf-core:3.0.4]
>
>         at 
> org.apache.cxf.transport.http.AbstractHTTPDestination.invoke(AbstractH
> TTPDestination.java:251)[443:org.apache.cxf.cxf-rt-transports-http:3.0
> .4]
>
>         at 
> org.apache.cxf.transport.servlet.ServletController.invokeDestination(S
> ervletController.java:234)[443:org.apache.cxf.cxf-rt-transports-http:3
> .0.4]
>
>         at 
> org.apache.cxf.transport.servlet.ServletController.invoke(ServletContr
> oller.java:208)[443:org.apache.cxf.cxf-rt-transports-http:3.0.4]
>
>         at 
> org.apache.cxf.transport.servlet.ServletController.invoke(ServletContr
> oller.java:160)[443:org.apache.cxf.cxf-rt-transports-http:3.0.4]
>
>         at 
> org.apache.cxf.transport.servlet.CXFNonSpringServlet.invoke(CXFNonSpri
> ngServlet.java:171)[443:org.apache.cxf.cxf-rt-transports-http:3.0.4]
>
>         at 
> org.apache.cxf.transport.servlet.AbstractHTTPServlet.handleRequest(Abs
> tractHTTPServlet.java:293)[443:org.apache.cxf.cxf-rt-transports-http:3
> .0.4]
>
>         at 
> org.apache.cxf.transport.servlet.AbstractHTTPServlet.doGet(AbstractHTT
> PServlet.java:217)[443:org.apache.cxf.cxf-rt-transports-http:3.0.4]
>
>         at 
> javax.servlet.http.HttpServlet.service(HttpServlet.java:575)[66:org.ap
> ache.geronimo.specs.geronimo-servlet_3.0_spec:1.0.0]
>
>         at 
> org.apache.cxf.transport.servlet.AbstractHTTPServlet.service(AbstractH
> TTPServlet.java:268)[443:org.apache.cxf.cxf-rt-transports-http:3.0.4]
>
>         at 
> org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:684)
> [72:org.eclipse.jetty.aggregate.jetty-all-server:8.1.15.v20140411]
>
>         at 
> org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:
> 503)[72:org.eclipse.jetty.aggregate.jetty-all-server:8.1.15.v20140411]
>
>         at 
> org.ops4j.pax.web.service.jetty.internal.HttpServiceServletHandler.doH
> andle(HttpServiceServletHandler.java:69)[81:org.ops4j.pax.web.pax-web-
> jetty:3.1.4]
>
>         at 
> org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.ja
> va:137)[72:org.eclipse.jetty.aggregate.jetty-all-server:8.1.15.v201404
> 11]
>
>         at 
> org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java
> :557)[72:org.eclipse.jetty.aggregate.jetty-all-server:8.1.15.v20140411
> ]
>
>         at 
> org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandle
> r.java:231)[72:org.eclipse.jetty.aggregate.jetty-all-server:8.1.15.v20
> 140411]
>
>         at 
> org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandle
> r.java:1086)[72:org.eclipse.jetty.aggregate.jetty-all-server:8.1.15.v2
> 0140411]
>
>         at 
> org.ops4j.pax.web.service.jetty.internal.HttpServiceContext.doHandle(H
> ttpServiceContext.java:240)[81:org.ops4j.pax.web.pax-web-jetty:3.1.4]
>
>         at 
> org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:4
> 29)[72:org.eclipse.jetty.aggregate.jetty-all-server:8.1.15.v20140411]
>
>         at 
> org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler
> .java:193)[72:org.eclipse.jetty.aggregate.jetty-all-server:8.1.15.v201
> 40411]
>
>         at 
> org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler
> .java:1020)[72:org.eclipse.jetty.aggregate.jetty-all-server:8.1.15.v20
> 140411]
>
>         at 
> org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.ja
> va:135)[72:org.eclipse.jetty.aggregate.jetty-all-server:8.1.15.v201404
> 11]
>
>         at 
> org.ops4j.pax.web.service.jetty.internal.JettyServerHandlerCollection.
> handle(JettyServerHandlerCollection.java:75)[81:org.ops4j.pax.web.pax-
> web-jetty:3.1.4]
>
>         at 
> org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.
> java:116)[72:org.eclipse.jetty.aggregate.jetty-all-server:8.1.15.v2014
> 0411]
>
>         at 
> org.eclipse.jetty.server.Server.handle(Server.java:370)[72:org.eclipse
> .jetty.aggregate.jetty-all-server:8.1.15.v20140411]
>
>         at 
> org.eclipse.jetty.server.AbstractHttpConnection.handleRequest(Abstract
> HttpConnection.java:494)[72:org.eclipse.jetty.aggregate.jetty-all-serv
> er:8.1.15.v20140411]
>
>         at 
> org.eclipse.jetty.server.AbstractHttpConnection.headerComplete(Abstrac
> tHttpConnection.java:971)[72:org.eclipse.jetty.aggregate.jetty-all-ser
> ver:8.1.15.v20140411]
>
>         at
> org.eclipse.jetty.server.AbstractHttpConnection$RequestHandler.headerC
> omplete(AbstractHttpConnection.java:1033)[72:org.eclipse.jetty.aggrega
> te.jetty-all-server:8.1.15.v20140411]
>
>         at 
> org.eclipse.jetty.http.HttpParser.parseNext(HttpParser.java:644)[72:or
> g.eclipse.jetty.aggregate.jetty-all-server:8.1.15.v20140411]
>
>         at 
> org.eclipse.jetty.http.HttpParser.parseAvailable(HttpParser.java:235)[
> 72:org.eclipse.jetty.aggregate.jetty-all-server:8.1.15.v20140411]
>
>         at 
> org.eclipse.jetty.server.AsyncHttpConnection.handle(AsyncHttpConnectio
> n.java:82)[72:org.eclipse.jetty.aggregate.jetty-all-server:8.1.15.v201
> 40411]
>
>         at 
> org.eclipse.jetty.io.nio.SelectChannelEndPoint.handle(SelectChannelEnd
> Point.java:696)[72:org.eclipse.jetty.aggregate.jetty-all-server:8.1.15
> .v20140411]
>
>         at 
> org.eclipse.jetty.io.nio.SelectChannelEndPoint$1.run(SelectChannelEndP
> oint.java:53)[72:org.eclipse.jetty.aggregate.jetty-all-server:8.1.15.v
> 20140411]
>
>         at 
> org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool
> .java:608)[72:org.eclipse.jetty.aggregate.jetty-all-server:8.1.15.v201
> 40411]
>
>         at 
> org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.
> java:543)[72:org.eclipse.jetty.aggregate.jetty-all-server:8.1.15.v2014
> 0411]
>
>         at java.lang.Thread.run(Thread.java:745)[:1.8.0_45]
>
> 2015-06-24 18:44:00,164 | INFO  | qtp713727344-65  | 
> ticalLoggingSessionEventListener | 111 - 
> org.jboss.logging.jboss-logging - 3.1.4.GA | Session Metrics {
>
>     20798530247 nanoseconds spent acquiring 2114 JDBC connections;
>
>     180257790 nanoseconds spent releasing 2114 JDBC connections;
>
>     20849510365 nanoseconds spent preparing 2115 JDBC statements;
>
>     5556061459 nanoseconds spent executing 2115 JDBC statements;
>
>     0 nanoseconds spent executing 0 JDBC batches;
>
>     0 nanoseconds spent performing 0 L2C puts;
>
>     0 nanoseconds spent performing 0 L2C hits;
>
>     0 nanoseconds spent performing 0 L2C misses;
>
>     2549708385 nanoseconds spent executing 1 flushes (flushing a total 
> of 203873 entities and 2117 collections);
>
>     0 nanoseconds spent executing 0 partial-flushes (flushing a total 
> of 0 entities and 0 collections)
>
> }
>

--
Krzysztof Sobkowiak

JEE & OSS Architect
Apache Software Foundation Member
Apache ServiceMix <http://servicemix.apache.org/> Committer & PMC Senior 
Solution Architect @ Capgemini SSC <http://www.pl.capgemini-sdm.com/en/>

Reply via email to