Thanks for the link.
I assume I only have to create an interface class (not implemented) for
TestMtom that implements the exposed (testXop) operation.
Here is the exception I get whenever I run the sample code:
WARNING: Initial attempt to crate application context was unsuccessful.
org.springframework.beans.factory.BeanCreationException: Error creating bean
with name 'org.apache.cxf.wsdl.WSDLManager' defined in URL
[jar:file:/E:/Work/Dev/Apps/TestDrivers/lib/cxf-2.2.3.jar!/META-INF/cxf/cxf.fixml]:
Instantiation of bean failed; nested exception is
org.springframework.beans.BeanInstantiationException: Could not instantiate
bean class [org.apache.cxf.wsdl11.WSDLManagerImpl]: Constructor threw
exception; nested exception is java.lang.ClassCastException:
org.apache.xerces.dom.DeferredDocumentTypeImpl
at
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.instantiateBean(AbstractAutowireCapableBeanFactory.java:883)
at
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:839)
at
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:440)
at
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory$1.run(AbstractAutowireCapableBeanFactory.java:409)
at java.security.AccessController.doPrivileged(Native Method)
Any idea?
Freeman Fang wrote:
>
> Hi,
>
> Take a look at cxf mtom over jms test[1], in this testcase, you can
> find the way how cxf client send out soap/mtom message over jms
> transport, hope this helps
>
> [1]https://svn.apache.org/repos/asf/cxf/trunk/systests/src/test/java/org/apache/cxf/systest/mtom/ClientMtomXopWithJMSTest.java
> Freeman
> On 2009-8-6, at 上午1:26, lekkie wrote:
>
>>
>> Cant seem to get the the libraries? Can you point to a download site
>> for me?
>> I downloaded cxf library from cxf.apache.org/download.html but it
>> didnt
>> include classes for ServerLauncher, SpringTestSupport , TestMtom, in
>> the jar
>>
>> I 'll assume assertEquals, assertNotNull, and fail are in the class
>> SpringTestSupport .
>>
>> Also, I 'll the startServers, tearDown, launchServer are not
>> required for a
>> JMS producer client.
>>
>> Note: I am quite new to the cxf way of doing things.
>>
>> Thanks.
>>
>>
>>
>> Freeman Fang wrote:
>>>
>>> Hi,
>>>
>>> I don't think your java client send out a soap message.
>>> I think the better way is you should use cxf client with your wsdl
>>> sending soap/mtom message over jms transport
>>>
>>> Freeman
>>> On 2009-8-5, at 下午6:59, lekkie wrote:
>>>
>>>>
>>>> Thanks.
>>>>
>>>> I got this to work but got into another trouble.
>>>>
>>>> I followed the wsdl and edited as apt.
>>>>
>>>> Here is my own wsdl:
>>>>
>>>> <wsdl:definitions name="isServices"
>>>> xmlns:types="http://services.is/types
>>>> "
>>>> xmlns:xsd="http://www.w3.org/2001/XMLSchema"
>>>> xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
>>>> xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
>>>> xmlns:tns="http://services.is"
>>>> xmlns:jms="http://cxf.apache.org/transports/jms"
>>>> xmlns:xmime="http://www.w3.org/2005/05/xmlmime"
>>>> targetNamespace="http://services.is">
>>>>
>>>> <wsdl:types>
>>>> <schema xmlns="http://www.w3.org/2001/XMLSchema"
>>>> targetNamespace="http://services.is/types"
>>>> xmlns:xmime="http://www.w3.org/2005/05/xmlmime"
>>>> elementFormDefault="qualified">
>>>> <complexType name="isBinary">
>>>> <sequence>
>>>> <element name="name" type="xsd:string" />
>>>> <element name="attachinfo" type="xsd:base64Binary"
>>>> xmime:expectedContentTypes="application/octet-stream"/>
>>>> </sequence>
>>>> </complexType>
>>>> <element name="isBinary" type="types:isBinaryType"/>
>>>> </schema>
>>>>
>>>> </wsdl:types>
>>>>
>>>> <wsdl:message name="sendAttachmentRequest">
>>>> <wsdl:part name="data" element="types:isBinary"/>
>>>> </wsdl:message>
>>>>
>>>>
>>>> <wsdl:portType name="isServicesPortType">
>>>> <wsdl:operation name="sendAttachment">
>>>> <wsdl:input message="tns:sendAttachmentRequest"/>
>>>> </wsdl:operation>
>>>> </wsdl:portType>
>>>>
>>>>
>>>> <wsdl:binding name="isServicesBinding"
>>>> type="tns:isServicesPortType">
>>>> <soap:binding style="document"
>>>> transport="http://schemas.xmlsoap.org/soap/http" />
>>>>
>>>> <wsdl:operation name="sendAttachment">
>>>> <soap:operation soapAction="http://services.is/sendAttachment
>>>> "
>>>> />
>>>> <wsdl:input>
>>>> <soap:body use="literal" />
>>>> </wsdl:input>
>>>> </wsdl:operation>
>>>> </wsdl:binding>
>>>>
>>>> <wsdl:service name="isServices">
>>>> <wsdl:port name="isServicesJmsPort"
>>>> binding="tns:isServicesBinding">
>>>> <jms:address
>>>> destinationStyle="queue"
>>>> jndiConnectionFactoryName="ConnectionFactory"
>>>> jndiDestinationName="dynamicQueues/i.s">
>>>> <jms:JMSNamingProperty
>>>> name="java.naming.factory.initial"
>>>> value="org.apache.activemq.jndi.ActiveMQInitialContextFactory"/>
>>>>
>>>> <jms:JMSNamingProperty name="java.naming.provider.url"
>>>> value="tcp://localhost:61616"/>
>>>> </jms:address>
>>>> <jms:client messageType="byte"/>
>>>> </wsdl:port>
>>>> </wsdl:service>
>>>> </wsdl:definitions>
>>>>
>>>> Here is my xbean for the JMS consumer:
>>>>
>>>> <beans xmlns:cxfbc="http://servicemix.apache.org/cxfbc/1.0"
>>>> xmlns:is="http://services.is">
>>>>
>>>> <cxfbc:consumer wsdl="classpath:isServices.wsdl"
>>>> service="is:isServices"
>>>> targetService="is:isFTPWriter"
>>>> mtomEnabled="true"/>
>>>> </beans>
>>>>
>>>>
>>>> Here is the xbean for the target service which I guess is an in-only
>>>> MEP:
>>>>
>>>> <beans xmlns:ftp="http://servicemix.apache.org/ftp/1.0"
>>>> xmlns:is="http://services.is">
>>>>
>>>> <bean id="myMarshaler"
>>>> class="org.apache.servicemix.components.util.BinaryFileMarshaler"/>
>>>>
>>>> <ftp:sender service="is:isFTPWriter"
>>>> endpoint="isFTPWriter"
>>>> uri="ftp://is:i...@localhost/"
>>>> overwrite="true"
>>>> uploadSuffix=".dat"
>>>> marshaler="#myMarshaler">
>>>> </ftp:sender>
>>>> </beans>
>>>>
>>>> The project is suppose to achieve the flow below:
>>>> JMS producer -> JMS Consumer -> NMR -> FTPWriter
>>>> where JMS producer is the java client code to send binary files
>>>>
>>>> Here is the java client code for sending an attachment to the jms
>>>> consumer
>>>> String fileName = "file.dat";
>>>> byte[] payload = getBytesFromFile(fileName);
>>>> String dest = "dynamicQueues/i.s";
>>>> Properties env = new Properties();
>>>> if (System.getProperty("java.naming.provider.url") == null)
>>>> env.put("java.naming.provider.url", "tcp://localhost:61616");
>>>> if (System.getProperty("java.naming.factory.initial") == null)
>>>> env.put("java.naming.factory.initial",
>>>> "org.apache.activemq.jndi.ActiveMQInitialContextFactory");
>>>> InitialContext ic = new InitialContext(env);
>>>> ConnectionFactory confac = (ConnectionFactory)
>>>> ic.lookup("ConnectionFactory");
>>>> Connection connection = confac.createConnection();
>>>> Session session = connection.createSession(false,
>>>> Session.AUTO_ACKNOWLEDGE);
>>>> MessageProducer producer = session.createProducer((Destination)
>>>> ic.lookup(dest));
>>>> BytesMessage bm = session.createBytesMessage();
>>>> bm.writeBytes(payload);
>>>> producer.send(bm);
>>>> connection.close();
>>>>
>>>> However I end up with this exception
>>>>
>>>> Aug 5, 2009 11:35:21 AM
>>>> org.apache.cxf.transport.jms.JMSDestination$JMSExecutor run
>>>> INFO: run the incoming message in the threadpool
>>>> Aug 5, 2009 11:35:21 AM org.apache.cxf.phase.PhaseInterceptorChain
>>>> doIntercept
>>>> INFO: Interceptor has thrown exception, unwinding now
>>>> org.apache.cxf.binding.soap.SoapFault: No namespace on "FRAMESET"
>>>> element.at
>>>> org
>>>> .apache.cxf.binding.soap.interceptor.ReadHeadersInterceptor.handle
>>>> Message(ReadHeadersInterceptor.java:86)
>>>> at
>>>> org
>>>> .apache.cxf.binding.soap.interceptor.ReadHeadersInterceptor.handle
>>>> Message(ReadHeadersInterceptor.java:54)
>>>> at
>>>> org
>>>> .apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseIntercept
>>>> orChain.java:220)
>>>> at
>>>> org
>>>> .apache.cxf.transport.ChainInitiationObserver.onMessage(ChainIniti
>>>> ationObserver.java:78)
>>>> at
>>>> org
>>>> .apache.cxf.transport.jms.JMSDestination.incoming(JMSDestination.j
>>>> ava:209)
>>>> at
>>>> org.apache.cxf.transport.jms.JMSDestination
>>>> $JMSExecutor.run(JMSDestin
>>>> ation.java:352)
>>>> at
>>>> java.util.concurrent.ThreadPoolExecutor
>>>> $Worker.runTask(ThreadPoolExec
>>>> utor.java:650)
>>>> at
>>>> java.util.concurrent.ThreadPoolExecutor
>>>> $Worker.run(ThreadPoolExecutor
>>>> .java:675)
>>>> at java.lang.Thread.run(Thread.java:595)
>>>> Aug 5, 2009 11:35:21 AM org.apache.cxf.phase.PhaseInterceptorChain
>>>> doIntercept
>>>> INFO: Interceptor has thrown exception, unwinding now
>>>> java.lang.UnsupportedOperationException: A destination must be
>>>> specified.
>>>> at
>>>> org
>>>> .apache.activemq.ActiveMQMessageProducer.send(ActiveMQMessageProdu
>>>> cer.java:195)
>>>> at
>>>> org
>>>> .apache.activemq.ActiveMQQueueSender.send(ActiveMQQueueSender.java
>>>> :133)
>>>> at
>>>> org.apache.cxf.transport.jms.JMSDestination
>>>> $JMSOutputStream.sendRespo
>>>> nse(JMSDestination.java:528)
>>>> at
>>>> org.apache.cxf.transport.jms.JMSDestination
>>>> $JMSOutputStream.commitOut
>>>> putMessage(JMSDestination.java:473)
>>>> at
>>>> org.apache.cxf.transport.jms.JMSDestination
>>>> $JMSOutputStream.doClose(J
>>>> MSDestination.java:547)
>>>> at
>>>> org.apache.cxf.io.CachedOutputStream.close(CachedOutputStream.java:
>>>> 16
>>>> 7)
>>>> at
>>>> org
>>>> .apache.cxf.transport.AbstractConduit.close(AbstractConduit.java:6
>>>> 6)
>>>> at
>>>> org.apache.cxf.interceptor.MessageSenderInterceptor
>>>> $MessageSenderEndi
>>>> ngInterceptor.handleMessage(MessageSenderInterceptor.java:62)
>>>> at
>>>> org
>>>> .apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseIntercept
>>>> orChain.java:220)
>>>> at
>>>> org
>>>> .apache.cxf.interceptor.AbstractFaultChainInitiatorObserver.onMess
>>>> age(AbstractFaultChainInitiatorObserver.java:96)
>>>> at
>>>> org
>>>> .apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseIntercept
>>>> orChain.java:260)
>>>> at
>>>> org
>>>> .apache.cxf.transport.ChainInitiationObserver.onMessage(ChainIniti
>>>> ationObserver.java:78)
>>>> at
>>>> org
>>>> .apache.cxf.transport.jms.JMSDestination.incoming(JMSDestination.j
>>>> ava:209)
>>>> at
>>>> org.apache.cxf.transport.jms.JMSDestination
>>>> $JMSExecutor.run(JMSDestin
>>>> ation.java:352)
>>>> at
>>>> java.util.concurrent.ThreadPoolExecutor
>>>> $Worker.runTask(ThreadPoolExec
>>>> utor.java:650)
>>>> at
>>>> java.util.concurrent.ThreadPoolExecutor
>>>> $Worker.run(ThreadPoolExecutor
>>>> .java:675)
>>>> at java.lang.Thread.run(Thread.java:595)
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>> Freeman Fang wrote:
>>>>>
>>>>> Hi,
>>>>>
>>>>> A couple of issues in your wsdl
>>>>> 1. The jms namespace in your wsdl isn't valid for cxf, it should be
>>>>> http://cxf.apache.org/transports/jms
>>>>> instead,
>>>>> 2. Also, the binding part in your wsdl is incorrect, it should use
>>>>> soap binding, but not jms binding, jms is transport, not binding.
>>>>> 3. To use mtom, your wsdl should define element with something like
>>>>> xmime:expectedContentTypes="application/octet-stream"
>>>>> 4. And the jms:address in your port part is incorrect.
>>>>>
>>>>> We have an wsdl example[1] how the wsdl should look like when use
>>>>> soap
>>>>> binding over jms transport with mtom enabled, and a testcase[2]
>>>>> which use this wsdl and in this testcase there's a cxf bc consumer
>>>>> using mtom/soap/jms, I guess you may need take a look at those
>>>>> example.
>>>>>
>>>>> [1]https://svn.apache.org/repos/asf/servicemix/components/bindings/servicemix-cxf-bc/trunk/src/test/resources/org/apache/servicemix/cxfbc/mtom_xop.wsdl
>>>>> [2]https://svn.apache.org/repos/asf/servicemix/components/bindings/servicemix-cxf-bc/trunk/src/test/java/org/apache/servicemix/cxfbc/CxfBcHttpJmsBridgeMtomTest.java
>>>>>
>>>>> Freeman
>>>>> On 2009-8-4, at 下午8:17, lekkie wrote:
>>>>>
>>>>>>
>>>>>> Hi Freeman,
>>>>>>
>>>>>> After following your advice, I got this far.
>>>>>>
>>>>>> Here is the exception thrown during deployment of my sa:
>>>>>>
>>>>>> Caused by: org.apache.cxf.endpoint.EndpointException
>>>>>>
>>>>>> at
>>>>>> org
>>>>>> .apache.cxf.endpoint.EndpointImpl.createBinding(EndpointImpl.java:
>>>>>> 132)
>>>>>>
>>>>>> at org.apache.cxf.endpoint.EndpointImpl.<init>(EndpointImpl.java:
>>>>>> 81)
>>>>>>
>>>>>> at
>>>>>> org
>>>>>> .apache
>>>>>> .servicemix.cxfbc.CxfBcConsumer.validate(CxfBcConsumer.java:
>>>>>> 402)
>>>>>>
>>>>>> ... 13 more
>>>>>>
>>>>>> Caused by: org.apache.cxf.BusException: No binding factory for
>>>>>> namespace
>>>>>> http://schemas.sun.com/jbi/wsdl-extensions/jms/ registered.
>>>>>>
>>>>>> at
>>>>>> org
>>>>>> .apache
>>>>>> .cxf
>>>>>> .binding
>>>>>> .BindingFactoryManagerImpl
>>>>>> .getBindingFactory(BindingFactoryManagerImpl.java:91)
>>>>>>
>>>>>> at
>>>>>> org
>>>>>> .apache.cxf.endpoint.EndpointImpl.createBinding(EndpointImpl.java:
>>>>>> 129)
>>>>>>
>>>>>> ... 15 more
>>>>>>
>>>>>>
>>>>>>
>>>>>> Here is the content of my wsdl
>>>>>>
>>>>>> <?xml version="1.0" encoding="UTF-8"?>
>>>>>> <definitions name="isJMSConsumer" targetNamespace="http://services.is
>>>>>> "
>>>>>> xmlns="http://schemas.xmlsoap.org/wsdl/"
>>>>>> xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
>>>>>> xmlns:xsd="http://www.w3.org/2001/XMLSchema"
>>>>>> xmlns:tns="http://services.is"
>>>>>> xmlns:plnk="http://docs.oasis-open.org/wsbpel/2.0/plnktype"
>>>>>> xmlns:jms="http://schemas.sun.com/jbi/wsdl-extensions/jms/">
>>>>>> <types/>
>>>>>> <message name="isJMSConsumerOperationRequest">
>>>>>> <part name="part1" type="xsd:base64Binary"/>
>>>>>> </message>
>>>>>> <portType name="isJMSConsumerPortType">
>>>>>> <operation name="isJMSConsumerOperation">
>>>>>> <input name="input1"
>>>>>> message="tns:isJMSConsumerOperationRequest"/>
>>>>>> </operation>
>>>>>> </portType>
>>>>>> <binding name="isJMSConsumerBinding"
>>>>>> type="tns:isJMSConsumerPortType">
>>>>>> <jms:binding/>
>>>>>> <operation name="isJMSConsumerOperation">
>>>>>> <jms:operation destination="Queue/A"
>>>>>> destinationType="Queue"/>
>>>>>> <input name="input1">
>>>>>> <jms:message messageType="BytesMessage"
>>>>>> bytesPart="part1"
>>>>>> forwardAsAttachment="true"/>
>>>>>> </input>
>>>>>> </operation>
>>>>>> </binding>
>>>>>> <service name="isJMSConsumerService">
>>>>>> <port name="isJMSConsumerPort"
>>>>>> binding="tns:isJMSConsumerBinding">
>>>>>> <jms:address connectionURL="mq://localhost:7676"/>
>>>>>> </port>
>>>>>> </service>
>>>>>> <plnk:partnerLinkType name="isJMSConsumer">
>>>>>> <plnk:role name="isJMSConsumerPortTypeRole"
>>>>>> portType="tns:isJMSConsumerPortType"/>
>>>>>> </plnk:partnerLinkType>
>>>>>> </definitions>
>>>>>>
>>>>>>
>>>>>> and here is my xbean.xml
>>>>>>
>>>>>> <beans xmlns:cxfbc="http://servicemix.apache.org/cxfbc/1.0"
>>>>>> xmlns:is="http://services.is">
>>>>>>
>>>>>> <!-- wsdlResource="classpath:isFileConsumer.wsdl" -->
>>>>>>
>>>>>> <cxfbc:consumer wsdl="classpath:isJMSConsumer.wsdl"
>>>>>> service="is:isJMSConsumerService"
>>>>>> targetService="is:isFTPWriter"
>>>>>> mtomEnabled="true"/>
>>>>>> </beans>
>>>>>>
>>>>>>
>>>>>> thanks.
>>>>>>
>>>>>>
>>>>>>
>>>>>> Freeman Fang wrote:
>>>>>>>
>>>>>>> Hi,
>>>>>>>
>>>>>>> If you want to send attachment over soap with jms transport,
>>>>>>> could
>>>>>>> you
>>>>>>> consider to use the cxf bc component with mtom over jms
>>>>>>> transport?
>>>>>>> Freeman
>>>>>>>
>>>>>>> On 2009-8-3, at 下午8:02, lekkie wrote:
>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> Hi Guys,
>>>>>>>>
>>>>>>>> While trying to create a WSDL for my consumer JMS BC on
>>>>>>>> servicemix I
>>>>>>>> got the
>>>>>>>> following error
>>>>>>>>
>>>>>>>> <loc-message>WSDL is not WS-I BP compliant: [binding
>>>>>>>> "{http://services.is}isJMSFileConsumerInBinding" : Basic Profile
>>>>>>>> Violation
>>>>>>>> #R2401: A wsdl:binding element in a DESCRIPTION MUST use WSDL
>>>>>>>> SOAP
>>>>>>>> Binding
>>>>>>>> as defined in WSDL 1.1 Section 3.]</loc-message>
>>>>>>>> <stack-trace><![CDATA[javax.jbi.management.DeploymentException:
>>>>>>>> WSDL
>>>>>>>> is not
>>>>>>>> WS-I BP compliant: [binding "{http://
>>>>>>>> services.is}isJMSFileConsumerInBinding"
>>>>>>>> : Basic Profile Violation #R2401: A wsdl:binding element in a
>>>>>>>> DESCRIPTION
>>>>>>>> MUST use WSDL SOAP Binding as defined in WSDL 1.1 Section 3.]
>>>>>>>>
>>>>>>>> at
>>>>>>>> org
>>>>>>>> .apache
>>>>>>>> .servicemix
>>>>>>>> .jms
>>>>>>>> .endpoints
>>>>>>>> .JmsSoapConsumerEndpoint
>>>>>>>> .validateWsdl1(JmsSoapConsumerEndpoint.java:
>>>>>>>> 198)
>>>>>>>>
>>>>>>>> at
>>>>>>>> org
>>>>>>>> .apache
>>>>>>>> .servicemix
>>>>>>>> .jms
>>>>>>>> .endpoints
>>>>>>>> .JmsSoapConsumerEndpoint.validate(JmsSoapConsumerEndpoint.java:
>>>>>>>> 138)
>>>>>>>>
>>>>>>>> While the exception is in itself self explanatory, I ws
>>>>>>>> wondering
>>>>>>>> what the
>>>>>>>> best way it is to generate a WSDL.
>>>>>>>>
>>>>>>>> Here is the WSDL I generated from Netbeans wizard:
>>>>>>>>
>>>>>>>> <?xml version="1.0" encoding="UTF-8"?>
>>>>>>>> <definitions name="isJMSFileConsumer"
>>>>>>>> targetNamespace="http://services.is
>>>>>>>> "
>>>>>>>> xmlns="http://schemas.xmlsoap.org/wsdl/"
>>>>>>>> xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
>>>>>>>> xmlns:xsd="http://www.w3.org/2001/XMLSchema"
>>>>>>>> xmlns:tns="http://services.is"
>>>>>>>> xmlns:plnk="http://docs.oasis-open.org/wsbpel/2.0/plnktype"
>>>>>>>> xmlns:jms="http://schemas.sun.com/jbi/wsdl-extensions/jms/">
>>>>>>>> <types/>
>>>>>>>> <message name="isJMSFileConsumerInOperationRequest">
>>>>>>>> <part name="part1" type="xsd:base64Binary"/>
>>>>>>>> </message>
>>>>>>>> <portType name="isJMSFileConsumerInPortType">
>>>>>>>> <operation name="isJMSFileConsumerInOperation">
>>>>>>>> <input name="input1"
>>>>>>>> message="tns:isJMSFileConsumerInOperationRequest"/>
>>>>>>>> </operation>
>>>>>>>> </portType>
>>>>>>>> <binding name="isJMSFileConsumerInBinding"
>>>>>>>> type="tns:isJMSFileConsumerInPortType">
>>>>>>>> <jms:binding/>
>>>>>>>> <operation name="isJMSFileConsumerInOperation">
>>>>>>>> <jms:operation destination="DefaultQueue"
>>>>>>>> destinationType="Queue"/>
>>>>>>>> <input name="input1">
>>>>>>>> <jms:message messageType="BytesMessage"
>>>>>>>> bytesPart="part1"/>
>>>>>>>> </input>
>>>>>>>> </operation>
>>>>>>>> </binding>
>>>>>>>> <service name="isJMSFileConsumerIn">
>>>>>>>> <port name="isJMSFileConsumerInPortType"
>>>>>>>> binding="tns:isJMSFileConsumerInBinding">
>>>>>>>> <jms:address connectionURL="mq://localhost:61616"/>
>>>>>>>> </port>
>>>>>>>> </service>
>>>>>>>> <plnk:partnerLinkType name="isJMSFileConsumer">
>>>>>>>> <!-- A partner link type is automatically generated when a
>>>>>>>> new port
>>>>>>>> type is added. Partner link types are used by BPEL processes.
>>>>>>>> In a BPEL process, a partner link represents the interaction
>>>>>>>> between
>>>>>>>> the
>>>>>>>> BPEL process and a partner service. Each partner link is
>>>>>>>> associated
>>>>>>>> with a
>>>>>>>> partner link type.
>>>>>>>> A partner link type characterizes the conversational
>>>>>>>> relationship
>>>>>>>> between
>>>>>>>> two services. The partner link type can have one or two
>>>>>>>> roles.-->
>>>>>>>> <plnk:role name="isJMSFileConsumerInPortTypeRole"
>>>>>>>> portType="tns:isJMSFileConsumerInPortType"/>
>>>>>>>> </plnk:partnerLinkType>
>>>>>>>> </definitions>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> And here is the xbean.xml for this service unit
>>>>>>>>
>>>>>>>> <beans xmlns:jms="http://servicemix.apache.org/jms/1.0"
>>>>>>>> xmlns:is="http://services.is"
>>>>>>>> xmlns:amqpool="http://jencks.org/amqpool/2.0">
>>>>>>>>
>>>>>>>>
>>>>>>>> <classpath>
>>>>>>>> <location>.</location>
>>>>>>>> </classpath>
>>>>>>>>
>>>>>>>> <bean id="connectionFactory"
>>>>>>>> class="org.apache.activemq.pool.PooledConnectionFactory">
>>>>>>>>
>>>>>>>> <property name="connectionFactory">
>>>>>>>> <bean
>>>>>>>> class="org.apache.activemq.ActiveMQConnectionFactory">
>>>>>>>> <property name="brokerURL" value="tcp://localhost:
>>>>>>>> 61616" />
>>>>>>>> </bean>
>>>>>>>> </property>
>>>>>>>>
>>>>>>>> <!--Configure maximum connections used by the pool -->
>>>>>>>> <property name="maxConnections" value="10" />
>>>>>>>>
>>>>>>>> <!--Configure maximum sessions per connection -->
>>>>>>>> <property name="maximumActive" value="10" />
>>>>>>>> </bean>
>>>>>>>>
>>>>>>>> <!-- add the sender endpoint here -->
>>>>>>>> <bean id="myMarshaler"
>>>>>>>> class
>>>>>>>> ="org.apache.servicemix.components.util.BinaryFileMarshaler"/>
>>>>>>>>
>>>>>>>> <jms:soap-consumer service="is:isJMSFileConsumer"
>>>>>>>> endpoint="isJMSFileConsumer"
>>>>>>>> wsdl="classpath:isJMSFileConsumer.wsdl"
>>>>>>>> validateWsdl="true"
>>>>>>>> targetService="is:isFTPWriter"
>>>>>>>> destinationName="queue/A/Soap"
>>>>>>>> connectionFactory="#connectionFactory"/>
>>>>>>>> </beans>
>>>>>>>>
>>>>>>>> What is the best way to generate a WSDL for a binary message
>>>>>>>> (attachment)
>>>>>>>> through JMS BC over SOAP?
>>>>>>>>
>>>>>>>> kr.
>>>>>>>> --
>>>>>>>> View this message in context:
>>>>>>>> http://www.nabble.com/Binary-Message-WSDL-for-JMS-BC-%28Consumer%29-tp24789561p24789561.html
>>>>>>>> Sent from the ServiceMix - User mailing list archive at
>>>>>>>> Nabble.com.
>>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> --
>>>>>>> Freeman Fang
>>>>>>> ------------------------
>>>>>>> Open Source SOA: http://fusesource.com
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>
>>>>>> --
>>>>>> View this message in context:
>>>>>> http://www.nabble.com/Binary-Message-WSDL-for-JMS-BC-%28Consumer%29-tp24789561p24807302.html
>>>>>> Sent from the ServiceMix - User mailing list archive at
>>>>>> Nabble.com.
>>>>>>
>>>>>
>>>>>
>>>>> --
>>>>> Freeman Fang
>>>>> ------------------------
>>>>> Open Source SOA: http://fusesource.com
>>>>>
>>>>>
>>>>>
>>>>
>>>> --
>>>> View this message in context:
>>>> http://www.nabble.com/Binary-Message-WSDL-for-JMS-BC-%28Consumer%29-tp24789561p24824802.html
>>>> Sent from the ServiceMix - User mailing list archive at Nabble.com.
>>>>
>>>
>>>
>>> --
>>> Freeman Fang
>>> ------------------------
>>> Open Source SOA: http://fusesource.com
>>>
>>>
>>>
>>
>> --
>> View this message in context:
>> http://www.nabble.com/Binary-Message-WSDL-for-JMS-BC-%28Consumer%29-tp24789561p24832494.html
>> Sent from the ServiceMix - User mailing list archive at Nabble.com.
>>
>
>
> --
> Freeman Fang
> ------------------------
> Open Source SOA: http://fusesource.com
>
>
>
--
View this message in context:
http://www.nabble.com/Binary-Message-WSDL-for-JMS-BC-%28Consumer%29-tp24789561p24850860.html
Sent from the ServiceMix - User mailing list archive at Nabble.com.