Hi Kasun, Thanks a lot for the info. sure, i'll try that out. I'll give an update once I check it. Thought to continue with a normal maven web project for the moment.
Regards, Jerad On Tue, Jul 29, 2014 at 12:40 PM, Kasun Gajasinghe <[email protected]> wrote: > Hi Jerad, > > It seems you are trying to write a JAX-RS service using CXF. If that's the > case, remove the jersey libraries from your system. You shouldn't mix two > implementations together. You can find the CXF related maven dependencies > by looking at samples in Application Server 5.2.1. Specifically, the sample > jaxrs-basic at AS_HOME/samples/Jaxws-Jaxrs/ folder would help. > > regards, > KasunG > > > > On Tue, Jul 29, 2014 at 11:34 AM, Jerad Rutnam <[email protected]> wrote: > >> Hi Abimaran, >> >> Thanks a lot for your reply. I have tried updating the jersey version, >> but it didn't work out. now it gives ClassNotFoundExceptions. See >> modification below, >> >> >> *1. pom.xml* >> ==================================================================== >> >> <dependencies> >> >> <dependency> >> <groupId>javax.ws.rs</groupId> >> <artifactId>javax.ws.rs-api</artifactId> >> <version>2.0</version> >> <scope>compile</scope> >> </dependency> >> >> <dependency> >> <groupId>org.glassfish.jersey.core</groupId> >> <artifactId>jersey-server</artifactId> >> <version>2.11</version> >> </dependency> >> >> <dependency> >> <groupId>org.glassfish.jersey.core</groupId> >> <artifactId>jersey-common</artifactId> >> <version>2.11</version> >> </dependency> >> >> <dependency> >> <groupId>org.glassfish.hk2</groupId> >> <artifactId>hk2-api</artifactId> >> <version>2.2.0</version> >> </dependency> >> >> <dependency> >> <groupId>org.glassfish.jersey.media</groupId> >> <artifactId>jersey-media-json-jackson</artifactId> >> <version>2.11</version> >> </dependency> >> >> <dependency> >> <groupId>org.glassfish.jersey.media</groupId> >> <artifactId>jersey-media-json-processing</artifactId> >> <version>2.11</version> >> </dependency> >> >> >> <dependency> >> <groupId>org.json</groupId> >> <artifactId>json</artifactId> >> <version>20140107</version> >> </dependency> >> >> </dependencies> >> >> ==================================================================== >> >> *2. Error Log* >> ==================================================================== >> >> ERROR {org.apache.catalina.core.StandardWrapperValve} - >> Servlet.service() for servlet [BookStoreService] in context with path >> [/JAXRS-Service] threw exception [Servlet execution threw an exception] >> with root cause >> java.lang.NoClassDefFoundError: >> org/glassfish/hk2/api/ServiceLocatorFactory$CreatePolicy >> at >> org.glassfish.jersey.internal.inject.Injections._createLocator(Injections.java:138) >> at >> org.glassfish.jersey.internal.inject.Injections.createLocator(Injections.java:109) >> at >> org.glassfish.jersey.server.internal.RuntimeDelegateImpl.<init>(RuntimeDelegateImpl.java:63) >> at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) >> at >> sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57) >> at >> sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) >> at java.lang.reflect.Constructor.newInstance(Constructor.java:526) >> at java.lang.Class.newInstance(Class.java:374) >> at javax.ws.rs.ext.FactoryFinder.newInstance(FactoryFinder.java:117) >> at javax.ws.rs.ext.FactoryFinder.find(FactoryFinder.java:165) >> at >> javax.ws.rs.ext.RuntimeDelegate.findDelegate(RuntimeDelegate.java:135) >> at javax.ws.rs.ext.RuntimeDelegate.getInstance(RuntimeDelegate.java:120) >> at >> javax.ws.rs.core.Response$ResponseBuilder.newInstance(Response.java:848) >> at javax.ws.rs.core.Response.status(Response.java:613) >> at >> org.apache.cxf.jaxrs.utils.JAXRSUtils.createResponse(JAXRSUtils.java:566) >> at >> org.apache.cxf.jaxrs.interceptor.JAXRSInInterceptor.processRequest(JAXRSInInterceptor.java:166) >> at >> org.apache.cxf.jaxrs.interceptor.JAXRSInInterceptor.handleMessage(JAXRSInInterceptor.java:101) >> at >> org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:271) >> at >> org.apache.cxf.transport.ChainInitiationObserver.onMessage(ChainInitiationObserver.java:121) >> at >> org.apache.cxf.transport.http.AbstractHTTPDestination.invoke(AbstractHTTPDestination.java:239) >> at >> org.apache.cxf.transport.servlet.ServletController.invokeDestination(ServletController.java:223) >> at >> org.apache.cxf.transport.servlet.ServletController.invoke(ServletController.java:203) >> at >> org.apache.cxf.transport.servlet.ServletController.invoke(ServletController.java:137) >> at >> org.apache.cxf.transport.servlet.CXFNonSpringServlet.invoke(CXFNonSpringServlet.java:159) >> at >> org.apache.cxf.transport.servlet.AbstractHTTPServlet.handleRequest(AbstractHTTPServlet.java:286) >> at >> org.apache.cxf.transport.servlet.AbstractHTTPServlet.doGet(AbstractHTTPServlet.java:211) >> at javax.servlet.http.HttpServlet.service(HttpServlet.java:735) >> at >> org.apache.cxf.transport.servlet.AbstractHTTPServlet.service(AbstractHTTPServlet.java:262) >> at >> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305) >> at >> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210) >> at >> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:222) >> at >> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:123) >> at >> org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472) >> at >> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:171) >> at >> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:99) >> at >> org.wso2.carbon.statistics.webapp.RequestIntercepterValve.invoke(RequestIntercepterValve.java:43) >> at >> org.wso2.carbon.bam.webapp.stat.publisher.WebAppStatisticPublisherValve.invoke(WebAppStatisticPublisherValve.java:104) >> at >> org.wso2.carbon.tomcat.ext.valves.CompositeValve.continueInvocation(CompositeValve.java:178) >> at >> org.wso2.carbon.tomcat.ext.valves.CarbonTomcatValve$1.invoke(CarbonTomcatValve.java:47) >> at >> org.wso2.carbon.webapp.mgt.TenantLazyLoaderValve.invoke(TenantLazyLoaderValve.java:56) >> at >> org.wso2.carbon.tomcat.ext.valves.TomcatValveContainer.invokeValves(TomcatValveContainer.java:47) >> at >> org.wso2.carbon.tomcat.ext.valves.CompositeValve.invoke(CompositeValve.java:141) >> at >> org.wso2.carbon.tomcat.ext.valves.CarbonStuckThreadDetectionValve.invoke(CarbonStuckThreadDetectionValve.java:156) >> at >> org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:936) >> at >> org.wso2.carbon.tomcat.ext.valves.CarbonContextCreatorValve.invoke(CarbonContextCreatorValve.java:52) >> at >> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118) >> at >> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:407) >> at >> org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1004) >> at >> org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:589) >> at >> org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.run(NioEndpoint.java:1653) >> at >> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) >> at >> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) >> at java.lang.Thread.run(Thread.java:745) >> >> ==================================================================== >> >> Anyway i'll see if I missed anything else, and will update with a result >> if i'm able to fix it. :) >> >> Thanks, >> Jerad >> >> >> On Mon, Jul 28, 2014 at 4:59 PM, Abimaran Kugathasan <[email protected]> >> wrote: >> >>> Hi Jerad, >>> >>> Seems you are using older version of jersey 1.8 and newer version of >>> JAX-RS (2.0). Update the jersey to latest one version (may be 2.11). >>> >>> Jersey 2.0 appears to be the first version that supports JAX-RS 2.0 API >>> >>> >>> On Mon, Jul 28, 2014 at 4:44 PM, Jerad Rutnam <[email protected]> wrote: >>> >>>> Hi, >>>> >>>> I'm trying to write a *JAX-RS Webapp Using CXF & JSON (Maven Project)*, >>>> which is deploying on *WSO2 Application Server*. And i'm getting this >>>> error which I couldn't figure it out. Below is the error report i'm getting >>>> from the server. >>>> >>>> >>>> *1. Reproduce: When sending a POST request from Jaggery App with JSON >>>> Object. * >>>> >>>> >>>> *2. Error Log* >>>> ==================================================================== >>>> >>>> ERROR {org.apache.catalina.core.StandardWrapperValve} - >>>> Servlet.service() for servlet [BookStoreService] in context with path >>>> [/JAXRS-Service] threw exception [Servlet execution threw an exception] >>>> with root cause >>>> java.lang.AbstractMethodError: >>>> javax.ws.rs.core.Response.getStatusInfo()Ljavax/ws/rs/core/Response$StatusType; >>>> at >>>> javax.ws.rs.WebApplicationException.computeExceptionMessage(WebApplicationException.java:205) >>>> at >>>> javax.ws.rs.WebApplicationException.<init>(WebApplicationException.java:179) >>>> at >>>> javax.ws.rs.WebApplicationException.<init>(WebApplicationException.java:244) >>>> at >>>> javax.ws.rs.WebApplicationException.<init>(WebApplicationException.java:133) >>>> at >>>> org.apache.cxf.jaxrs.utils.JAXRSUtils.readFromMessageBody(JAXRSUtils.java:1261) >>>> at >>>> org.apache.cxf.jaxrs.utils.JAXRSUtils.processParameter(JAXRSUtils.java:790) >>>> at >>>> org.apache.cxf.jaxrs.utils.JAXRSUtils.processParameters(JAXRSUtils.java:749) >>>> at >>>> org.apache.cxf.jaxrs.interceptor.JAXRSInInterceptor.processRequest(JAXRSInInterceptor.java:236) >>>> at >>>> org.apache.cxf.jaxrs.interceptor.JAXRSInInterceptor.handleMessage(JAXRSInInterceptor.java:101) >>>> at >>>> org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:271) >>>> at >>>> org.apache.cxf.transport.ChainInitiationObserver.onMessage(ChainInitiationObserver.java:121) >>>> at >>>> org.apache.cxf.transport.http.AbstractHTTPDestination.invoke(AbstractHTTPDestination.java:239) >>>> at >>>> org.apache.cxf.transport.servlet.ServletController.invokeDestination(ServletController.java:223) >>>> at >>>> org.apache.cxf.transport.servlet.ServletController.invoke(ServletController.java:203) >>>> at >>>> org.apache.cxf.transport.servlet.ServletController.invoke(ServletController.java:137) >>>> at >>>> org.apache.cxf.transport.servlet.CXFNonSpringServlet.invoke(CXFNonSpringServlet.java:159) >>>> at >>>> org.apache.cxf.transport.servlet.AbstractHTTPServlet.handleRequest(AbstractHTTPServlet.java:286) >>>> at >>>> org.apache.cxf.transport.servlet.AbstractHTTPServlet.doPost(AbstractHTTPServlet.java:206) >>>> at javax.servlet.http.HttpServlet.service(HttpServlet.java:755) >>>> at >>>> org.apache.cxf.transport.servlet.AbstractHTTPServlet.service(AbstractHTTPServlet.java:262) >>>> at >>>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305) >>>> at >>>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210) >>>> at >>>> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:222) >>>> at >>>> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:123) >>>> at >>>> org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472) >>>> at >>>> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:171) >>>> at >>>> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:99) >>>> at >>>> org.wso2.carbon.statistics.webapp.RequestIntercepterValve.invoke(RequestIntercepterValve.java:43) >>>> at >>>> org.wso2.carbon.bam.webapp.stat.publisher.WebAppStatisticPublisherValve.invoke(WebAppStatisticPublisherValve.java:104) >>>> at >>>> org.wso2.carbon.tomcat.ext.valves.CompositeValve.continueInvocation(CompositeValve.java:178) >>>> at >>>> org.wso2.carbon.tomcat.ext.valves.CarbonTomcatValve$1.invoke(CarbonTomcatValve.java:47) >>>> at >>>> org.wso2.carbon.webapp.mgt.TenantLazyLoaderValve.invoke(TenantLazyLoaderValve.java:56) >>>> at >>>> org.wso2.carbon.tomcat.ext.valves.TomcatValveContainer.invokeValves(TomcatValveContainer.java:47) >>>> at >>>> org.wso2.carbon.tomcat.ext.valves.CompositeValve.invoke(CompositeValve.java:141) >>>> at >>>> org.wso2.carbon.tomcat.ext.valves.CarbonStuckThreadDetectionValve.invoke(CarbonStuckThreadDetectionValve.java:156) >>>> at >>>> org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:936) >>>> at >>>> org.wso2.carbon.tomcat.ext.valves.CarbonContextCreatorValve.invoke(CarbonContextCreatorValve.java:52) >>>> at >>>> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118) >>>> at >>>> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:407) >>>> at >>>> org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1004) >>>> at >>>> org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:589) >>>> at >>>> org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.run(NioEndpoint.java:1653) >>>> at >>>> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) >>>> at >>>> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) >>>> at java.lang.Thread.run(Thread.java:745) >>>> >>>> ==================================================================== >>>> >>>> >>>> >>>> *3. Here are the current Maven Dependencies i'm using (pom.xml)* >>>> ==================================================================== >>>> >>>> <dependencies> >>>> >>>> <dependency> >>>> <groupId>javax.ws.rs</groupId> >>>> <artifactId>javax.ws.rs-api</artifactId> >>>> <version>2.0</version> >>>> <scope>compile</scope> >>>> </dependency> >>>> <dependency> >>>> <groupId>com.sun.jersey</groupId> >>>> <artifactId>jersey-server</artifactId> >>>> <version>1.8</version> >>>> </dependency> >>>> <dependency> >>>> <groupId>com.sun.jersey</groupId> >>>> <artifactId>jersey-json</artifactId> >>>> <version>1.8</version> >>>> </dependency> >>>> <dependency> >>>> <groupId>org.json</groupId> >>>> <artifactId>json</artifactId> >>>> <version>20140107</version> >>>> </dependency> >>>> >>>> </dependencies> >>>> >>>> ==================================================================== >>>> >>>> >>>> >>>> *4. cxf-servlet.xml* >>>> ==================================================================== >>>> >>>> <beans xmlns="http://www.springframework.org/schema/beans" >>>> xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" >>>> xmlns:jaxrs="http://cxf.apache.org/jaxrs" >>>> xsi:schemaLocation=" >>>> http://www.springframework.org/schema/beans >>>> http://www.springframework.org/schema/beans/spring-beans-2.0.xsd >>>> http://cxf.apache.org/jaxrs >>>> http://cxf.apache.org/schemas/jaxrs.xsd"> >>>> >>>> <jaxrs:server id="bookStoreService" address="/bookstoreservice"> >>>> <jaxrs:serviceBeans> >>>> <ref bean="serviceBean"/> >>>> </jaxrs:serviceBeans> >>>> </jaxrs:server> >>>> >>>> <bean id="serviceBean" >>>> class="com.wso2.jerad.training.webservice.jaxrs.BookStoreService"/> >>>> </beans> >>>> >>>> ==================================================================== >>>> >>>> >>>> >>>> *3. web.xml* >>>> ==================================================================== >>>> >>>> <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns=" >>>> http://java.sun.com/xml/ns/javaee" xsi:schemaLocation=" >>>> http://java.sun.com/xml/ns/javaee >>>> http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" version="2.5"> >>>> <display-name>Book Store Service</display-name> >>>> <servlet> >>>> <description>JAX-RS Endpoint</description> >>>> <servlet-name>BookStoreService</servlet-name> >>>> >>>> <servlet-class>org.apache.cxf.transport.servlet.CXFServlet</servlet-class> >>>> <init-param> >>>> <param-name>service-list-stylesheet</param-name> >>>> <param-value>servicelist.css</param-value> >>>> </init-param> >>>> <init-param> >>>> <param-name>com.sun.jersey.config.property.packages</param-name> >>>> <param-value>com.wso2.training.jaxrs.service</param-value> >>>> </init-param> >>>> <init-param> >>>> >>>> <param-name>com.sun.jersey.api.json.POJOMappingFeature</param-name> >>>> <param-value>true</param-value> >>>> </init-param> >>>> <load-on-startup>1</load-on-startup> >>>> </servlet> >>>> <servlet-mapping> >>>> <servlet-name>BookStoreService</servlet-name> >>>> <url-pattern>/services/*</url-pattern> >>>> </servlet-mapping> >>>> <session-config> >>>> <session-timeout>60</session-timeout> >>>> </session-config> >>>> </web-app> >>>> >>>> ==================================================================== >>>> >>>> >>>> Really appreciate if anyone can help me on this. >>>> >>>> Thanks, >>>> -- >>>> *Jerad Rutnam | **Software Engineer - UI* >>>> WSO2, Inc. www.wso2.com >>>> >>>> *Email: [email protected] <[email protected]>* >>>> >>>> _______________________________________________ >>>> Dev mailing list >>>> [email protected] >>>> http://wso2.org/cgi-bin/mailman/listinfo/dev >>>> >>>> >>> >>> >>> -- >>> Thanks >>> Abimaran Kugathasan >>> >>> Software Engineer | WSO2 Inc >>> Data & APIs Technologies Team >>> Mobile : +94 77 1708229 >>> >>> <http://stackoverflow.com/users/515034> >>> <http://lk.linkedin.com/in/abimaran> >>> <http://www.lkabimaran.blogspot.com/> <https://github.com/abimaran> >>> <https://twitter.com/abimaran> >>> >>> >> >> >> -- >> *Jerad Rutnam | **Software Engineer - UI* >> WSO2, Inc. www.wso2.com >> >> *Email: [email protected] <[email protected]>* >> >> _______________________________________________ >> Dev mailing list >> [email protected] >> http://wso2.org/cgi-bin/mailman/listinfo/dev >> >> > > > -- > > *Kasun Gajasinghe*Senior Software Engineer, WSO2 Inc. > email: kasung AT spamfree wso2.com > linked-in: http://lk.linkedin.com/in/gajasinghe > blog: http://kasunbg.org > > > -- *Jerad Rutnam | **Software Engineer - UI* WSO2, Inc. www.wso2.com *Email: [email protected] <[email protected]>*
_______________________________________________ Dev mailing list [email protected] http://wso2.org/cgi-bin/mailman/listinfo/dev
