|
|
|
rjoshi
|
(This post was updated on )
Can I send a message to BPEL endpoint from C++? What is the protocol used to send and receive a message from/to NMR? I have C++ application which is kind of a router and it has to invoke multiple BPEL endpoints. Is it possible?If yes, what protocol is used and where can I get specs?
e.g C++ <==> NMR <==> BPEL EDIT: Just to clarify why C++? Currently I have written a router application using POJO-SE binding component which invokes multiple BPEL endpoints based on routing logic. Also router performs some XPATH lookup which seem to be slower than we expected. (I use Jaxen xpath library which is much faster than default xpath library comes with jdk 1.6 but slower than C/C++ xpath). The input message to router is SMS message (SMPP Protocol) which is a C library. Currently we have SOAP wrapper around SMPP library to deliver SMS messages to POJO-SE router. I am trying to get rid of SOAP wrapper and use higher performance XPATH library in router so I was wondering if I could rewrite router in C++ which can link directly with SMPP library for incoming message and invoke multiple BPEL endpoints based on routing logic (XPATH/DBlookup) which would be more efficient. |
|
Kirill Sorokin
|
I'd expose a BPEL endpoint via HTTP BC and use HTTP/SOAP to invoke it from
C++. I think it is the most practical approach. Why would you want to work with NMR directly? Or, you could create some sort of JNI BC/SE and use it instead. Nothing of this kind exists right now AFAIK. On 10/4/09 03:38, rjoshi wrote: > > Can I send a message to BPEL endpoint from C++? What is the protocol used to > send and receive a message from/to NMR? --------------------------------------------------------------------- To unsubscribe, e-mail: [hidden email] For additional commands, e-mail: [hidden email] |
||||||||||||||||
|
Chris Selwyn
|
Or you could use the C API for Sun Java System Message Queue to post a
message to the JMS server. Then use the JMS BC to consume that message and invoke your process. I guess it depends on the usecase. Chris Kirill Sorokin wrote: > I'd expose a BPEL endpoint via HTTP BC and use HTTP/SOAP to invoke it > from C++. I think > it is the most practical approach. Why would you want to work with NMR > directly? > > Or, you could create some sort of JNI BC/SE and use it instead. > Nothing of this kind exists > right now AFAIK. > > On 10/4/09 03:38, rjoshi wrote: >> >> Can I send a message to BPEL endpoint from C++? What is the protocol >> used to >> send and receive a message from/to NMR? > > --------------------------------------------------------------------- > To unsubscribe, e-mail: [hidden email] > For additional commands, e-mail: [hidden email] > --------------------------------------------------------------------- To unsubscribe, e-mail: [hidden email] For additional commands, e-mail: [hidden email] |
||||||||||||||||
|
Maurizio Turatti
|
I think Chris was mentioning UMS, which is a recent feature of OpenMQ and adds multiple language bindings, including C:
https://mq.dev.java.net/4.3-content/ums/umsIntro.html Regards Maurizio
|
||||||||||||||||
|
Chris Selwyn
|
Some javascript/style in this post has been disabled (why?)
I was actually referring to the C API for Java MQ
If he really wants to invoke the BPEL using SOAP then he could use Axis2/C (http://ws.apache.org/axis2/c/) Chris Maurizio Turatti wrote: I think Chris was mentioning UMS, which is a recent feature of OpenMQ and adds multiple language bindings, including C: https://mq.dev.java.net/4.3-content/ums/umsIntro.html Regards Maurizio Chris Selwyn wrote: |
||||||||||||||||
|
Cristiano Costantini
|
I would suggest also to consider using gSoap,
Cristiano Chris Selwyn ha scritto: > I was actually referring to the C API for Java MQ > > * MQ 4.3 - http://docs.sun.com/app/docs/doc/820-6661?l=en > * MQ 4.2 - http://docs.sun.com/app/docs/doc/820-5206?l=en > > But I guess that UMS would work as well. > > If he really wants to invoke the BPEL using SOAP then he could use > Axis2/C (http://ws.apache.org/axis2/c/) > > Chris > > Maurizio Turatti wrote: >> I think Chris was mentioning UMS, which is a recent feature of OpenMQ and >> adds multiple language bindings, including C: >> >> https://mq.dev.java.net/4.3-content/ums/umsIntro.html >> >> Regards >> Maurizio >> >> >> Chris Selwyn wrote: >> >>> Or you could use the C API for Sun Java System Message Queue to post a >>> message to the JMS server. >>> Then use the JMS BC to consume that message and invoke your process. >>> I guess it depends on the usecase. >>> >>> Chris >>> >>> Kirill Sorokin wrote: >>> >>>> I'd expose a BPEL endpoint via HTTP BC and use HTTP/SOAP to invoke it >>>> from C++. I think >>>> it is the most practical approach. Why would you want to work with NMR >>>> directly? >>>> >>>> Or, you could create some sort of JNI BC/SE and use it instead. >>>> Nothing of this kind exists >>>> right now AFAIK. >>>> >>>> On 10/4/09 03:38, rjoshi wrote: >>>> >>>>> Can I send a message to BPEL endpoint from C++? What is the protocol >>>>> used to >>>>> send and receive a message from/to NMR? >>>>> >>>> --------------------------------------------------------------------- >>>> To unsubscribe, e-mail: [hidden email] >>>> For additional commands, e-mail: [hidden email] >>>> >>>> >>> --------------------------------------------------------------------- >>> To unsubscribe, e-mail: [hidden email] >>> For additional commands, e-mail: [hidden email] >>> >>> >>> >>> >> >> >> ----- >> http://camelcase.blogspot.com/ >> --------------------------------------------------------------------- To unsubscribe, e-mail: [hidden email] For additional commands, e-mail: [hidden email] |
||||||||||||||||
|
rjoshi
|
Thanks for you suggestions but it doesn't answer my question.
Currently I have written a router application using POJO-SE binding component which invokes multiple BPEL endpoints based on routing logic. Also router performs some XPATH lookup which seem to be slower than we expected. (I use Jaxen xpath library which is much faster than default xpath library comes with jdk 1.6). The input message to router is SMS message (SMPP Protocol) which is a C library. Currently we have SOAP wrapper around SMPP library to deliver SMS messages to POJO-SE router. A I am trying to get rid of SOAP wrapper and use higher performance XPATH library in router so I was wondering if I could rewrite router in C++ which can link directly with SMPP library for incoming message and invoke multiple BPEL endpoints based on routing logic (XPATH/DBlookup) which would be more efficient.
|
||||||||||||||||
|
Andreas Egloff
|
If you're willing to write JNI code (and are braced for all the gotchas)
then it should be possible to for example use the POJO SE to call your libraries and processing before routing to an endpoint in the NMR. A much more involved way (and giving you ultimate freedom) would be to develop your own component (really, more appropriately called a container). Andi rjoshi wrote: > Thanks for you suggestions but it doesn't answer my question. > Currently I have written a router application using POJO-SE binding > component which invokes multiple BPEL endpoints based on routing logic. Also > router performs some XPATH lookup which seem to be slower than we expected. > (I use Jaxen xpath library which is much faster than default xpath library > comes with jdk 1.6). > > The input message to router is SMS message (SMPP Protocol) which is a C > library. Currently we have SOAP wrapper around SMPP library to deliver SMS > messages to POJO-SE router. A > > I am trying to get rid of SOAP wrapper and use higher performance XPATH > library in router so I was wondering if I could rewrite router in C++ which > can link directly with SMPP library for incoming message and invoke multiple > BPEL endpoints based on routing logic (XPATH/DBlookup) which would be more > efficient. > > > > > > > Cristiano Costantini wrote: > >> I would suggest also to consider using gSoap, >> >> Cristiano >> >> >> >> Chris Selwyn ha scritto: >> >>> I was actually referring to the C API for Java MQ >>> >>> * MQ 4.3 - http://docs.sun.com/app/docs/doc/820-6661?l=en >>> * MQ 4.2 - http://docs.sun.com/app/docs/doc/820-5206?l=en >>> >>> But I guess that UMS would work as well. >>> >>> If he really wants to invoke the BPEL using SOAP then he could use >>> Axis2/C (http://ws.apache.org/axis2/c/) >>> >>> Chris >>> >>> Maurizio Turatti wrote: >>> >>>> I think Chris was mentioning UMS, which is a recent feature of OpenMQ >>>> and >>>> adds multiple language bindings, including C: >>>> >>>> https://mq.dev.java.net/4.3-content/ums/umsIntro.html >>>> >>>> Regards >>>> Maurizio >>>> >>>> >>>> Chris Selwyn wrote: >>>> >>>> >>>>> Or you could use the C API for Sun Java System Message Queue to post a >>>>> message to the JMS server. >>>>> Then use the JMS BC to consume that message and invoke your process. >>>>> I guess it depends on the usecase. >>>>> >>>>> Chris >>>>> >>>>> Kirill Sorokin wrote: >>>>> >>>>> >>>>>> I'd expose a BPEL endpoint via HTTP BC and use HTTP/SOAP to invoke it >>>>>> from C++. I think >>>>>> it is the most practical approach. Why would you want to work with NMR >>>>>> directly? >>>>>> >>>>>> Or, you could create some sort of JNI BC/SE and use it instead. >>>>>> Nothing of this kind exists >>>>>> right now AFAIK. >>>>>> >>>>>> On 10/4/09 03:38, rjoshi wrote: >>>>>> >>>>>> >>>>>>> Can I send a message to BPEL endpoint from C++? What is the protocol >>>>>>> used to >>>>>>> send and receive a message from/to NMR? >>>>>>> >>>>>>> >>>>>> --------------------------------------------------------------------- >>>>>> To unsubscribe, e-mail: [hidden email] >>>>>> For additional commands, e-mail: [hidden email] >>>>>> >>>>>> >>>>>> >>>>> --------------------------------------------------------------------- >>>>> To unsubscribe, e-mail: [hidden email] >>>>> For additional commands, e-mail: [hidden email] >>>>> >>>>> >>>>> >>>>> >>>>> >>>> ----- >>>> http://camelcase.blogspot.com/ >>>> >>>> >> --------------------------------------------------------------------- >> To unsubscribe, e-mail: [hidden email] >> For additional commands, e-mail: [hidden email] >> >> >> >> > > --------------------------------------------------------------------- To unsubscribe, e-mail: [hidden email] For additional commands, e-mail: [hidden email] |
||||||||||||||||
|
rjoshi
|
I am looking into something where I can register an endpoint with NMR and send/receive messages over socket using what ever the protocol required by NMR. Is there any specification which I can use to implement this communication?
|
||||||||||||||||
|
Andreas Egloff
|
The specification is JSR 208 - Java Business Integration (JBI) 1.0. The
easiest way to achieve this would probably be to use the POJO service engine; it will take care of registering your POJO as an endpoint, and you can directly act upon the normalized message (NM), message exchange (ME) and the NMR. If you implement your own JBI "component" you have full control over all aspects of instantiation and lifecycle, but control comes with a lot more to code. In the context of OpenESB v3 you also have the option of the simple API, which allows arbitrary Java code (and not just JBI components) to register and consume endpoints. Andi rjoshi wrote: > I am looking into something where I can register an endpoint with NMR and > send/receive messages over socket using what ever the protocol required by > NMR. Is there any specification which I can use to implement this > communication? > > > > > Andreas Egloff wrote: > >> If you're willing to write JNI code (and are braced for all the gotchas) >> then it should be possible to for example use the POJO SE to call your >> libraries and processing before routing to an endpoint in the NMR. A >> much more involved way (and giving you ultimate freedom) would be to >> develop your own component (really, more appropriately called a >> container). >> Andi >> >> rjoshi wrote: >> >>> Thanks for you suggestions but it doesn't answer my question. >>> Currently I have written a router application using POJO-SE binding >>> component which invokes multiple BPEL endpoints based on routing logic. >>> Also >>> router performs some XPATH lookup which seem to be slower than we >>> expected. >>> (I use Jaxen xpath library which is much faster than default xpath >>> library >>> comes with jdk 1.6). >>> >>> The input message to router is SMS message (SMPP Protocol) which is a C >>> library. Currently we have SOAP wrapper around SMPP library to deliver >>> SMS >>> messages to POJO-SE router. A >>> >>> I am trying to get rid of SOAP wrapper and use higher performance XPATH >>> library in router so I was wondering if I could rewrite router in C++ >>> which >>> can link directly with SMPP library for incoming message and invoke >>> multiple >>> BPEL endpoints based on routing logic (XPATH/DBlookup) which would be >>> more >>> efficient. >>> >>> >>> >>> >>> >>> >>> Cristiano Costantini wrote: >>> >>> >>>> I would suggest also to consider using gSoap, >>>> >>>> Cristiano >>>> >>>> >>>> >>>> Chris Selwyn ha scritto: >>>> >>>> >>>>> I was actually referring to the C API for Java MQ >>>>> >>>>> * MQ 4.3 - http://docs.sun.com/app/docs/doc/820-6661?l=en >>>>> * MQ 4.2 - http://docs.sun.com/app/docs/doc/820-5206?l=en >>>>> >>>>> But I guess that UMS would work as well. >>>>> >>>>> If he really wants to invoke the BPEL using SOAP then he could use >>>>> Axis2/C (http://ws.apache.org/axis2/c/) >>>>> >>>>> Chris >>>>> >>>>> Maurizio Turatti wrote: >>>>> >>>>> >>>>>> I think Chris was mentioning UMS, which is a recent feature of OpenMQ >>>>>> and >>>>>> adds multiple language bindings, including C: >>>>>> >>>>>> https://mq.dev.java.net/4.3-content/ums/umsIntro.html >>>>>> >>>>>> Regards >>>>>> Maurizio >>>>>> >>>>>> >>>>>> Chris Selwyn wrote: >>>>>> >>>>>> >>>>>> >>>>>>> Or you could use the C API for Sun Java System Message Queue to post >>>>>>> a >>>>>>> message to the JMS server. >>>>>>> Then use the JMS BC to consume that message and invoke your process. >>>>>>> I guess it depends on the usecase. >>>>>>> >>>>>>> Chris >>>>>>> >>>>>>> Kirill Sorokin wrote: >>>>>>> >>>>>>> >>>>>>> >>>>>>>> I'd expose a BPEL endpoint via HTTP BC and use HTTP/SOAP to invoke >>>>>>>> it >>>>>>>> from C++. I think >>>>>>>> it is the most practical approach. Why would you want to work with >>>>>>>> NMR >>>>>>>> directly? >>>>>>>> >>>>>>>> Or, you could create some sort of JNI BC/SE and use it instead. >>>>>>>> Nothing of this kind exists >>>>>>>> right now AFAIK. >>>>>>>> >>>>>>>> On 10/4/09 03:38, rjoshi wrote: >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>>> Can I send a message to BPEL endpoint from C++? What is the >>>>>>>>> protocol >>>>>>>>> used to >>>>>>>>> send and receive a message from/to NMR? >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>> --------------------------------------------------------------------- >>>>>>>> To unsubscribe, e-mail: [hidden email] >>>>>>>> For additional commands, e-mail: [hidden email] >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>> --------------------------------------------------------------------- >>>>>>> To unsubscribe, e-mail: [hidden email] >>>>>>> For additional commands, e-mail: [hidden email] >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>> ----- >>>>>> http://camelcase.blogspot.com/ >>>>>> >>>>>> >>>>>> >>>> --------------------------------------------------------------------- >>>> To unsubscribe, e-mail: [hidden email] >>>> For additional commands, e-mail: [hidden email] >>>> >>>> >>>> >>>> >>>> >>> >>> >> --------------------------------------------------------------------- >> To unsubscribe, e-mail: [hidden email] >> For additional commands, e-mail: [hidden email] >> >> >> >> > > --------------------------------------------------------------------- To unsubscribe, e-mail: [hidden email] For additional commands, e-mail: [hidden email] |
||||||||||||||||
|
rjoshi
|
Thanks Andi.
|
||||||||||||||||
| Free Embeddable Forum Powered by Nabble | Help |