Comments inline. Simon
Nishant Joshi wrote:
Hi, I have followed as you have mentioned, In step 2 you have mentioned to use RequestContext and get callback from it. Here i have used ComponentContext.getRequestContext().getCallback() to get the callback...(Not used callback injection)... Now problem here is in service side, following is the snippet scdl i have used in service ................. <binding.ws /> <callback> <binding.ws /> </callback> ........... there is no hard code uri defined.... now this scenario wont work with RequestContext.getCallback()... it was giving me error. "The system cannot infer the transport information from the / URL.".
I tried modifying the callback-ws-client and callback-ws-service samples to do exactly this, with the same SCDL as your snippet and using RequestContext.getCallback() instead of injection. It works fine for me, so there must be something different about what you are doing. Can you try making these changes to the callback-ws-client and callback-ws-service samples, and see whether you get the problem? So that I could match your SCDL exactly, with no explicit URI for the service, I started the server first, noted the random port number that was assigned, then built the client using that port number.
Tiil now in this scenarion i have successfully called the service from client B (with same conversationid) but getting error (mentioned above) at callback A from service.... If i use callback injection in this scenario following error comes to me. "Both the TO and MessageContext.TRANSPORT_OUT property are null, so nowhere to send" To test this problem I have also made a simple converstional callback mechanism which was working fine with @Callback injection but when i used RequestContext and get callback from it, i m getting same error(mentioed first)....please note that there is no hard code uri in service side scdl...
This sounds like what I described above. Can you post your complete test case so that I can see what is different from my code?
I would also like to know, what is the difference between callback injection and getting callback from RequestContext...?
In most cases they will be the same. Using the value in the request context is always safe, but in some cases it is dangerous to rely on the injected proxy. This is because injection currently only happens on instance creation, so if the forward call invokes a pre-existing instance (as could happen with COMPOSITE or CONVERSATION scope), the injected callback proxy would refer to a previous callback address rather than the current callback address. Simon --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]