I've found difference between files...

One file has:
import org.apache.xbean.spring.context.ClassPathXmlApplicationContext;

other:
import org.springframework.context.support.AbstractXmlApplicationContext;

My research is going on...


  Ivan Pryvalov....

ivan пишет:
   Hi Freeman!

New details of my curious testing...

I became to use servicemix-sources 3.2.2-SNAPSHOT and added my sources and test-files in cxfbc project in folder src/test/java and src/test/resources.

It is very interesting, but exception stilled.
I decided to replace code of org.apache.servicemix.cxfbc.CxfBcProviderConsumerTest on my code from file my.mycompany.CxfBcProviderConsumerTest and... it passed!!!

So, it seems, something "interesting" with magic file org.apache.servicemix.cxfbc.CxfBcProviderConsumerTest.

I saw following:

2008-05-21 10:45:42,453 [main ] INFO ClassPathXmlApplicationContext - Refreshing [EMAIL PROTECTED]: display name [EMAIL PROTECTED]; startup date [Wed May 21 10:45:42 EEST 2008]; root of context hierarchy 2008-05-21 10:45:42,562 [main ] INFO XBeanXmlBeanDefinitionReader - Loading XML bean definitions from class path resource [org/apache/servicemix/cxfbc/my_cxf_provider_consumer_bridge.xml] 2008-05-21 10:45:42,890 [main ] DEBUG XBeanNamespaceHandlerResolver - Loaded mappings [{http://www.springframework.org/schema/p=org.springframework.beans.factory.xml.SimplePropertyNamespaceHandler, http://lingo.codehaus.org/1.2=org.apache.xbean.spring.context.v2.XBeanNamespaceHandler, http://servicemix.apache.org/soap/1.0=org.apache.xbean.spring.context.v2.XBeanNamespaceHandler, http://cxf.apache.org/transports/http-jetty/configuration=org.apache.cxf.transport.http_jetty.spring.NamespaceHandler, http://www.w3.org/2006/07/ws-policy=org.apache.cxf.ws.policy.spring.PolicyNamespaceHandler, http://www.springframework.org/schema/lang=org.springframework.scripting.config.LangNamespaceHandler, http://www.springframework.org/schema/util=org.springframework.beans.factory.xml.UtilNamespaceHandler, http://cxf.apache.org/jaxws=org.apache.cxf.jaxws.spring.NamespaceHandler, http://servicemix.apache.org/cxfbc/1.0=org.apache.xbean.spring.context.v2.XBeanNamespaceHandler, http://cxf.apache.org/policy=org.apache.cxf.ws.policy.spring.NamespaceHandler, http://www.springframework.org/schema/jee=org.springframework.ejb.config.JeeNamespaceHandler, http://cxf.apache.org/transports/jms=org.apache.cxf.transport.jms.spring.NamespaceHandler, http://cxf.apache.org/transports/http/configuration=org.apache.cxf.transport.http.spring.NamespaceHandler, http://www.springframework.org/schema/tx=org.springframework.transaction.config.TxNamespaceHandler, http://cxf.apache.org/ws/addressing=org.apache.cxf.ws.addressing.spring.NamespaceHandler, http://cxf.apache.org/clustering=org.apache.cxf.clustering.spring.NamespaceHandler, http://cxf.apache.org/simple=org.apache.cxf.frontend.spring.NamespaceHandler, http://www.springframework.org/schema/aop=org.springframework.aop.config.AopNamespaceHandler, http://xbean.apache.org/schemas/server=org.apache.xbean.spring.context.v2.XBeanNamespaceHandler, http://cxf.apache.org/core=org.apache.cxf.bus.spring.NamespaceHandler, http://activemq.org/ra/1.0=org.apache.xbean.spring.context.v2.XBeanNamespaceHandler, http://servicemix.apache.org/cxfse/1.0=org.apache.xbean.spring.context.v2.XBeanNamespaceHandler, http://jencks.org/2.0=org.apache.xbean.spring.context.v2.XBeanNamespaceHandler, http://schemas.xmlsoap.org/ws/2004/09/policy=org.apache.cxf.ws.policy.spring.PolicyNamespaceHandler, http://activemq.org/config/1.0=org.apache.xbean.spring.context.v2.XBeanNamespaceHandler, http://www.w3.org/ns/ws-policy=org.apache.cxf.ws.policy.spring.PolicyNamespaceHandler, http://servicemix.apache.org/config/1.0=org.apache.xbean.spring.context.v2.XBeanNamespaceHandler, http://cxf.apache.org/ws/rm/manager=org.apache.cxf.ws.rm.spring.NamespaceHandler, http://xbean.apache.org/schemas/classloader=org.apache.xbean.spring.context.v2.XBeanNamespaceHandler, http://cxf.apache.org/bindings/soap=org.apache.cxf.binding.soap.spring.NamespaceHandler}] 2008-05-21 10:45:43,046 [main ] DEBUG anBeanDefinitionDocumentReader - Loading bean definitions 2008-05-21 10:45:43,093 [main ] DEBUG XBeanNamespaceHandler - Could not find resource: META-INF/services/org/apache/xbean/spring/http/servicemix.apache.org/config/1.0/container 2008-05-21 10:45:43,218 [main ] DEBUG XBeanNamespaceHandler - Could not find resource: META-INF/services/org/apache/xbean/spring/http/servicemix.apache.org/cxfbc/1.0/consumer 2008-05-21 10:45:43,296 [main ] DEBUG anBeanDefinitionParserDelegate - Neither XML 'id' nor 'name' specified - using generated bean name [org.apache.servicemix.cxfbc.CxfBcConsumer] 2008-05-21 10:45:43,296 [main ] DEBUG anBeanDefinitionParserDelegate - Neither XML 'id' nor 'name' specified - using generated bean name [org.apache.cxf.interceptor.LoggingInInterceptor] 2008-05-21 10:45:43,312 [main ] DEBUG anBeanDefinitionParserDelegate - Neither XML 'id' nor 'name' specified - using generated bean name [org.apache.cxf.interceptor.LoggingOutInterceptor] 2008-05-21 10:45:43,312 [main ] DEBUG anBeanDefinitionParserDelegate - Neither XML 'id' nor 'name' specified - using generated bean name [org.apache.cxf.interceptor.LoggingInInterceptor] 2008-05-21 10:45:43,312 [main ] DEBUG anBeanDefinitionParserDelegate - Neither XML 'id' nor 'name' specified - using generated bean name [org.apache.cxf.interceptor.LoggingOutInterceptor] 2008-05-21 10:45:43,312 [main ] DEBUG XBeanNamespaceHandler - Could not find resource: META-INF/services/org/apache/xbean/spring/http/servicemix.apache.org/cxfbc/1.0/provider 2008-05-21 10:45:43,328 [main ] DEBUG anBeanDefinitionParserDelegate - Neither XML 'id' nor 'name' specified - using generated bean name [org.apache.servicemix.cxfbc.CxfBcProvider] 2008-05-21 10:45:43,328 [main ] DEBUG anBeanDefinitionParserDelegate - Neither XML 'id' nor 'name' specified - using generated bean name [org.apache.cxf.interceptor.LoggingInInterceptor] 2008-05-21 10:45:43,328 [main ] DEBUG anBeanDefinitionParserDelegate - Neither XML 'id' nor 'name' specified - using generated bean name [org.apache.cxf.interceptor.LoggingOutInterceptor] 2008-05-21 10:45:43,328 [main ] DEBUG anBeanDefinitionParserDelegate - Neither XML 'id' nor 'name' specified - using generated bean name [org.apache.cxf.interceptor.LoggingInInterceptor] 2008-05-21 10:45:43,328 [main ] DEBUG anBeanDefinitionParserDelegate - Neither XML 'id' nor 'name' specified - using generated bean name [org.apache.cxf.interceptor.LoggingOutInterceptor] 2008-05-21 10:45:43,328 [main ] DEBUG XBeanXmlBeanDefinitionReader - Loaded 1 bean definitions from location pattern [org/apache/servicemix/cxfbc/my_cxf_provider_consumer_bridge.xml] 2008-05-21 10:45:43,328 [main ] INFO ClassPathXmlApplicationContext - Bean factory for application context [EMAIL PROTECTED]: [EMAIL PROTECTED] 2008-05-21 10:45:43,328 [main ] DEBUG ClassPathXmlApplicationContext - 1 beans defined in [EMAIL PROTECTED]: display name [EMAIL PROTECTED]; startup date [Wed May 21 10:45:42 EEST 2008]; root of context hierarchy 2008-05-21 10:45:43,343 [main ] DEBUG ClassPathXmlApplicationContext - Unable to locate MessageSource with name 'messageSource': using default [EMAIL PROTECTED] 2008-05-21 10:45:43,343 [main ] DEBUG ClassPathXmlApplicationContext - Unable to locate ApplicationEventMulticaster with name 'applicationEventMulticaster': using default [EMAIL PROTECTED] 2008-05-21 10:45:43,343 [main ] INFO DefaultListableBeanFactory - Pre-instantiating singletons in [EMAIL PROTECTED]: defining beans [jbi]; root of factory hierarchy


and after this Win32 Exception came (Windows made an offer to open new instance Visual Studio 2005 for debug etc).



  Truly yours, Ivan Pryvalov.


ivan пишет:
  Hi Freeman!

Issue with eclipse has left. I disabled maven-dependency-management plug-in and executed "mvn eclipse:eclipse" and imported Existing project again.

So, in both cases (Eclipse and mvn clean install) I got that exception with parsing

org.springframework.beans.factory.xml.XmlBeanDefinitionStoreException: Line 4 in XML document from class path resource [my_cxf_provider_consumer_bridge.xml] is invalid; nested exception is org.xml.sax.SAXParseException: cvc-elt.1: Cannot find the declaration of element 'beans'. Caused by: org.xml.sax.SAXParseException: cvc-elt.1: Cannot find the declaration of element 'beans'. at org.apache.xerces.util.ErrorHandlerWrapper.createSAXParseException(Unknown Source)
    at org.apache.xerces.util.ErrorHandlerWrapper.error(Unknown Source)
at org.apache.xerces.impl.XMLErrorReporter.reportError(Unknown Source) at org.apache.xerces.impl.XMLErrorReporter.reportError(Unknown Source) at org.apache.xerces.impl.xs.XMLSchemaValidator.handleStartElement(Unknown Source) at org.apache.xerces.impl.xs.XMLSchemaValidator.startElement(Unknown Source) at org.apache.xerces.impl.XMLNSDocumentScannerImpl.scanStartElement(Unknown Source) at org.apache.xerces.impl.XMLNSDocumentScannerImpl$NSContentDispatcher.scanRootElementHook(Unknown Source) at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl$FragmentContentDispatcher.dispatch(Unknown Source) at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown Source)
    at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
    at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
    at org.apache.xerces.parsers.XMLParser.parse(Unknown Source)
    at org.apache.xerces.parsers.DOMParser.parse(Unknown Source)
    at org.apache.xerces.jaxp.DocumentBuilderImpl.parse(Unknown Source)
at org.springframework.beans.factory.xml.DefaultDocumentLoader.loadDocument(DefaultDocumentLoader.java:76) at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.doLoadBeanDefinitions(XmlBeanDefinitionReader.java:351) at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:303) at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:280) at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:131) at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:147) at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:173) at org.springframework.context.support.AbstractXmlApplicationContext.loadBeanDefinitions(AbstractXmlApplicationContext.java:112) at org.springframework.context.support.AbstractXmlApplicationContext.loadBeanDefinitions(AbstractXmlApplicationContext.java:79) at org.springframework.context.support.AbstractRefreshableApplicationContext.refreshBeanFactory(AbstractRefreshableApplicationContext.java:101) at org.springframework.context.support.AbstractApplicationContext.obtainFreshBeanFactory(AbstractApplicationContext.java:389) at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:324) at org.springframework.context.support.ClassPathXmlApplicationContext.<init>(ClassPathXmlApplicationContext.java:91) at org.springframework.context.support.ClassPathXmlApplicationContext.<init>(ClassPathXmlApplicationContext.java:75) at org.springframework.context.support.ClassPathXmlApplicationContext.<init>(ClassPathXmlApplicationContext.java:65) at mycompany.my.CxfBcProviderConsumerTest.createBeanFactory(CxfBcProviderConsumerTest.java:66) at org.apache.servicemix.tck.SpringTestSupport.setUp(SpringTestSupport.java:65)
    at junit.framework.TestCase.runBare(TestCase.java:125)
    at junit.framework.TestResult$1.protect(TestResult.java:106)
    at junit.framework.TestResult.runProtected(TestResult.java:124)
    at junit.framework.TestResult.run(TestResult.java:109)
    at junit.framework.TestCase.run(TestCase.java:118)
    at junit.framework.TestSuite.runTest(TestSuite.java:208)
    at junit.framework.TestSuite.run(TestSuite.java:203)
at org.eclipse.jdt.internal.junit.runner.junit3.JUnit3TestReference.run(JUnit3TestReference.java:130) at org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38) at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:460) at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:673) at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:386) at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:196)



   Ivan Pryvalov.


Freeman Fang пишет:
Hi Ivan,

Your error is weird for me.

I have verified it works with your wsdl under smx 3.2.2 snapshot a couple of days ago.

I will try the latest smx 3.2.2 snapshot when I got time.

Freeman

ivan wrote:
  Hi again, Freeman!

It's very interesting, when I start test via cmd (mvn clean install) - the exception is the same (
>>>>>[my_cxf_provider_consumer_bridge.xml] is invalid; nested exception
>>>>> is org.xml.sax.SAXParseException: cvc-elt.1: Cannot find the
>>>>> declaration of element 'beans'.
>>>>> Caused by: org.xml.sax.SAXParseException: cvc-elt.1: Cannot find
>>>>> the declaration of element 'beans'.
>>>>>     at
>>>>> org.apache.xerces.util.ErrorHandlerWrapper.createSAXParseException(Unknown
>>>>> Source))

but when I start test via eclipse 3.3 -

>java.lang.NoSuchMethodError:
>org.springframework.core.CollectionFactory.createConcurrentMapIfPossible(I)Ljava/util/Map;

It's puzzle for me... But I will try fo fix it.

May be it is better to explaine how correct to develop service and test it? =)

 Thanks!
 Truly yours, Ivan Pryvalov.

ivan пишет:
   Hi Freeman!

I downloaded 3.2.2-SNAPSHOT sources and try to execute test.

But I faced following:


java.lang.NoSuchMethodError: org.springframework.core.CollectionFactory.createConcurrentMapIfPossible(I)Ljava/util/Map; at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.<init>(DefaultSingletonBeanRegistry.java:82) at org.springframework.beans.factory.support.AbstractBeanFactory.<init>(AbstractBeanFactory.java:142) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.<init>(AbstractAutowireCapableBeanFactory.java:132) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.<init>(AbstractAutowireCapableBeanFactory.java:143) at org.springframework.beans.factory.support.DefaultListableBeanFactory.<init>(DefaultListableBeanFactory.java:99) at org.springframework.context.support.AbstractRefreshableApplicationContext.createBeanFactory(AbstractRefreshableApplicationContext.java:144) at org.springframework.context.support.AbstractRefreshableApplicationContext.refreshBeanFactory(AbstractRefreshableApplicationContext.java:99) at org.springframework.context.support.AbstractApplicationContext.obtainFreshBeanFactory(AbstractApplicationContext.java:389) at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:324) at org.springframework.context.support.ClassPathXmlApplicationContext.<init>(ClassPathXmlApplicationContext.java:91) at org.springframework.context.support.ClassPathXmlApplicationContext.<init>(ClassPathXmlApplicationContext.java:75) at org.springframework.context.support.ClassPathXmlApplicationContext.<init>(ClassPathXmlApplicationContext.java:65) at mycompany.my.CxfBcProviderConsumerTest.createBeanFactory(CxfBcProviderConsumerTest.java:66)



In my pom.xml I included all dependencies from cxf-bc-component (where is placed sample test; when I'll be able to execute test, I'll remove unused dependencies) and parent in servicemix 3.2.2-SNAPSHOT...
      Thanks,
   truly yours,
   Ivan Pryvalov.

Freeman Fang пишет:
Hi Ivan,

You can download 3.2.2 snapshot kit from [1]
You can also grab 3.2.2 snapshot code from [2], and build the kit yourself, both can avoid the version problem

[1]http://people.apache.org/repo/m2-snapshot-repository/org/apache/servicemix/apache-servicemix/3.2.2-SNAPSHOT/ [2]http://svn.apache.org/repos/asf/servicemix/smx3/branches/servicemix-3.2/


Freeman

ivan wrote:
  Hi, Freeman!

I use servicemix 3.2.1 version. So, may be issue is with building (maven dependencies). In your source's example any project have parent. In my root pom I have parent "servicemix" 3.2.1 version. How can I build my project without depending to servicemix parent? Is it possible? Can you write your pom.xml-files of project?


Thanks! Truly yours, Ivan Pryvalov.

Freeman Fang пишет:
Hi Ivan,

I can't reproduce your problem
I generate code from your wsdl, and everything works very well for me.

What's the servicemix version you are using? Can you try with the servicemix 3.2.2 snapshot?

Freeman

ivan wrote:
Hi Freeman!

Freeman Fang пишет:
Please append your whole wsdl


Ok. Lets simplify our task for the best understanding important things.

I've created simple service MyService and written MyServiceImpl.

Here is my service.wsdl:

<?xml version="1.0" encoding="UTF-8"?>
<wsdl:definitions xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/";
    xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/";
    xmlns:tns="http://mycompany/My";
    xmlns:wsdlsoap="http://schemas.xmlsoap.org/wsdl/soap/";
    xmlns:xmime="http://www.w3.org/2005/05/xmlmime";
    xmlns:xsd="http://www.w3.org/2001/XMLSchema";
    xmlns:ns="http://schemas.xmlsoap.org/soap/encoding/";
    targetNamespace="http://mycompany/My";>
    <wsdl:types>
        <xsd:schema targetNamespace="http://mycompany/My";
attributeFormDefault="qualified" elementFormDefault="qualified">
            <xsd:element name="RequestMessage">
                <xsd:complexType>
                    <xsd:sequence>
                        <xsd:element name="input"
                            type="xsd:string" />
                        <xsd:element name="input2"
                            type="xsd:string" />
                    </xsd:sequence>
                </xsd:complexType>
            </xsd:element>
            <xsd:element name="ResponseMessage">
                <xsd:complexType>
                    <xsd:sequence>
                        <xsd:element name="output"
                            type="xsd:string" />
                        <xsd:element name="output2"
                            type="xsd:string" />
                    </xsd:sequence>
                </xsd:complexType>
            </xsd:element>
        </xsd:schema>
    </wsdl:types>

    <wsdl:message name="requestMessage">
        <wsdl:part name="request"
            element="tns:RequestMessage">
        </wsdl:part>
    </wsdl:message>
    <wsdl:message name="responseMessage">
        <wsdl:part name="result"
            element="tns:ResponseMessage">
        </wsdl:part>
    </wsdl:message>

    <wsdl:portType name="MyServiceInterface">
        <wsdl:operation name="getInfo">
            <wsdl:input message="tns:requestMessage">
            </wsdl:input>
            <wsdl:output message="tns:responseMessage">
            </wsdl:output>
        </wsdl:operation>
    </wsdl:portType>

    <wsdl:binding name="MyServicePortBinding"
        type="tns:MyServiceInterface">
        <soap:binding style="document"
            transport="http://schemas.xmlsoap.org/soap/http"; />
        <wsdl:operation name="getInfo">
            <soap:operation soapAction="" />
            <wsdl:input>
                <soap:body use="literal" />
            </wsdl:input>
            <wsdl:output>
                <soap:body use="literal" />
            </wsdl:output>
        </wsdl:operation>
    </wsdl:binding>

    <wsdl:service name="MyService">
        <wsdl:port name="MyServicePort"
            binding="tns:MyServicePortBinding">
<soap:address location="http://localhost:8192/myservice/"; />
        </wsdl:port>
    </wsdl:service>
</wsdl:definitions>



   And here is MyServiceImpl:

package mycompany.my;

import javax.jws.WebService;

@WebService(serviceName="MyService",
        targetNamespace="http://myservice/My";,
        portName="MyServicePort",
        endpointInterface="mycompany.my.MyServiceInterface")
public class MyServiceImpl implements MyServiceInterface{

    public ResponseMessage getInfo(RequestMessage request) {
        ResponseMessage responseMessage = new ResponseMessage();
        responseMessage.setOutput(request.getInput().concat("!"));
responseMessage.setOutput2(request.getInput2().concat("!")); return responseMessage;
    }

}



       And this is my CxfBcProviderConsumerTest:

package mycompany.my;

import java.net.URL;

import javax.xml.namespace.QName;

import org.apache.cxf.endpoint.Endpoint;
import org.apache.cxf.endpoint.Server;
import org.apache.cxf.interceptor.LoggingInInterceptor;
import org.apache.cxf.interceptor.LoggingOutInterceptor;
import org.apache.cxf.jaxws.JaxWsServerFactoryBean;
import org.apache.cxf.service.model.ServiceInfo;
import org.apache.servicemix.tck.SpringTestSupport;
import org.springframework.context.support.AbstractXmlApplicationContext; import org.springframework.context.support.ClassPathXmlApplicationContext;

public class CxfBcProviderConsumerTest extends SpringTestSupport {

    public void testBridge() throws Exception {

        URL wsdl = getClass().getResource("/service.wsdl");
        // start external service
JaxWsServerFactoryBean factory = new JaxWsServerFactoryBean();
        factory.setServiceClass(MyServiceInterface.class);
        factory.setServiceBean(new MyServiceImpl());
        factory.setWsdlURL(wsdl.toString());
        factory.setServiceName(new QName("http://mycompany/My";,
                "MyService"));
//factory.setBindingId("http://schemas.xmlsoap.org/wsdl/soap12/";);
        String address = "http://localhost:9001/bridgetest";;
        factory.setAddress(address);
        Server server = factory.create();
        Endpoint endpoint = server.getEndpoint();
endpoint.getInInterceptors().add(new LoggingInInterceptor()); endpoint.getOutInterceptors().add(new LoggingOutInterceptor()); ServiceInfo service = endpoint.getEndpointInfo().getService();
        assertNotNull(service);

        // start external client

        assertNotNull(wsdl);
        MyService service1 = new MyService(wsdl,
                new QName("http://mycompany/My";, "MyService"));
        MyServiceInterface port = service1.getMyServicePort();


        RequestMessage requestMessage = new RequestMessage();
        requestMessage.setInput("input1");
        requestMessage.setInput2("input2");
ResponseMessage responseMessage = port.getInfo(requestMessage);

               System.err.println(responseMessage.getOutput());
        System.err.println(responseMessage.getOutput2());
              assertNotNull(responseMessage);

    }

    @Override
    protected AbstractXmlApplicationContext createBeanFactory() {
        return new ClassPathXmlApplicationContext(
                "my_cxf_provider_consumer_bridge.xml");
    }

}


-----------------my_cxf_provider_consumer_bridge.xml----------------

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns:sm="http://servicemix.apache.org/config/1.0";
       xmlns:cxfbc="http://servicemix.apache.org/cxfbc/1.0";
       xmlns:my="http://mycompany/My";>

  <sm:container id="jbi" embedded="true">
    <sm:endpoints>
      <cxfbc:consumer wsdl="/service.wsdl"
                      service="my:MyService"
                      endpoint="MyPort"
                      targetEndpoint="MyPortProxy"
                      targetService="my:MyService"
                      targetInterface="my:MyServiceInterface">
          <cxfbc:inInterceptors>
<bean class="org.apache.cxf.interceptor.LoggingInInterceptor"/>
          </cxfbc:inInterceptors>
          <cxfbc:outInterceptors>
<bean class="org.apache.cxf.interceptor.LoggingOutInterceptor"/>
          </cxfbc:outInterceptors>
          <cxfbc:inFaultInterceptors>
<bean class="org.apache.cxf.interceptor.LoggingInInterceptor"/>
          </cxfbc:inFaultInterceptors>
          <cxfbc:outFaultInterceptors>
<bean class="org.apache.cxf.interceptor.LoggingOutInterceptor"/>
          </cxfbc:outFaultInterceptors>
      </cxfbc:consumer>

      <cxfbc:provider wsdl="/service.wsdl"
locationURI="http://localhost:9001/bridgetest";
                      service="my:MyService"
                      endpoint="MyPortProxy"
                      interfaceName="my:MyServiceInterface"
                     >
          <cxfbc:inInterceptors>
<bean class="org.apache.cxf.interceptor.LoggingInInterceptor"/>
          </cxfbc:inInterceptors>
          <cxfbc:outInterceptors>
<bean class="org.apache.cxf.interceptor.LoggingOutInterceptor"/>
          </cxfbc:outInterceptors>
          <cxfbc:inFaultInterceptors>
<bean class="org.apache.cxf.interceptor.LoggingInInterceptor"/>
          </cxfbc:inFaultInterceptors>
          <cxfbc:outFaultInterceptors>
<bean class="org.apache.cxf.interceptor.LoggingOutInterceptor"/>
          </cxfbc:outFaultInterceptors>
      </cxfbc:provider>
    </sm:endpoints>

  </sm:container>

</beans>



When I start test I faced new issue (Exception):

testBridge(mycompany.my.CxfBcProviderConsumerTest) Time elapsed: 0.515 sec <<< ERROR! org.springframework.beans.factory.xml.XmlBeanDefinitionStoreException: Line 4 in XML document from class path resource [my_cxf_provider_consumer_bridge.xml] is invalid; nested exception is org.xml.sax.SAXParseException: cvc-elt.1: Cannot find the declaration of element 'beans'. Caused by: org.xml.sax.SAXParseException: cvc-elt.1: Cannot find the declaration of element 'beans'. at org.apache.xerces.util.ErrorHandlerWrapper.createSAXParseException(Unknown Source) at org.apache.xerces.util.ErrorHandlerWrapper.error(Unknown Source) at org.apache.xerces.impl.XMLErrorReporter.reportError(Unknown Source) at org.apache.xerces.impl.XMLErrorReporter.reportError(Unknown Source) at org.apache.xerces.impl.xs.XMLSchemaValidator.handleStartElement(Unknown Source) at org.apache.xerces.impl.xs.XMLSchemaValidator.startElement(Unknown Source) at org.apache.xerces.impl.XMLNSDocumentScannerImpl.scanStartElement(Unknown Source) at org.apache.xerces.impl.XMLNSDocumentScannerImpl$NSContentDispatcher.scanRootElementHook(Unknown Source) at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl$FragmentContentDispatcher.dispatch(Unknown Source) at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown Source) at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source) at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
    at org.apache.xerces.parsers.XMLParser.parse(Unknown Source)
    at org.apache.xerces.parsers.DOMParser.parse(Unknown Source)
at org.apache.xerces.jaxp.DocumentBuilderImpl.parse(Unknown Source) at org.springframework.beans.factory.xml.DefaultDocumentLoader.loadDocument(DefaultDocumentLoader.java:76) at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.doLoadBeanDefinitions(XmlBeanDefinitionReader.java:351) at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:303) at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:280) at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:131) at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:147) at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:173) at org.springframework.context.support.AbstractXmlApplicationContext.loadBeanDefinitions(AbstractXmlApplicationContext.java:112) at org.springframework.context.support.AbstractXmlApplicationContext.loadBeanDefinitions(AbstractXmlApplicationContext.java:79) at org.springframework.context.support.AbstractRefreshableApplicationContext.refreshBeanFactory(AbstractRefreshableApplicationContext.java:100) at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:313) at org.springframework.context.support.ClassPathXmlApplicationContext.<init>(ClassPathXmlApplicationContext.java:91) at org.springframework.context.support.ClassPathXmlApplicationContext.<init>(ClassPathXmlApplicationContext.java:75) at org.springframework.context.support.ClassPathXmlApplicationContext.<init>(ClassPathXmlApplicationContext.java:65) at mycompany.my.CxfBcProviderConsumerTest.createBeanFactory(CxfBcProviderConsumerTest.java:81) at org.apache.servicemix.tck.SpringTestSupport.setUp(SpringTestSupport.java:65)
...


-----xbean.xml----
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns:cxfse="http://servicemix.apache.org/cxfse/1.0";>
    <cxfse:endpoint>
        <cxfse:pojo>
          <bean class="mycompany.my.MyServiceImpl" />
        </cxfse:pojo>
    </cxfse:endpoint>
</beans>




I used ServiceMix's CxfBcProviderConsumerTest as example.


Thanks in advance!
Truly yours, Ivan Pryvalov.


















Reply via email to