When servicemix deploys my SU, it shows the ffg:

Aug 11, 2009 8:22:55 AM org.apache.cxf.endpoint.ServerImpl initDestination
INFO: Setting the server's publish address to be null
Aug 11, 2009 8:22:55 AM org.apache.cxf.transport.jms.JMSDestination activate
INFO: JMSServerTransport activate()....


Subsequently, if I send an message (attachment) to the consumer SU from a
cxfclient, I get the following error message on ServiceMIX

INFO: run the incoming message in the threadpool
Aug 11, 2009 8:23:49 AM org.apache.cxf.phase.PhaseInterceptorChain
doIntercept

INFO: Interceptor has thrown exception, unwinding now
org.apache.cxf.binding.soap.SoapFault: Error reading XMLStreamReader.
        at
org.apache.cxf.binding.soap.interceptor.ReadHeadersInterceptor.handle
Message(ReadHeadersInterceptor.java:183)
        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)
Caused by: com.ctc.wstx.exc.WstxUnexpectedCharException: Unexpected
character '-
' (code 45) in prolog; expected '<'
 at [row,col {unknown-source}]: [2,1]
        at
com.ctc.wstx.sr.StreamScanner.throwUnexpectedChar(StreamScanner.java:
623)
        at
com.ctc.wstx.sr.BasicStreamReader.nextFromProlog(BasicStreamReader.ja
va:2047)
        at
com.ctc.wstx.sr.BasicStreamReader.next(BasicStreamReader.java:1069)
        at
com.ctc.wstx.sr.BasicStreamReader.nextTag(BasicStreamReader.java:1095
)
        at
org.apache.cxf.binding.soap.interceptor.ReadHeadersInterceptor.handle
Message(ReadHeadersInterceptor.java:83)
        ... 8 more
Aug 11, 2009 8:23:49 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)
Aug 11, 2009 8:30:08 AM
org.apache.cxf.transport.jms.JMSDestination$JMSExecutor
run
INFO: run the incoming message in the threadpool
Aug 11, 2009 8:30:08 AM org.apache.cxf.phase.PhaseInterceptorChain
doIntercept
INFO: Interceptor has thrown exception, unwinding now
org.apache.cxf.binding.soap.SoapFault: Error reading XMLStreamReader.
        at
org.apache.cxf.binding.soap.interceptor.ReadHeadersInterceptor.handle
Message(ReadHeadersInterceptor.java:183)
        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)
Caused by: com.ctc.wstx.exc.WstxUnexpectedCharException: Unexpected
character '-
' (code 45) in prolog; expected '<'
 at [row,col {unknown-source}]: [2,1]
        at
com.ctc.wstx.sr.StreamScanner.throwUnexpectedChar(StreamScanner.java:
623)
        at
com.ctc.wstx.sr.BasicStreamReader.nextFromProlog(BasicStreamReader.ja
va:2047)
        at
com.ctc.wstx.sr.BasicStreamReader.next(BasicStreamReader.java:1069)
        at
com.ctc.wstx.sr.BasicStreamReader.nextTag(BasicStreamReader.java:1095
)
        at
org.apache.cxf.binding.soap.interceptor.ReadHeadersInterceptor.handle
Message(ReadHeadersInterceptor.java:83)
        ... 8 more
Aug 11, 2009 8:30:08 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



See client code below:

ISServicesPortType mtomPort = createPort(MTOM_SERVICE, MTOM_PORT,
ISServicesPortType.class, true);
        try {
            InputStream pre =
this.getClass().getResourceAsStream("isServices.wsdl");
            int fileSize = 0;
            for (int i = pre.read(); i != -1; i = pre.read()) {
                fileSize++;
            }
            Holder<DataHandler> param = new Holder<DataHandler>();
            
            int count = 50;
            byte[] data = new byte[fileSize *  count];
            for (int x = 0; x < count; x++) {
               
this.getClass().getResourceAsStream("isServices.wsdl").read(data, fileSize *
x, fileSize);
            }
            
            param.value = new DataHandler(new ByteArrayDataSource(data,
"application/octet-stream"));
            Holder<String> name = new Holder<String>("call detail");
            is.services.types.ISBinaryType _sendAttachment_data = new
ISBinaryType();
            _sendAttachment_data.setAttachinfo(param.value);
            _sendAttachment_data.setName(name.value);
            mtomPort.sendAttachment(_sendAttachment_data);
//            Assert.fail("Expect the exception here !");
//            Assert.assertEquals("name unchanged", "return detail + call
detail", name.value);
//            Assert.assertNotNull(param.value);
            param.value.getInputStream().close();
            
        } catch (SOAPFaultException ex) {
                Assert.assertTrue("Expect the configuration exception here",
ex.getCause() instanceof
org.apache.cxf.configuration.ConfigurationException);
        }

private static <T> T createPort(QName serviceName, QName portName, Class<T>
serviceEndpointInterface, boolean enableMTOM) throws Exception 
    {
        Bus bus = BusFactory.getDefaultBus();
                ReflectionServiceFactoryBean serviceFactory = new
JaxWsServiceFactoryBean();
                serviceFactory.setBus(bus);
                serviceFactory.setServiceName(serviceName);
                serviceFactory.setServiceClass(serviceEndpointInterface);
                URL url = 
ISServicesPortType.class.getResource("isServices.wsdl");
                serviceFactory.setWsdlURL(url);
                Service service = serviceFactory.create();
                EndpointInfo ei = service.getEndpointInfo(portName);
                JaxWsEndpointImpl jaxwsEndpoint = new JaxWsEndpointImpl(bus, 
service, ei);
                SOAPBinding jaxWsSoapBinding = new 
SOAPBindingImpl(ei.getBinding());
                jaxWsSoapBinding.setMTOMEnabled(enableMTOM);
                
                jaxwsEndpoint.getBinding().getInInterceptors().add(new
TestMultipartMessageInterceptor());
                jaxwsEndpoint.getBinding().getOutInterceptors().add(new
TestAttachmentOutInterceptor());
                
                Client client = new ClientImpl(bus, jaxwsEndpoint);
                InvocationHandler ih = new JaxWsClientProxy(client,
jaxwsEndpoint.getJaxwsBinding());
                Object obj =
Proxy.newProxyInstance(serviceEndpointInterface.getClassLoader(), new
Class[] {
                serviceEndpointInterface, BindingProvider.class }, ih);
                return serviceEndpointInterface.cast(obj);
        }



-- 
View this message in context: 
http://www.nabble.com/JMS-SU%3A-server%27s-Publish-Address-is-null-tp24913559p24913559.html
Sent from the ServiceMix - User mailing list archive at Nabble.com.

Reply via email to