Hi,

I've got the following in my server log
Can't find the request for http://webservices.mycompany.com/websvc'sObserver

What am I missing so that the Observer cannot find it's endpoints?
I am using cxf2.2, it has been working in cxf2.1, it seems that CXFServlet
cannot find the endpoints. It's running on jdk1.6.0_11 and resin-3.1.6

The following is web.xml

<web-app>
    <servlet>
        <servlet-name>CXFServlet</servlet-name>
        <display-name>CXF Servlet</display-name>

<servlet-class>org.apache.cxf.transport.servlet.CXFServlet</servlet-class>
        <init-param>
            <param-name>config-location</param-name>
            <param-value>cxf.xml</param-value>
        </init-param>
        <load-on-startup>1</load-on-startup>
    </servlet>
    <servlet-mapping>
        <servlet-name>CXFServlet</servlet-name>
        <url-pattern>/*</url-pattern>
    </servlet-mapping>
</web-app>


The following is cxf.xml in WEB-INF/classes

<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:cxf="http://cxf.apache.org/core";
       xmlns:jaxrs="http://cxf.apache.org/jaxrs";
       xsi:schemaLocation="
        http://cxf.apache.org/core
        http://cxf.apache.org/schemas/core.xsd
        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
        http://cxf.apache.org/jaxws
        http://cxf.apache.org/schemas/jaxws.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-servlet.xml"/>
    <jaxws:client name="{
http://webservices.mycompany.com/websvc}FarePortType";
                  createdFromAPI="true">
        <jaxws:dataBinding>
            <bean class="org.apache.cxf.xmlbeans.XmlBeansDataBinding"/>
        </jaxws:dataBinding>
    </jaxws:client>
    <jaxws:endpoint name="{
http://webservices.mycompany.com/websvc}FarePortType";
                    address="/websvc"

wsdlLocation="classpath:com/mycompany/webservices/wsdl/OTA_AirFareDisplayRQ.wsdl"
                    createdFromAPI="true"
                    >
        <jaxws:properties>
            <entry key="schema-validation-enabled" value="true"/>
        </jaxws:properties>
        <jaxws:dataBinding>
            <bean class="org.apache.cxf.xmlbeans.XmlBeansDataBinding"/>
        </jaxws:dataBinding>
    </jaxws:endpoint>

    <bean id="logInbound"
class="org.apache.cxf.interceptor.LoggingInInterceptor"/>
    <bean id="logOutbound"
class="org.apache.cxf.interceptor.LoggingOutInterceptor"/>
    <bean id="cxf" class="org.apache.cxf.bus.CXFBusImpl">
        <property name="inInterceptors">
            <list>
                <ref bean="logInbound"/>
            </list>
        </property>
        <property name="outInterceptors">
            <list>
                <ref bean="logOutbound"/>
            </list>
        </property>
        <property name="outFaultInterceptors">
            <list>
                <ref bean="logOutbound"/>
            </list>
        </property>
    </bean>
    <bean id="fastinfoset"
class="org.apache.cxf.feature.FastInfosetFeature"/>
    <cxf:bus>
        <cxf:features>
            <cxf:logging/>
            <ref bean="fastinfoset"/>
        </cxf:features>
    </cxf:bus>
</beans>

The following is the definition of Interface

 WebService(targetNamespace = "http://webservices.mycompany.com/websvc";,
name = "FarePortType")
@SOAPBinding(parameterStyle = SOAPBinding.ParameterStyle.BARE)
public interface FarePortType {
    @WebResult(name = "OTA_AirFareDisplayRS", targetNamespace = "
http://www.opentravel.org/OTA/2003/05";, partName = "body")
    @WebMethod(operationName = "FareRQ", action = "OTA")
    public org.opentravel.ota.x2003.x05.OTAAirFareDisplayRSDocument fareRQ(
        @WebParam(partName = "body", name = "OTA_AirFareDisplayRQ",
targetNamespace = "http://www.opentravel.org/OTA/2003/05";)
        org.opentravel.ota.x2003.x05.OTAAirFareDisplayRQDocument body
    );
}

Finally the following is the header of the class

@javax.jws.WebService(
                      serviceName = "FareService",
                      portName = "FarePortType",
                      targetNamespace = "
http://webservices.mycompany.com/websvc";,
                      wsdlLocation =
"classpath:com/mycompany/webservices/wsdl/OTA_AirFareDisplayRQ.wsdl",
                      endpointInterface =
"com.mycompany.webservices.websvc.FarePortType")

public class FarePortTypeImpl implements FarePortType {
....
}

Reply via email to