Uploaded image for project: 'JBoss Transaction Manager'
  1. JBoss Transaction Manager
  2. JBTM-1105

Setup client side interceptors based on WS-Policy in WSDL

    XMLWordPrintable

Details

    • Task
    • Resolution: Unresolved
    • Optional
    • None
    • None
    • XTS
    • None

    Description

      If the Service WSDL specifies a WS-Policy assertion, we know that WS-AT or WS-BA is required/supported and we should be able to setup this handler chain automatically. Another benefit is that we can catch, on the client side, the situation where no WS-AT or WS-BA transaction context is present. Currently we leave it up to the service to detect and as a result we have no control over how this fault will be propagated back to the client. For example, a WrongStateException could be thrown when the service tries to enlist a participant and a transaction is not present. The Client may receive a generic fault message back or, in this case some or all of the WrongStateException. In either case, the developer of the Client is unlikely to realise that this is due to there not being a transaction present when the service was invoked. If the service mandates a WS-AT or WS-BA transaction, but none is present, then the client handler throws a suitable exception explaining what went wrong. If the service supports (i.e. it is optional) a WS-AT or WS-BA transaction, then the interceptor ignores the situation where non exists.

      CXF seems to have a plugin point for adding WS-Policy assertion handlers. This could be the right integration point for this feature. This is to be investigated.

      Attachments

        Activity

          People

            Unassigned Unassigned
            paul.robinson@redhat.com Paul Robinson
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

              Created:
              Updated:

              Time Tracking

                Estimated:
                Original Estimate - 3 days
                3d
                Remaining:
                Remaining Estimate - 3 days
                3d
                Logged:
                Time Spent - Not Specified
                Not Specified