Skip to Content
author's profile photo
Former Member

Message Mapping activation problem

Hello,

I've created a message mapping in a software component (SC A) that maps a message type set up in a second component (SC B) to the structure that is defined in a third component (SC C). The namespaces, in which all objects required for the interface are defined, are named identically in each Software Component.

I was able to compile the message mapping without errors but when I try to activate the mapping finally, I receive an error message saying that the source and the target message type specified in the mapping does not exist in the specified namespace. This is not true only the Software Components are different but the namespaces are the same.

Does anyone had the same problem? How can I overcome this?

In addition:

If I set up the message mapping in SC B or SC C where one of the required message types for the mapping is configured then I receive this error message only for the message type in the other Software Component. So far, I can avoid the problem when I define all relevant message types in one single Software Component. This means that e.g. file adapters for inbound and outbound files have to be defined in the same SC!

Best regards and thank you in advance

Mario Müller

Add comment
10|10000 characters needed characters exceeded

  • Follow
  • Get RSS Feed

7 Answers

  • author's profile photo
    Former Member
    Jun 02, 2004 at 11:26 AM

    That's not a good design to make it this way. Probably you'll have additional problems in runtime.

    Message was edited by: Dmitry Yankovsky

    Add comment
    10|10000 characters needed characters exceeded

  • author's profile photo
    Former Member
    Jun 02, 2004 at 11:28 AM

    What version of XI do you use?

    Add comment
    10|10000 characters needed characters exceeded

  • Jun 02, 2004 at 11:52 AM

    Hallo Mario,

    I just tried your scenario with two message types and a message mapping referencing these message types in different software component versions. It works fine in XI2.0 and XI3.0.

    If you have not activated the message types before you activate the message mapping, you get the message, that the message types do not exist activ. In this case you have to activate the message types first.

    Regards Franz

    Add comment
    10|10000 characters needed characters exceeded

    • Former Member

      Hello all again,

      thanks for the hint with the message type activation but I already had the message types activated in SC B and C before I created the message mapping in SC A.

      If I'm wrong with splitting the configuration into three different Software Components - what would you propose? Where do I have to create the message mapping when I need to map between two message types defined in different software components?

      Does someone have a hint how to overcome this?

      I'm using XI 2.0 SP04.

      Best regards and thanks in advance

      Mario Müller

  • Jun 03, 2004 at 09:09 AM

    Hallo Mario,

    I understand now your problem.

    The situation you have is the following. You have one Software Component SWC and three Software Component Versions SWCV1, SWCV2, SWCV3 in the same SWC. You are trying to map a Message Type from SWCV1 to a Message Type from SWCV2 with a Message Mapping in SWCV3. This does not work, because all versions SWCV1, SWCV2, and SWCV3 are in the same SWC.

    I will explain why this is the case by telling you the philosophy of a Software Component and a Software Component Version.

    A Software Component bundels different releases of an application or product. The Software Component Versions are the differnt releases; the objects of a Software Component Version can be transported and overtaken all togehter into the next release (next Software Component Version). Therefore it is assumed that all relevant objects of an application or product exist in a Software Component Version; all the objects in a version are self consistnet. In this picture it makes no sense to reference objects of other versions in the same Software Component. If an object references an object from an other version of the same Software Component and if you transport the version, then the referenced object in the other version would not be available.

    If you want to map Messages laying in different versions of a Software Component, then the Message Mapping must be defined in an other Software Component

    Regards Franz

    Message was edited by: Franz Forsthofer

    Message was edited by: Franz Forsthofer

    Add comment
    10|10000 characters needed characters exceeded

  • author's profile photo
    Former Member
    Jun 03, 2004 at 12:14 PM

    Hello Franz,

    first of all thank you for your answer. In order to discuss my problem in detail I should describe my current understanding of the namespaces and SWC roles.

    1) The namespace is used to identify objects used for building an end to end interface between an sending and a receiving SWC.

    2) The SWC defines a specific SWC installed on the sending or receiving system (e.g. HR module of SAP)

    3) The SWCV is used to describe different versions of the installed SWC (e.g HR module version x) on the sending or receiving system

    4) I define the third SWC manually (no real system stands behind this!) to hold the logic/relationship between the real SWC (SC B and SC C) and their respective SWCV (FileAdapter 1.0 in my case)

    According to this I configure the following in the IR:

    SWC: SC B (sending system)

    SWCV: FileAdapter 1.0 (from Adapter Engine A)

    Namespace: Proto

    DataType,MessageType,MessageInterface

    and Action belonging to SC B are defined

    here

    SWC: SC C (receiving system)

    SWCV: FileAdapter 1.0 (from Adapter Engine B)

    Namespace: Proto

    DataType,MessageType,MessageInterface

    and Action belonging to SC C are defined

    here

    SWC: SC A

    SWCV: Common (here the relationship between SWC B and

    SWC C is defined)

    Namespace: Proto

    BusinessScenario, MessageMapping and

    InterfaceMapping are defined here and

    references objects defined in the

    namespace "Proto" in the SWCs SC B and

    SC C

    like you can see I don't have several SWCV in one SWC configured.

    How would you configure a FlatFile to FlatFile scenario when the Sender and the Receiver use different Adapter Engines? In which SWC or namespace would you configure the logic/relationship?

    Best regards and thanks in advance

    Mario Müller

    Add comment
    10|10000 characters needed characters exceeded

  • author's profile photo
    Former Member
    Jun 03, 2004 at 01:59 PM

    Hello Mario,

    I guess instead of assigning software components for each sender/reciever system you can still assign the same software component for different technical systems you had defined in SLD, so that you will be able to associate with different namespaces within a single software component.

    Let us take your scenario -

    1. Define software component SC_A for product SC_P in SLD

    2. Define sending system(under technical landscape) and associate SC_P/SC_A to it.

    3. Define recieving system(under technical landscape) and associate SC_P/SC_A to it.

    4. Create business system(under XI Landscape) for 2 & 3

    5. Import SC_A in Integration repository.

    6. You should be able to define different namespaces according to sender and reciever system requierments and a logical/common name space for message mapping.

    You should be able to achieve what you need..

    Hope this helps.

    Best Regards,

    Rajan Kidambi

    Add comment
    10|10000 characters needed characters exceeded

  • author's profile photo
    Former Member
    Jun 03, 2004 at 06:57 PM

    Hello again,

    first of all I want to thank you for your support and ideas. It looks for me like a workaround but it solves the problem.

    However I don't understand why my previous solution worked on an other XI 2.0 SP04 installation.

    Best regards

    Mario

    Add comment
    10|10000 characters needed characters exceeded