When a Destination receives a message at processStreamIo method
ex:

protected void processStreamIo(IoSession session, InputStream in,
                OutputStream out) {

            final MessageImpl m = new MessageImpl();
            final Exchange exchange = new ExchangeImpl();
            exchange.setDestination(MyDestination.this);
            m.setDestination(MyDestination.this);
            exchange.setInMessage(m);

            m.setContent(InputStream.class, in);
            out = new UDPDestinationOutputStream(out);
            m.put(UDPConnectionInfo.class, new UDPConnectionInfo(session,
out, in));

            queue.execute(new Runnable() {
                public void run() {
                          //Here, i want to sent this m message to an
orther Destination

                }
            });
        }

2015-11-24 12:19 GMT+01:00 Aki Yoshida <[email protected]>:

> If you want to receive a message and route it to somewhere else based
> on the content, one typical approach is to Apache Camel
> (http://camel.apache.org) which supports all kinds of endpoints
> including CXF and also various processing steps. In this case, your
> application is a simple Camel route with a CXF consumer endpoint
> (from) and a CXF producer endpoint (to).
>
> The question of whether to use the generic dispatch/provider API or
> not depends on what kind of messages you want to process. Using the
> generic API, you can send and receive arbitrary messages. But you need
> to read and set the message content using some generic XML API. In
> contrast, using the specifically typed API, you can automatically
> restrict the structure of the message and read and set the structure
> using its convenient get/setter methods.
>
> regards, aki
>
> 2015-11-23 18:04 GMT+01:00 tho huynh ngoc <[email protected]>:
> > I would like to send a message received by my owns Destination (side A)
> to
> > another one (side B) (for approving my research problem). I don't know
> if i
> > can use jax-ws-dispatch-api ?
> >
> > Regards,
> >
> >
> > 2015-11-20 10:49 GMT+01:00 Aki Yoshida <[email protected]>:
> >
> >> i don't think you can send a Message instance that way.
> >> But why do you need to send it out from your application that way?
> >>
> >> If you just need to send and receive a generic message, you can use
> >> the jaxws dispatcher/provider approach.
> >> http://cxf.apache.org/docs/jax-ws-dispatch-api.html
> >> http://cxf.apache.org/docs/provider-services.html
> >>
> >>
> >> 2015-11-19 15:17 GMT+01:00 tho huynh ngoc <[email protected]>:
> >> > Hi,
> >> >
> >> > I want to send an org.apache.cxf.message.Message object via CXF
> Jax-ws.
> >> For
> >> > example:
> >> >
> >> >    1.
> >> >
> >> >    A service declared:
> >> >
> >> >    @WebServicepublic interface HelloWorld {
> >> >        void send(Message msg);}
> >> >
> >> >    2.
> >> >
> >> >    Implementation of this service:
> >> >
> >> >    public class HelloWorldImpl implements HelloWorld {
> >> >        public void send(Message msg) {
> >> >            System.out.println("receives msg id:"
> >> +((MessageImpl)msg).getId());
> >> >        }}
> >> >
> >> >    3.
> >> >
> >> >    Server:
> >> >
> >> >    HelloWorldImpl implementor = new
> >> > HelloWorldImpl();JaxWsServerFactoryBean svrFactory1 = new
> >> > JaxWsServerFactoryBean();
> >> >    svrFactory1.setServiceClass(HelloWorld.class);
> >> >    svrFactory1.setAddress("http://192.168.56.1:9000/HelloWorld";);
> >> >    svrFactory1.setServiceBean(implementor);
> >> >    org.apache.cxf.endpoint.Server server1 = svrFactory1.create();
> >> >    server1.start();
> >> >
> >> >    4.
> >> >
> >> >    Client:
> >> >
> >> >    JaxWsProxyFactoryBean factory = new JaxWsProxyFactoryBean();
> >> >    factory.setAddress("http://192.168.56.1:9000/HelloWorld
> ");HelloWorld
> >> > client = factory.create(HelloWorld.class);Message msg = new
> >> > MessageImpl();
> >> >    msg.setId("abc");
> >> >    client.send(msg);
> >> >
> >> >
> >> > I receive an error when running as follows:
> >> >
> >> > Exception in thread "main" javax.xml.ws.soap.SOAPFaultException: Fault
> >> > occurred while processing.
> >> >     at
> >> org.apache.cxf.jaxws.JaxWsClientProxy.invoke(JaxWsClientProxy.java:160)
> >> > at com.sun.proxy.$Proxy37.sayHiToUser(Unknown Source)
> >> > at objecttype.Client.main(Client.java:60)
> >> >
> >> > Caused by: org.apache.cxf.binding.soap.SoapFault: Fault occurred while
> >> > processing........
> >> >
> >> > How to correct this error ? the pojo class that i want to send in CXF:
> >> > org.apache.cxf.message.MessageImpl
> >> >
> >> > Regards,
> >>
>

Reply via email to