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