cxf-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Gary Tully (JIRA)" <>
Subject [jira] Created: (CXF-1410) Allow thread safe access to proxy with requestContext usage..
Date Wed, 30 Jan 2008 14:48:38 GMT
Allow thread safe access to proxy with requestContext usage..

                 Key: CXF-1410
             Project: CXF
          Issue Type: Improvement
          Components: JAX-WS Runtime
    Affects Versions: 2.0.4
            Reporter: Gary Tully
            Priority: Minor

It should be possible to cache a proxy and provide thread safe access to it. For example,
the following code should work from multiple threads with deterministic results:

        Greeter greeter = // get cached proxy
        InvocationHandler handler = Proxy.getInvocationHandler(greeter);
        Map<String, Object> requestContext = ((BindingProvider)handler).getRequestContext();
        String threadSpecificaddress = // ... 
        requestContext.put(BindingProvider.ENDPOINT_ADDRESS_PROPERTY, threadSpecificaddress);

the proposal is to implement thread local request contexts and manage the mapping from shared
proxy request contexts to the thread local.The synchronization point is on a call to getRequestContext.
the return is a snapshot of the current shared proxy request context map.
The map is such that it will echo modifications into the shared map. But further modifications
to teh shared map will not be visible to the calling thread until  subsequent getRequestContext
call is made.

In other words, an invoke works with a copy of the thread local context which takes into account
modifications to the shared context at the time of the getRequestContextCall()

This message is automatically generated by JIRA.
You can reply to this email to add a comment to the issue online.

View raw message