Custom Module Processor.

Hi,
Can anyone provide me info along with some code abt how to develop a Custom Module processor.I wud b very thankful if u provide the deployement info even.please help me out as it is very urgent.
Thanx

Do you mean: Modules for the J2EE Adapter Engine?
Look here:
http://service.sap.com/nw-howtoguides
-> Exchange Infrastructure
-> How To Create Modules for the J2EE Adapter Engine
more information on Michal's FAQ page:
/people/michal.krawczyk2/blog/2005/06/28/xipi-faq-frequently-asked-questions

Similar Messages

  • Exception in Module Processor

    Hi All,
    I want to know wot happens when an exception occurs in a module processor?i hav a requirement in which i hav to pass adapter module a message when nothing goes wrong in a custom module processor.If an exception is raised in the module processor,does it prevents from passing the message to the adapter module?Please provide me some info regarding this.
    Thnx in Adv
    Anil.

    Hi Anil,
    we don't have such an requirement like you. But we have
    also developed some module exit. And when the module exit
    raise an exception the message does not go through. We
    could see the message hanging with an exception in the
    runtime workbench.
    An it is also not possible to restart the message again
    because the exception is raised again. So if we have an
    exception the error will persist and we was not able to
    restart the message again. This message was lost!
    But in your case you maybe don't want that the message get
    lost. In this case you can not use exception to modell you
    requirement i think. But i don't have another solution for
    you at the moment.
    Thanks,
    Ly-Na Phu

  • Module processor deployment.

    Hi All,
    I hav written a custom module processor.i even hav a helper class which is called in the module processor.I developed it thru NWDS.But when i try to deploy the ear file that is generated out of the jar file of the module,it is giving a warning that the libraries hav a hard reference on the server.
    the application-j2ee-engine.xml looks like the following:
    <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE application-j2ee-engine SYSTEM "application-j2ee-engine.dtd">
    <application-j2ee-engine>
    <reference
    reference-type="hard">
    <reference-target
    provider-name="sap.com"
    target-type="library">com.sap.aii.af.lib</reference-target>
    </reference>
    <reference
    reference-type="hard">
    <reference-target
    provider-name="sap.com"
    target-type="service">com.sap.aii.adapter.xi.svc</reference-target>
    </reference>
    <reference
    reference-type="hard">
    <reference-target
    provider-name="sap.com"
    target-type="service">com.sap.aii.af.svc</reference-target>
    </reference>
    <reference
    reference-type="hard">
    <reference-target
    provider-name="sap.com"
    target-type="service">com.sap.aii.af.cpa.svc</reference-target>
    </reference>
    <fail-over-enable
    mode="disable"/>
    </application-j2ee-engine>
    Can anyone help me out in deploying the module processor.
    Thnx in Advance
    Anil.

    Hi Anil,
    Its great that your problem is solved but what was the problem. Was it related to changing of related to changing of references.
    If you are in a position please do post the problem and how you solved it.
    Regards
    Sidharth

  • Problem in Module processor

    Hi All,
    can any body help me on this
    how much time will take the module processor to execute the message.
    If 4/5 messages are entering into MP at the same time what will happened
    I am getting the error in this stage when iam using receiver FILE Adapter
    getting the error log " Message is entering into the Module Processor"
    then in the next log i will be getting the following error differently
    Attempt to process file failed with
    com.sap.aii.adapter.file.configuration.DynamicConfigurationException: Error during variable substitution:
    com.sap.aii.adapter.file.varsubst.VariableDataSourceException: Caught SAXException while parsing XML payload:Fatal Error:com.sap.engine.lib.xml.parser.parserException: XMLparser: No data allowed here(:main:,row:,col:75)"
    com.sap.engine.lib.xml.parser.parserException:XMLParser:N o data allowed here:(hex) 76,65,72   (:main:,row:1,col:9)
    for the same message when the sys tried to resend
    parserException:start-tag 'EIT' is different from the end-tag'E1EDP03(:main:,row:1,col:16)
    but there is no problem with payload also
    Regards
    Sankar

    Hi All,
    1.I am not using custom Module, it is IDOC to File Scenarion.
    2.No Content Conversion.
    3.There is no problem with Mapping.
    Maximum Messages are successfull, some messages are failed in the Module due to this error.
    Every message  (main:, row:1:,col:1923) this will be changing and some times </ expected, Document is not well-formed, No data allowed here "
    "If i rescend the message 1 by 1 message is processing successfully, but if select more than 1 message only one message getting processed".
    Around 4 interfaces with this type of error, but all having same problem some messages are failed with this kind of error.
    If more messages are attempting to process at the same time in the module processor is there any loading problem that causes this error?.
    Thanks & Regards
          Sankar

  • Custom Module

    Hi All,
    Is it possible to add custom module to RFC adapter..?  Also using custom module is it possible to convert a payload into attachment in XI..?

    Hi,
    Generally The RfcAdapter will use one which is called 'localejbs/RfcAFBean'. This can be configured in the Integration Directory for each communication channel on the tab 'Module'. If the list is empty on this tab, it defaults to the EJB named above and nothing has to be done. So if no modules should be used, everything will work without a special configuration. If some custom modules are configured to be used, the last module always has to be the RfcAdapter module. This will establish the communication between the adapter and the Adapter Engine.
    Can you go through the below urls which may help you in developing a new module processor:
    /people/sap.user72/blog/2005/07/04/read-excel-instead-of-xml-through-fileadapter
    /people/michal.krawczyk2/blog/2005/12/10/xi-generating-excel-files-without-the-java-nor-the-conversion-agent-not-possible
    /people/gowtham.kuchipudi2/blog/2006/01/04/testing-sample-adapter
    Also go through the help which might answer your queries:
    http://help.sap.com/saphelp_nw2004s/helpdata/en/8b/895e407aa4c44ce10000000a1550b0/content.htm
    Thanks
    Swarup

  • 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

  • CIDX Adapter and Custom Modules

    Dear,
    We were wondering whether the PI CIDX sender adapter supports the usage
    of custom modules ?
    We have created a small module which basicaly simply logs a message in
    the audit log ... that module works fine with the file adapter ...
    When we send a CIDX message from an external system towards PI via the
    CIDX adapter then nothing happens ... Traces do not seem to contain any
    reference at all towards the module ...  It just seems that the module is never called ...
    Looking at the adapters/module documentation it somewhere mentions briefly that adapters can choose on whether to implement the standard module chain processor or basicaly do something else ...
    Does anyone know whether the CIDX adapter supports the usage of custom modules ? 
    Thanks,
    Steven

    Adapter modules cannot be used in CIDX or RNIF sender adapters.
    Regards
    Stefan
    Edited by: Stefan Grube on Jun 24, 2008 3:15 PM

  • Create a PDF as attachment in custom module in mail receiver adapter

    I'm trying to create a PDF attachment to an email using a custom module with the following codes. The attachment was created and sent, but when I tried to open it, I got the following error message: the file cannot be read either because a invalid encoding or the file is damaged.
    Anybody knew if I did anything wrong in the way I'm opening and creating the PDF attachment below?
    // add a new pdf attachment to the message
    FileInputStream fi = new FileInputStream("c:/ftmailxi.pdf");
    byte[] attachmentContent = new byte[fi.available()];
    Payload attachmentPDF = msg.createPayload();
    attachmentPDF.setName("ftmailxi.pdf");
    attachmentPDF.setContentType("application/pdf");
    attachmentPDF.setContent(attachmentContent);
    //adding our this pdf as an attachment
    msg.addAttachment(attachmentPDF);
    //provide the XI message for returning
    inputModuleData.setPrincipalData(msg);

    This will surly help u
    /people/sravya.talanki2/blog/2006/11/28/e-mail-xml-messages-in-pdf-format-from-sap-xi
    Check this out
    Mail with attachment.
    Regards,
    Prateek

  • 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

  • Custom File Processor implementing UploadedFileProcessor

    I am implementing a custom file processor since upload of files will be in GB, Faces Context is not available it gives NULL also the ServletRequest Object available seems to be a trimmed instance as it not could list any parameter values..
    Any idea on how to read parameter from request inside that class or to get to FacesContext?

    Hi Bowen,
    Here's the example DataPlugin closest to what you're describing.
    You can also look at Exercise 5 from the DIAdem Hands-On, posted here:
    http://www.ni.com/example/30393/en/
    Brad Turpin
    DIAdem Product Support Engineer
    National Instruments

  • Class Cast Exception In Module Processor

    Hi,
      I'm trying implement "Step by step guide to develop a
    module for reading file name in a
    sender file adapter" by Krishnakumar Ramammoorthy. When I deploy the EAR in my server I'm getting following exception:
    #1.5#0003BA92DD90003B0000240000001D190003FCBEF3B117E6#1122321992587#/Applications/ExchangeInfrastructure/AdapterFramework/Services/ADAPTER/ADMIN/File##com.sap.aii.adapter.file.File2XI.processFileList()#J2EE_GUEST#0##nd2xidb.svc.doi.test_XD2_3621750#Guest#46b9f3b0fd4611d9af850003ba92dd90#output##0#0#Error#1#com.sap.aii.adapter.file.File2XI#Plain###Channel CC_File_S_ABCMCodes: Sending file failed with java.lang.ClassCastException - continue processing#
    I'm running it on XI 3.0 SP 11.
    I'm trying to send a file and planning to modify the content in the module processor.
    Please let me know if anyone has a clue ?
    to get above mentioned document please search for "ramammoorthy", it's the first document.
    https://www.sdn.sap.com/sdn/search.sdn?contenttype=url&query=ramammoorthy&selected=0&content=/irj/servlet/prt/portal/prtroot/pcd!3aportal_content!2fSDN!2fiViews!2fWCM!2fcom.sap.sdn..wcm.search.search_adv%3Fprttheme%3DCSIN%26QueryString=ramammoorthy%26SearchPluginName=sdn_all%26SelectedCustomProps=resourcetype(value=s*)
    thanks
    Sibo

    Hi All,
      The problam was in ejb-jar.xml. You should use the interfaces provided by module framework as home and remote interface.
    I made following changes in ejb-jar.xml and it worked..
    <session>
                <ejb-name>GetFileNameBean</ejb-name>
                <!local-home>gov.doi.fbms.moduleprocessor.GetFileNameLocalHome</local-home>
                <local-home>com.sap.aii.af.mp.module.ModuleLocalHome</local-home>
                <!local>gov.doi.fbms.moduleprocessor.GetFileNameLocal</local>
                <local>com.sap.aii.af.mp.module.ModuleLocal</local>
                <ejb-class>gov.doi.fbms.moduleprocessor.GetFileNameBean</ejb-class>
                <session-type>Stateless</session-type>
                <transaction-type>Container</transaction-type>
            </session>
    Please refer to document http://help.sap.com/saphelp_nw04/helpdata/en/32/43d84072378031e10000000a1550b0/content.htm
    Thanks a lot for your help..
    Sibo

  • Printing java layer error stack in a custom module!--Experts, please reply!

    Hi to all OAF experts,
    We are in a process of making a fully customized module, which is integrated with OM and other modules, and takes the place of Quoting module. There is beasically a custom module which takes the place Quoting module in Apps in Order to cash cycle. Now in the final page of this module where we submit the quote, we need to through the entire Java layer error stack, similar to what is done in stanadard quoting module. There they use AOLMessageManager class for this purpose. But since quoting module is in JTT/JTF framework and our custom module is in OAF , we were looking for alternatives.
    I was going through oaf doc and i found a class called OAExceptionUtils, which contains a method called processAOLJErrorStack(ErrorStack)
    As per the documentation it says --"Returns an OAException representing the error stack populated by the Oracle Applications user session context AppsContext. ", that is exactly what we need. But , when i use this method, i get error stack as null! Any idea y this is happening? Any alternative how to get this done!
    --Mukul                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           

    Hi Mani,
    What is the source (technology source) of the error?
    This is OAF.In a way we have developed entire quoting module from scrath .I believe you would be embedding the Quoting (JTF) pages on to your custom OAF pages. This is similar to how it is implemented in the Standard Sales module.
    We are using same quoting APis to create quote. Our code only goes in JTF tech only while entering in and of configurator.Is your requirement to read the java error stack (JTF Code) from the standard quoting application (embedded in your custom OAF Page) in your Custom page's controller (OAF Code)?
    Yes, we can create quotes from quoting as well as from our custom table,the only difference is that if you create aquote from quoting, it does not updates our custom tables. We want to throw the same java error which quoting throws, while submitting a code in our oaf controller. It throws even Order management error messages!Any idea how we can go about this..!
    --Mukul                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   

  • 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.

  • Customer Module Deployment in PI 7.1

    Hi All,
    We have a custome adapter module developed in PI 7.0 and we have upgraded that to PI 7.1 based on the guidelines from SAP. Now we would like to deploy that upgraded module in new PI 7.1 server. Could any one please tell me how can i deploy the new custom module.
    Please suggest me various methods of doing it.
    Thanks in advance.
    Best Regards,
    Prasad Babu.

    hi,
    refer to:
    http://help.sap.com/saphelp_nw70/helpdata/en/87/4797422930c56ae10000000a155106/content.htm
    https://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/00838345-708c-2a10-1199-9514c0b0a91c
    regards,
    ujjwal kumar

  • What will be input for custom module developed for JDBC adapter

    Hi,
    I have a scenario SQLDB -> Xi -> R3 .
    Here I have added a custom module before callsapadapter module.
    As I know the sequence of module calling will be as follows :
    1. Standard jdbc adapter
    2. custom module
    3. callsapadapter
    Standard jdbc adapter has a select query . After that what will be the input format for my custom module .Will it be the xml structure of my source Data type or will it be a resultset or will it be a inputstream(stream of xml fomat????).
    And then in which format i need to generate the output format for CallSapAdapter.
    Regards

    Hello Moni,
    SAP has a wonderful feature in ABAP. There are some Runtime Errors that you can <i>catch</i>. This is somewhat similar to the Exception Handling procedure in Java / C++. So here's how you go about it....
    Sometimes there might some calculations that we do, multiplication , for example, where the result of the arithmetic operation is known only at run-time. And the recepient for this result may not always be of the right type to take the result. Consider the following code:
    parameters a type i obligatory.
    data : b type i,
           c type i.
    b = 99999999.
    ** Assume that the user has entered 99999999 for the value of the parameter a.
    c = a * b.    " 99999999 * 99999999 "
    write c.
    This program will certainly give a short dump saying that there was an arithmetic overflow. But we can actually avoid this Shor Dump and handle the situation quite elegantly. consider the following.
    parameters a type i obligatory.
    data : b type i,
           c type i.
    b = 99999999.
    CATCH SYSTEM-EXCEPTIONS ARITHMETIC_ERRORS = 1.
    ** Assume that the user has entered 99999999 for the value of the parameter a.
       c = a * b.    " 99999999 * 99999999 "
    ENDCATCH.
    if sy-subrc ne 0.
      write: 'There was an arithmetic overflow in the calculation.'
    else.
      write c.
    endif.
    This way you can actually avoid the short dump and make the system set a value for sy-subrc. Based on the avlue of the sy-subrc, you can go ahead with further processing / error-handling, as the case may be.
    Here, ARITHMETIC_EXCEPTIONS is called an <i>exception group</i>. For more information on what other run-time errors can be <i>caught</i>, and What the various exception groups contain, please refer to the online documentation for the CATCH statement.
    Regards,
    Anand Mandalika.

Maybe you are looking for

  • App store and mail won't open. Help!

    Just cleaned my iMac with Clean My Mac and now my app store and mail wont open. Please help.

  • Apple TV wifi error

    Sorry for my English is very basic. Wifi does not work on my Apple TV. Only works by LAN cable. Upon entering the wireless menu there is a legend that says "Activation error". Thanks.

  • LOAD_COMMON_PART Error in ME2M, ME2N, Transactions

    Hello, I have created one implicit enhancement in Include FM06LCS4 to add MRP Controller Field on the selection screen of ME2L. But after moving the changes into production, run time error LOAD_COMMON_PART is coming. It is not coming for ME2L but for

  • CCNA Wireless Exam Prep material

    Hi , Anyone know if there is any study guide from Cisco for the new version of CCNA Wireless exam ? I have found a quick refrence guide , an electronice format but that's about it. Thx .

  • No authorisation error in MB1A

    Hi, I am trying to post scrap in T.code MB1A with movement type 551. at the time of saving system is saying "No Authorisation". when i check the T.code SU53. then its green. no aurhorisation is missing. what is missing unable to understand. please in