Uploaded image for project: 'Axis-C++'
  1. Axis-C++
  2. AXISCPP-771

Why Axis C++ doesn't support initialize_module() in dual mode, server and client at the same time?

Details

    • Wish
    • Status: Open
    • Major
    • Resolution: Unresolved
    • 1.5 Final
    • None
    • Basic Architecture
    • None
    • linux

    Description

      Why doesn't Axis C++ support initialize_module() in dual mode, server and client at the same time?

      My company is very interested on Axis C++ that is, at the moment, perfectly integrable with our main product: Abysal-WebDTP Multiprotocol Transaction Server.

      This server has a master process that receives all requests that redirects to a free worker from a pool of worker processes. These workers execute all the transactions. All the workers call properly initialize_module( 1 ) and uninitialize_module(). My big problem is that if a transaction want's to call a web service via Axis, the initialize_module( 0 ) call produces the exception SERVER_ENGINE_EXCEPTION.

      I think this is a big limitation because a process can't run as server and client in a web service at the same time.

      Attachments

        Activity

          The initialize_module( 0 ) call produces the exception SERVER_ENGINE_EXCEPTION does not mean that you cannot run the server and client in parallel.

          In fact the server and client are tow distinct entities and they have no relation to each other when operating. I think the misunderstanding comes because the exception code is named SERVER_ENGINE_EXCEPTION. When the client throw this, what it means is that there seem to be some problem on the server side. In other words, most probably the server has returned a fault.

          samisa Don Samisa Abeysinghe added a comment - The initialize_module( 0 ) call produces the exception SERVER_ENGINE_EXCEPTION does not mean that you cannot run the server and client in parallel. In fact the server and client are tow distinct entities and they have no relation to each other when operating. I think the misunderstanding comes because the exception code is named SERVER_ENGINE_EXCEPTION. When the client throw this, what it means is that there seem to be some problem on the server side. In other words, most probably the server has returned a fault.
          jmfcya jose added a comment -

          To work in server and client (dual) mode at the same time, I need to call in the same worker process to initialize_module as a server and as a client.

          Right now I would have to call initialize_module(0) and initialize_module(1).

          In the following lines you can see how I got the SERVER_ENGINE_EXCEPTION:

          int initialize_module (int bServer)
          {
          // some code ...
          if (g_uModuleInitialize == 0)

          { // some code ... }

          else if (AxisEngine::m_bServer != bServer)

          { throw AxisEngineException(SERVER_ENGINE_EXCEPTION); }

          }
          // some code ...
          }

          I would like to call initialize_module once, for example with value 2, meaning dual mode, server and client at the same time. Or some other way to get the same result.

          jmfcya jose added a comment - To work in server and client (dual) mode at the same time, I need to call in the same worker process to initialize_module as a server and as a client. Right now I would have to call initialize_module(0) and initialize_module(1). In the following lines you can see how I got the SERVER_ENGINE_EXCEPTION: int initialize_module (int bServer) { // some code ... if (g_uModuleInitialize == 0) { // some code ... } else if (AxisEngine::m_bServer != bServer) { throw AxisEngineException(SERVER_ENGINE_EXCEPTION); } } // some code ... } I would like to call initialize_module once, for example with value 2, meaning dual mode, server and client at the same time. Or some other way to get the same result.
          nadiramra Nadir K. Amra added a comment -

          I do not consider this a blocker, lowering priority.

          nadiramra Nadir K. Amra added a comment - I do not consider this a blocker, lowering priority.

          People

            Unassigned Unassigned
            jmfcya jose
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

              Created:
              Updated: