Module processor usage in File ADapter

Hi all,
I have a scenario  Idoc->Xi->File to be in Xi 3.0.
There is already an XI 2.0 system up and running wherin they have used dispatcher classes for the File Adapter Configuration.They have used the Transform Class "com.sap.aii.messaging.adapter.XSLTConversion" and have added the particular XSLT mapping Program in "namespace1.XSLTService.XSLTConversion.XSLTFileName=
convert.xsl".
When I want to configure these in XI 3.0 as a Receiver File Adapter, documentation says that we need to specify these in Module Processor as a sevice. For this the precursor is that we need to deploy the Java Classes in SDM.
But my question is whether we have to include the XSLT coding too in the Archive and Deply it in the SDM? Is it not that its required only for the Java Classes to be Deployed using SDM or else the XSLT Codings too in a JAR File?

Hi Stefan,
Thanks a lot for your reply.
I already tried this way by storing the file in the File system of the server.
But for example,the XSLT file is this path of the Server,
F:\usr\sap\D49\SYS\global\tech_adapter\xslt\DR11_adapter_exit.xsl
Then, what exactly should be the path specification in the XSLT Sevice filename....Now its exactly as I have mentioned above and the file is stored physically over there....
The error log was like this,
2005-02-16 11:54:37 Success output 1108572877484 The message was successfully received by the messaging system. Profile: XI URL: http://cmis147:50000/MessagingSystem/receive/AFW/XI
2005-02-16 11:54:37 Success output 1108572877484 Using connection AFW. Trying to put the message into the receive queue.
2005-02-16 11:54:37 Success SAPEngine_Application_Thread[impl:3]_0 1108572877500 The message was successfully retrieved from the receive queue.
2005-02-16 11:54:39 Success SAPEngine_Application_Thread[impl:3]_0 1108572879093 The message status set to DLNG.
2005-02-16 11:54:39 Success SAPEngine_Application_Thread[impl:3]_0 1108572879109 Delivering to channel: FILE_DR11_Outbound
2005-02-16 11:54:39 Error SAPEngine_Application_Thread[impl:3]_0 1108572879125 Exception caught by adapter framework: failed to configure the transformation object
2005-02-16 11:54:39 Error SAPEngine_Application_Thread[impl:3]_0 1108572879125 Delivery of the message to the application using connection AFW failed, due to: failed to configure the transformation object.
2005-02-16 11:54:39 Success SAPEngine_Application_Thread[impl:3]_0 1108572879125 The asynchronous message was successfully scheduled to be delivered at Wed Feb 16 11:59:39 EST 2005.
2005-02-16 11:54:39 Success SAPEngine_Application_Thread[impl:3]_0 1108572879140 The message status set to WAIT.
But when I see the monitoring for the AdapterFramework it says its ok.
So I thought the path is probably invalid.
Your opinions please...
Thanks in Advance,
Romit.

Similar Messages

  • Usage of Module processor in SOAP Receiver Adapter

    Hi,
    I have scenario where I am calling an external Web Service via XI. Unfortunately I need Java Mapping to generate the complete SOAP Message (there are some special header elements required by the Web Service)  and flag 'no soap' in the SOAP Receiver Adapter. This works fine, but I have additional Web Service Calls that have the same Header logic and I don't want to use Java Mapping all the time.
    I was wondering if it is possible to use graphical User Mapping for the Business Data that goes to the SAOP Body as a payload and use Java code to generate the SOAP Message (actually the SOAP Wrapper and the Header).
    Can I do this in XI using the Module processor in the SOAP Receiver adapter or do I have to use two mappigs, one based on the Graphical mapping and another using Java Mapping? Is it feasible at all in XI?
    Thanks in advance.

    Hi,
    You can use Module Processor.
    But,
    1. If it is a synch call, in when the message is going from the SOAP adapter to the Webservice, you will need to manually Add the SOAP header as you want . ( you will need to create the entire SOAP mesage as the output of the Module ).
    2. When the response comes back, the same module will need to remove the SOAP header etc and pass a valid , XML message to the Graphical mapping.
    If you have a requirement that some fields of the SOAP header will be needed to be accesed in the Response mapping, then you would need to either add this field to some field in the response payload.
    Better option would be to use, Either a Java or a XSL mapping that does all the required stuff for you.
    Regards
    Bhavesh

  • Module processor enhancement with file content conversion

    Hi All,
      I have a bean (module processor) that converts the a PDF doc to text. I need to use the same bean with file content conversion. Module processor processing sequence is as follows:
    1) My Bean: localejbs/myBean
    2) Default: localejbs/CallSapAdapter (Bean for file content conversion).
    When I tried the same (myBean + File adapter with file content conversion) , it was not working as expected. But the same bean works fine with normal file adapter (myBean + File adapter without file content conversion).
    Couldn't figure out the reason. Please help.
    Regards,
    Ajay.

    As the content conversion of the file adapter is done before calling the customer module, it is not possible to use both.
    As workaround you can do the file content conversion with help of the MessageTransformBean. In the module chain you put the MessageTransformBean after your module.
    Note that the configuration of the MessageTransformBean has to be done like the J2SE sender file adapter:
    http://help.sap.com/saphelp_nw04/helpdata/en/0d/00453c91f37151e10000000a11402f/frameset.htm
    You find an example here:
    https://websmp206.sap-ag.de/~sapdownload/011000358700001186732005E/HowToConveModuleJMS.pdf
    Regards
    Stefan

  • Module processing inside Sender File Adapter

    Hello,
    I am trying to analyze whether I can create a specialized module inside Sender File Adapter. As of right now, the Sender File Adapter and Receiver as well, assume endSeparator character in the end of each record. For files that do not have this field, it is just on continuous string, I assumed I can create an
         adapter module
         call it BEFORE data in the file is being converted to XML format
         Insert 'nl' character (since the record length is fixed)
         Call regular adapter processing (converting to/from XML)
        However, creating any module inside Sender File Adapter, the payload of the main document is already in XML format. Is there anyway to avoid it?
       Thanks for your help,
             Dmitriy Mindich

    It is not possible with the standard functionality.
    So maintain the sender file adapter with no conversion, but in the module tab enter following modules:
    1. Your module
    2. The conversion module (*)
    3. The standard module.
    (*) for details look here:
    Look here:
    http://service.sap.com/nw-howtoguides
    -> Exchange Infrastructure
    -> How To Use the Content Conversion Module in JMS Adapter
    Regards
    Stefan

  • Retrieving the file name in the adapter module in the sender file adapter

    hi,
    i need to retrieve the file name, in the adapter module. This module is placed in the sender file channel.
    After the file adapter has picked up the file from the file directory, the file is placed in the archived directory.Custom adapter mofule is place in the file shanel. i need to retrieve the file name of the file in the adapter module. Is it possible to retrieve the file name?
    Also is it possible to retrieve the archive directory path in module?
    Regards,
    Meenkashi

    Hi Meenakshi,
    I guess you are looking for this
    /people/daniel.graversen/blog/2006/10/05/dynamic-configuration-in-adapter-modules
    Regards
    Suraj

  • Converting .XSL file to RFC using File Adapter

    Hi,
    I need to convert .xsl file using XI and send an RFC. I am not sure how to do that. Do i need to write some JAVA API's for the same. Is File adapter capable of converting .xsl files.
    Any pointers are most welcome.
    Thanks in Advance
    Regards,
    Vikas

    HI,
    try in the following ways
    Write a simple XSLT mapping or java mapping to change the value of the attribute "encoding" to "ISO-8859-1" in the output XML of message mapping . Include this XSLT or Java map as the second mapping step in your interface mapping.
    An example of the XSL code might be as follow:
    <?xml version='1.0'?>
    <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
    <xsl:output method='xml' encoding='ISO-8859-1' />
    <xsl:template match="/">
    <xsl:copy-of select="*" />
    </xsl:template>
    </xsl:stylesheet>
    OR
    see the below links
    /people/sap.user72/blog/2005/07/31/xi-read-data-from-pdf-file-in-sender-adapter
    How to write ModuleData process exit bean in the sender file adapter
    Adapter module for file renaming
    Module processor usage in File ADapter
    Regards
    Chilla

  • Overwriting the File in File Adapter

    Hi All,
    I hav a module processor (in Receiver file Adapter)which checks the existence of the file by name DOWN.flg befor writing the file by the same name at the same location. if the file already exists, then it has to wait until another system deletes (as per the requirement). if not, it has to write the file. I had done this successfully with an FTP receiver. but when i'm moving the same functionality to the local drive(now the receiver is a local directory on the XI Server), then i'm getting the following error.
    <b>Error</b>:Attempt to process file failed with java.lang.Exception: Overwriting file '/cpe/data/DEV/XI_/IN/APD/Commander/DOWN.flg' not allowed due to configuration flag
    <b>Error:</b>
    Exception caught by adapter framework: Overwriting file '/cpe/data/DEV/XI_/IN/APD/Commander/DOWN.flg' not allowed due to configuration flag
    these are the errors which i found in the audit log. i din't check the overwrite Existing File option in the Receiver adapter.Can anyone help me out in resolving this.
    Anyhelp wud  b greately apprecited...
    Thnx in Advance.

    Hello Jayakrishnan,
    Thank you very much for the tip, actualy it was very tricky, since the overwrite existing file option is not possible in the "append" mode on my XI version (SP12). THis is what we have done :
    - modify the communication channel to "create" mode and check the "overwrite existing file option".
    - activate it
    - chanche back to the "append" mode
    - activate it again
    And then it works !
    Thanks for your help
    Guislain

  • Sender File Adapter Bespoke Module Development

    I have been following the How To ... Create Modules for the J2EE Adapter Engine to create a bespoke module for the Sender File Adapter.
    Initially all the module does is write a message to the Augit Log. The module has been deployed to XI successfully. When I add the module to the sender file adapter the adapter is green in the adapter monitor but I get the following message in the message monitor ....
    "Attempt to process file failed with Path to object does not exist at com.kk.FileAdapter, the whole lookup name is localejbs/sap.com/com.kk.FileAdapter/WriteToLog."
    com.kk.FileAdapter is the package. All of the required files have been built as per the How To pdf.
    Does anyone have any ideas??

    Hi Satish,
    Thanks for the quick response.
    Using the fully qualified name I get the following error in the adapter monitor.
    "Last message processing started 18:32:11 2005-09-19, Error: Module Exception 'com.sap.aii.af.mp.processor.ModuleProcessorException' found, cause: com.sap.engine.services.jndi.persistent.exceptions.NameNotFoundException: Path to object does not exist at BANKSenderFileAdapterEAP, the whole lookup name is localejbs/sap.com/BANKSenderFileAdapterEAP/WriteToLog."
    If is use the JNDI name I do not get an error in the Adapter Monitor but get the following error in the Message Monitor.
    "Attempt to process file failed with Path to object does not exist at BANKSenderFileAdapterEAP, the whole lookup name is localejbs/sap.com/BANKSenderFileAdapterEAP/WriteToLog."
    The rest of the message seems to be successful, only the run of the module.
    Any ideas??
    Many thanks
    Gary

  • Adapter module to enhance File adapter

    Hey guys
    i need a small clarification regarding adapter modules.
    is it possible via adapter modules to enhance the File adapter to such an extent that it can deliver files to two separate systems in separate landscapes.
    i know i can design one more receiver determination and can also use Run OS command options,but modules in general give better performance compared to others so just wan't to explore a little bit more about them.
    Thanx
    Aamir

    Hey Aamir,
    yeah, they do take a lot of resources, but that's how XI was built to work.
    What you're trying to do is a workaround and may not get support from SAP.
    If I have understood right, you still wanna maintain the endpoint connection data in the communication channels but want to acces them directly without going through the technical routing pipeline, is that so?
    If that's it, I'm sorry but I cannot help you any further.
    The only way I know of accessing adapters without going throught technical routing is by using lookup API (RFC, JDBC, Soap) but it is not intended for endpoint scenarios (insert, update etc), mainly for simple read (lookups).
    If maintaining the connection data outside adapters is not a concern, you could try to create the connections directly in Java code, inside java proxies.
    Regards,
    Henrique.

  • File Adapter-Module configuration

    Hi All,
    I have the following requiremnt.
    "Duplicate files should not process"
    Following are the File Access Parameters.
    Source Directory: ABC (ex: contains aa1,aa2,aa3,aa4 files)
    Filename: *
    File name mask: aa*
    My doubt is if they place aa1 file again in ftp , i should not process.
    For this I'm thinking to write module configuration.
    Can any one suggests , whether this is the correct approach? If it is could u explain how to write this module and where to write this module and how to import in xI, do i need to pass any parameter name in module configuration.
    Regards,
    venu.

    Hi Venu,
    You can go with Module in the Sender File Adapter.
    First you need to check the file name and you need to store this file name in the Database.( you can use Java Database).
    If there is an entry in the database for that file, then reject the whole file as per the business requirement. So that you can avoid , overhead of Mapping. Because if there is an error set the flag in the message and check this flag in your Receiver Determination, if it is an error send into error directory.
    Another way is outside the XI, i.e using shell scripts.
    Regards,
    Moorthy

  • Which will execute first in File Adapter (parameter,Identifier,module)

    Hi,
    I have written a module for my sender file adapter, and choose FCC to parase my complex structure...here my doubt is whether adapter module will call first or FCC which is there in Identifier tab in file adapter?
    Regards,
    Irshad.

    Chandras sekhar,
    i have already seen that blog...
    could you plz read my message once again?
    Regards,
    Mansoor
    ya i got it..Call sap adapter module will store the message in send queue.
    just want to know which module is building the xi header whether it is same call sap adapter module or is there any specific module which will convert native message to xi message.
    Is call sap adapter module is the responsible for building the xi message header with the help of cpa lookup? if its so again confuse for me.....
    In File adapter we have 3 tabs one is parameter identifier and module...As u said first parameter tab will run as per FCC/ File message protocol then this parsed/content of text file will be input to the module tab .in this module tab we have custom modules and standard module these modules are executed in the same sequence as mentioned.
    what is the module name which converts native message to xi message?
    Regards,
    Mansoor

  • File Adapter picks up the file but cant see it in MONI/Message Monitoring

    Hi
    I am using FCC in Sender File Adapter and have only one sub structure under Recordset hence I have not used the 'Key Field Name' though ''Key Field Type' by default is 'String(Case-Sensitive)'. Besides the 'fieldNames' heading I have mentioned all the fields of the sub structure in the same order as I have mentioned in the Data Type.
    The problem that I am facing is that even though the file is picked up from ftp successfully still I cant see any traces of it in either MONI or Message Monitoring though
    The error that I receive in the MDT is -
    Success : Entire file content converted to XML format
    Warning : Empty document found. Proceed without sending message
    Success : File "Test.csv" deleted after processing
    and I have data in the file.
    Can u suggest a solution?
    Warm regards,
    Vaibhav

    > Hey
    > >>So I have filled my test excel file with the values
    > A and B in adjacent columns
    > are you picking up some .xls file?if yes,then Content
    > conversion wont work,You have to create adapter
    > module processor and you have to add to your module
    > processor bean to the adapter...Just check the
    > following procedure...
    > https://www.sdn.sap.com/irj/sdn/weblogs?blog=/pub/wlg/
    > 1967
    > Thanx
    > Aamir suhail
    Hi Aamir
    I had a look at the blog and according to that I will need to create a module...the prob with that is in the blog he hasnt provided the full steps for that. Also I had tried this thing earlier of using an excel file and saving it in .csv format and it had worked. I cant figure out what the error is this time
    Have u worked on creating amodule for excel files b4?
    Vaibhav

  • Zip Payload using PayloadZipBean Module Processor

    Hi,
    I'm using AF_Modules/PayloadZipBean in module processor of Receiver SOAP adapter to compress/zip the message payload. I've used the following module key parameters :
    Parameter Name      Parameter Value
    zip.Mode                  zipAll
    zip.filenameKey        contentType
    In the adapter engine monitoring from RWB I can see the following warning message :
    Warning Zip: message is empty or has no payload
    But I can see the msg payload from the RWB message monitor as expected.
    Can anyone please throw any light on this issue?
    Thanks in advance,
    Dipankar

    Hi Stefan,
    Can you please explain what you meant by transfer-encoding gzip?
    Actually the requirement is to receive xml message in compressed zipped  format along with digital signature. As I understand using the ModuleProcessor which you mentioned in your blog I can send zipped message (using File Adapter I've actually achieved the result as mentioned in your blog. So thanks a lot for that!). But in file adapter I can't use digital signature. So how to satisfy both the requirements using a single adapter (and maybe using some module processors over it)?
    Thanks for your help!
    Dipankar

  • How to set FTP parameters through Module Processor?

    Hi
    We read parameters set in the communication channel of an adapter through method getSupplementalData("module.parameters") of com.sap.aii.af.mp.module.ModuleData.
    I have following question regarding reading/writing configuration data, set in communication channel for a File adapter:
    1) How can I read the FTP Connection Parameters in a module of a module processor?
    2) Is it possible to update FTP parameters at Module Processor level for Receiver Adapter?
    3) If update of parameters through Module Processor is not possible, then is there some other way I can set the FTP parameters?
    Regards
    Vijendra

    HI Vijendra,
    Check out this -
    https://websmp202.sap-ag.de/~form/sapnet?_SHORTKEY=01200252310000071155&_SCENARIO=01100035870000000202
    https://media.sdn.sap.com/SDNTV/main.asp?mediaId=130
    <i>2) Is it possible to update FTP parameters at Module Processor level for Receiver Adapter?</i>
    You can not dynamically determine the FTP server etc. In the Receiver Adapter, Module is called first, then control is given XI Adapter to output the file into FileSystems. You can modify the Payload.
    For more~
    http://help.sap.com/saphelp_nw2004s/helpdata/en/cd/5af7c0c994e24fb0d0088443513de2/frameset.htm
    Hope this helps,
    Regards,
    Morothy

  • File Adapter : Sequence Check

    Hello,
    I'm facing the following issue: We receive files from a trade parter. These files have a sequence number in their file name. Eg. utilmd001.txt. We need to send these files as idocs to our SAP system. But we can only process a file if the previous file is already processed. Eg. utilmd003.txt can only be processed if utilmd002.txt is processed. Any idea on how to incorporate this in the file/FTP Adapter? Also note that we cannot assume that utilmd002.txt arrives before utilmd003.txt.
    Any ideas?
    Greetings,
    Bart

    Hi Bart,
    I know it is possible to define generic modules (here is where the Java function comes into the picture) for each adapter in the module processor to enhance the adapter with additional functionality (e.g. SequenceCheck). I haven't tried before but you can always try. The FTP/batch commands alternative is a workaround that is simply and fast (without knowing your specific requirements) to implement.
    Check this link for more info on the module processor: http://help.sap.com/saphelp_nw04/helpdata/en/f4/8620c6b58c422c960c53f3ed71b432/frameset.htm
    And
    This one for more info related to the development of your own modules: http://help.sap.com/saphelp_nw04/helpdata/en/f4/8620c6b58c422c960c53f3ed71b432/frameset.htm
    Cheers,
    R.

Maybe you are looking for