I've been using CXF and Tomcat 5.5 until this point with no problem.  The
jax-ws endpoint in the beans.xml file included worked fine when it was
within cxf-servlet.xml.  Today, we decided to implement a REST service via
(JAX-RS), and had to switch from using cxf-servlet.xml to beans.xml to
configure our endpoints.  With the switch to beans.xml and deploy in Tomcat,
I get the following error in catalina.log, and I cannot find any supporting
stack trace in localhost.log:

INFO: Deploying web application archive myService.war
log4j:WARN No appenders could be found for logger
(org.apache.commons.digester.Digester.sax).
log4j:WARN Please initialize the log4j system properly.
Aug 26, 2008 3:00:14 PM org.apache.catalina.core.StandardContext start
*SEVERE: Error listenerStart*
Aug 26, 2008 3:00:14 PM org.apache.catalina.core.StandardContext start
*SEVERE: Context [/myService.war] startup failed due to previous errors*


I haven't been able to find much in terms of solutions to this problem.  I'm
using CXF 2.1.1, which contains v. 2.0.8 of the spring jars (spring-beans,
spring-context, spring-core, and spring-web).


I've included my web.xml and beans.xml files.  Does anyone know how to get
around this issue?

Thanks in advance,
Bob


web.xml
--------------

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application
2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd";>
<web-app>
    <display-name>cxf</display-name>
    <description>cxf</description>
    <!-- context-param added for REST service support -->
    <context-param>
      <param-name>contextConfigLocation</param-name>
      <param-value>WEB-INF/beans.xml</param-value>
    </context-param>
    <!-- listener added for REST service support -->
    <listener>
      <listener-class>
        org.springframework.web.context.ContextLoaderListener
      </listener-class>
    </listener>
    <servlet>
        <servlet-name>cxf</servlet-name>
        <display-name>cxf</display-name>
        <description>Apache CXF Endpoint</description>

<servlet-class>org.apache.cxf.transport.servlet.CXFServlet</servlet-class>
        <load-on-startup>1</load-on-startup>
    </servlet>
    <servlet-mapping>
        <servlet-name>cxf</servlet-name>
        <url-pattern>/services/*</url-pattern>
    </servlet-mapping>
    <session-config>
        <session-timeout>60</session-timeout>
    </session-config>
</web-app>



beans.xml
-----------------

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans";
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
  xmlns:jaxws="http://cxf.apache.org/jaxws";
  xmlns:jaxrs="http://cxf.apache.org/jaxrs";
    xsi:schemaLocation="
  http://www.springframework.org/schema/beans
  http://www.springframework.org/schema/beans/spring-beans.xsd
  http://cxf.apache.org/jaxws
  http://cxf.apache.org/schemas/jaxws.xsd
  http://cxf.apache.org/jaxrs
  http://cxf.apache.org/schemas/jaxrs.xsd";>

  <import resource="classpath:META-INF/cxf/cxf.xml"/>
  <import resource="classpath:META-INF/cxf/cxf-extension-soap.xml" />
  <import resource="classpath:META-INF/cxf/cxf-extension-jaxrs-binding.xml"
/>
  <import resource="classpath:META-INF/cxf/cxf-extension-jaxws.xml" />
  <import resource="classpath:META-INF/cxf/cxf-servlet.xml" />


  <bean id="imageProductService"
class="com.test.services.ImageProductService" />

  <jaxrs:server id="imageProductService" address="/">
    <jaxrs:serviceBeans>
      <ref bean="imageProductService" />
    </jaxrs:serviceBeans>
  </jaxrs:server>

  <jaxws:endpoint
        id="Imagery"
        implementor="com.test.services.ImageryServicePortImpl"
        wsdlLocation="WEB-INF/resource/Imagery.wsdl"
        address="/Imagery">
  </jaxws:endpoint>

</beans>

Reply via email to