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

Reply via email to