You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@cxf.apache.org by Sonam Samdupkhangsar <So...@imail.org> on 2014/03/17 19:44:28 UTC

Jaxrs Weblogic 12c service error - No root resource matching request path {service} has been found

Hi,

I am deploying a sample CXF JAXRS service on WebLogic 12c.  I can see the service listing page on WebLogic 12c at http://myserverip:7001/ecaching/services.  However, when I access the http://myserverip:7001/ecaching/Greet?_wadl  link I get the following error:


<Mar 17, 2014 12:35:10 PM MDT> <Error> <HTTP> <BEA-101020> <[ServletContext@301812884[app:ecaching module:ecaching.war path:null spec-version:3.0]] Servlet failed with an Exception
java.lang.IllegalStateException: strict servlet API: cannot call getOutputStream() after getWriter()
        at weblogic.servlet.internal.ServletResponseImpl.getOutputStream(ServletResponseImpl.java:292)
        at org.apache.cxf.transport.servlet.servicelist.ServiceListGeneratorServlet.renderStyleSheet(ServiceListGeneratorServlet.java:174)
        at org.apache.cxf.transport.servlet.servicelist.ServiceListGeneratorServlet.service(ServiceListGeneratorServlet.java:89)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:844)
        at org.apache.cxf.transport.servlet.ServletController.invoke(ServletController.java:166)
        Truncated. see log file for complete stacktrace
>
[2014-03-17 12:35:12,846]  WARN JAXRSInInterceptor 164 processRequest - No root resource matching request path /ecaching/Greet has been found, Relative Path: /. Please enable FINE/TRACE log level for more details.
[2014-03-17 12:35:12,888]  WARN WebApplicationExceptionMapper 73 toResponse - javax.ws.rs.NotFoundException: HTTP 404 Not Found
        at org.apache.cxf.jaxrs.utils.SpecExceptions.toNotFoundException(SpecExceptions.java:89)
        at org.apache.cxf.jaxrs.utils.ExceptionUtils.toNotFoundException(ExceptionUtils.java:117)



The following are my Java code and configuration for hosting the Greeting service:

@Path("Greeting/1.0")
public interface Greet {
       @GET
       @Produces(MediaType.APPLICATION_JSON)
       public String hello();
}

@Service("greeting")
public class Greeting implements Greet{
       private Logger logger = LoggerFactory.getLogger(getClass());

       @Override
       public String hello() {
              String name = "Yak Yak Yak";
              logger.debug("returning hello {}", name);
              return "hello " + name;
       }
}

My jaxrs:server config is this:

<jaxrs:server id="greetingService.v1.ep" address="/Greet">
       <jaxrs:serviceBeans>
              <bean id="greet" class="org.dummy.Greeting" />
       </jaxrs:serviceBeans>
</jaxrs:server>

And a partial of my web.xml:
<servlet>
       <servlet-name>CXFServlet</servlet-name>
       <servlet-class>org.apache.cxf.transport.servlet.CXFServlet</servlet-class>
       <load-on-startup>1</load-on-startup>
</servlet>

<servlet-mapping>
       <servlet-name>CXFServlet</servlet-name>
       <url-pattern>/*</url-pattern>
</servlet-mapping>


Has anyone else been experiencing this issue on WebLogic 12c or any insight?

Thanks
-Sonam

RE: Jaxrs Weblogic 12c service error - No root resource matching request path {service} has been found

Posted by Sonam Samdupkhangsar <So...@imail.org>.
Thanks Sergey.   

Btw which version has the fix for "getWriter()"?  I am already using the "3.0.0-milestone2".  

thanks
-Sonam

-----Original Message-----
From: Sergey Beryozkin [mailto:sberyozkin@gmail.com] 
Sent: Monday, March 17, 2014 1:08 PM
To: users@cxf.apache.org
Subject: Re: Jaxrs Weblogic 12c service error - No root resource matching request path {service} has been found

Hi,

The 1st exception to do with the getWriter() seems unrelated, and FYI it has been fixed few days back.

Re the wadl query: please check the migration guide for 3.0, cxf-rt-rs-service-description module is needed to support WADL queries

Cheers, Sergey

On 17/03/14 18:44, Sonam Samdupkhangsar wrote:
> Hi,
>
> I am deploying a sample CXF JAXRS service on WebLogic 12c.  I can see the service listing page on WebLogic 12c at http://myserverip:7001/ecaching/services.  However, when I access the http://myserverip:7001/ecaching/Greet?_wadl  link I get the following error:
>
>
> <Mar 17, 2014 12:35:10 PM MDT> <Error> <HTTP> <BEA-101020> 
> <[ServletContext@301812884[app:ecaching module:ecaching.war path:null 
> spec-version:3.0]] Servlet failed with an Exception
> java.lang.IllegalStateException: strict servlet API: cannot call getOutputStream() after getWriter()
>          at weblogic.servlet.internal.ServletResponseImpl.getOutputStream(ServletResponseImpl.java:292)
>          at org.apache.cxf.transport.servlet.servicelist.ServiceListGeneratorServlet.renderStyleSheet(ServiceListGeneratorServlet.java:174)
>          at org.apache.cxf.transport.servlet.servicelist.ServiceListGeneratorServlet.service(ServiceListGeneratorServlet.java:89)
>          at javax.servlet.http.HttpServlet.service(HttpServlet.java:844)
>          at org.apache.cxf.transport.servlet.ServletController.invoke(ServletController.java:166)
>          Truncated. see log file for complete stacktrace
>>
> [2014-03-17 12:35:12,846]  WARN JAXRSInInterceptor 164 processRequest - No root resource matching request path /ecaching/Greet has been found, Relative Path: /. Please enable FINE/TRACE log level for more details.
> [2014-03-17 12:35:12,888]  WARN WebApplicationExceptionMapper 73 toResponse - javax.ws.rs.NotFoundException: HTTP 404 Not Found
>          at org.apache.cxf.jaxrs.utils.SpecExceptions.toNotFoundException(SpecExceptions.java:89)
>          at 
> org.apache.cxf.jaxrs.utils.ExceptionUtils.toNotFoundException(Exceptio
> nUtils.java:117)
>
>
>
> The following are my Java code and configuration for hosting the Greeting service:
>
> @Path("Greeting/1.0")
> public interface Greet {
>         @GET
>         @Produces(MediaType.APPLICATION_JSON)
>         public String hello();
> }
>
> @Service("greeting")
> public class Greeting implements Greet{
>         private Logger logger = LoggerFactory.getLogger(getClass());
>
>         @Override
>         public String hello() {
>                String name = "Yak Yak Yak";
>                logger.debug("returning hello {}", name);
>                return "hello " + name;
>         }
> }
>
> My jaxrs:server config is this:
>
> <jaxrs:server id="greetingService.v1.ep" address="/Greet">
>         <jaxrs:serviceBeans>
>                <bean id="greet" class="org.dummy.Greeting" />
>         </jaxrs:serviceBeans>
> </jaxrs:server>
>
> And a partial of my web.xml:
> <servlet>
>         <servlet-name>CXFServlet</servlet-name>
>         <servlet-class>org.apache.cxf.transport.servlet.CXFServlet</servlet-class>
>         <load-on-startup>1</load-on-startup>
> </servlet>
>
> <servlet-mapping>
>         <servlet-name>CXFServlet</servlet-name>
>         <url-pattern>/*</url-pattern>
> </servlet-mapping>
>
>
> Has anyone else been experiencing this issue on WebLogic 12c or any insight?
>
> Thanks
> -Sonam
>


--
Sergey Beryozkin

Talend Community Coders
http://coders.talend.com/

Blog: http://sberyozkin.blogspot.com

Re: Jaxrs Weblogic 12c service error - No root resource matching request path {service} has been found

Posted by Sergey Beryozkin <sb...@gmail.com>.
Hi,

The 1st exception to do with the getWriter() seems unrelated, and FYI it 
has been fixed few days back.

Re the wadl query: please check the migration guide for 3.0, 
cxf-rt-rs-service-description module is needed to support WADL queries

Cheers, Sergey

On 17/03/14 18:44, Sonam Samdupkhangsar wrote:
> Hi,
>
> I am deploying a sample CXF JAXRS service on WebLogic 12c.  I can see the service listing page on WebLogic 12c at http://myserverip:7001/ecaching/services.  However, when I access the http://myserverip:7001/ecaching/Greet?_wadl  link I get the following error:
>
>
> <Mar 17, 2014 12:35:10 PM MDT> <Error> <HTTP> <BEA-101020> <[ServletContext@301812884[app:ecaching module:ecaching.war path:null spec-version:3.0]] Servlet failed with an Exception
> java.lang.IllegalStateException: strict servlet API: cannot call getOutputStream() after getWriter()
>          at weblogic.servlet.internal.ServletResponseImpl.getOutputStream(ServletResponseImpl.java:292)
>          at org.apache.cxf.transport.servlet.servicelist.ServiceListGeneratorServlet.renderStyleSheet(ServiceListGeneratorServlet.java:174)
>          at org.apache.cxf.transport.servlet.servicelist.ServiceListGeneratorServlet.service(ServiceListGeneratorServlet.java:89)
>          at javax.servlet.http.HttpServlet.service(HttpServlet.java:844)
>          at org.apache.cxf.transport.servlet.ServletController.invoke(ServletController.java:166)
>          Truncated. see log file for complete stacktrace
>>
> [2014-03-17 12:35:12,846]  WARN JAXRSInInterceptor 164 processRequest - No root resource matching request path /ecaching/Greet has been found, Relative Path: /. Please enable FINE/TRACE log level for more details.
> [2014-03-17 12:35:12,888]  WARN WebApplicationExceptionMapper 73 toResponse - javax.ws.rs.NotFoundException: HTTP 404 Not Found
>          at org.apache.cxf.jaxrs.utils.SpecExceptions.toNotFoundException(SpecExceptions.java:89)
>          at org.apache.cxf.jaxrs.utils.ExceptionUtils.toNotFoundException(ExceptionUtils.java:117)
>
>
>
> The following are my Java code and configuration for hosting the Greeting service:
>
> @Path("Greeting/1.0")
> public interface Greet {
>         @GET
>         @Produces(MediaType.APPLICATION_JSON)
>         public String hello();
> }
>
> @Service("greeting")
> public class Greeting implements Greet{
>         private Logger logger = LoggerFactory.getLogger(getClass());
>
>         @Override
>         public String hello() {
>                String name = "Yak Yak Yak";
>                logger.debug("returning hello {}", name);
>                return "hello " + name;
>         }
> }
>
> My jaxrs:server config is this:
>
> <jaxrs:server id="greetingService.v1.ep" address="/Greet">
>         <jaxrs:serviceBeans>
>                <bean id="greet" class="org.dummy.Greeting" />
>         </jaxrs:serviceBeans>
> </jaxrs:server>
>
> And a partial of my web.xml:
> <servlet>
>         <servlet-name>CXFServlet</servlet-name>
>         <servlet-class>org.apache.cxf.transport.servlet.CXFServlet</servlet-class>
>         <load-on-startup>1</load-on-startup>
> </servlet>
>
> <servlet-mapping>
>         <servlet-name>CXFServlet</servlet-name>
>         <url-pattern>/*</url-pattern>
> </servlet-mapping>
>
>
> Has anyone else been experiencing this issue on WebLogic 12c or any insight?
>
> Thanks
> -Sonam
>


-- 
Sergey Beryozkin

Talend Community Coders
http://coders.talend.com/

Blog: http://sberyozkin.blogspot.com