Help on adapter module configuration
Hi Folks,
I want to pick a file and placed in the archive location. I want to develope a adapter module for this. Can any one please let me know how would I develope an adapter module for this.
Your help is highly appreciated.
Thanks,
Enivas
Hi,
It depends which SFTP adapter you are using as some vendors support archiving such as AEDAPTIVe SFTP Adapter (http://www.aedaptive.com/index.php/solutions/sftp-for-sap-netweaver) but I guess you are using Seeburger SFTP adapter ?
However, if your adapter does not support archiving and you want to write an adapter module, you can refer the following link:
http://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/docs/library/uuid/02706f11-0d01-0010-e5ae-ac25e74c4c81
Similar Messages
-
No SuchAgorithmException in Adapter Module configured EAR file
Dear All,
I have created an adapter module using 3DES encryption/decryption algorithm for File/FTP adapter configuration and have deployed it at J2EE server of respective XI system.
The alogorithm and adapter module are working fine in DEV & QA environments but in Mirror system(which is similar to Prod), I have been encountering Error:-
<i><b>java.security.NosuchAlgorithmException: Algorithm DESede not available</b></i>
Can you please suggest what could be issue here? Any inputs will be highly appreciated.
Thanks and Best Regards
Prashant RajaniHi
see the below links
http://help.sap.com/saphelp_nw04/helpdata/en/0d/d517412797f523e10000000a155106/frameset.htm
CJS-20030 Checking if the secure store exists fails,
SHA-1 MessageDigest not available during WebAS Java install
/thread/12191 [original link is broken]
/thread/11521 [original link is broken]
verify url secKey
Regards
Chilla -
PI SFTP RECEIVER ADAPTER MODULE CONFIGURATION
Hi,
I am new in SFTP adapter. I want to transfer file from proxy to SFTP. I want to output file is in csv format. But now it is in xml format.
Please help me!!!
My module configuration is in attachment..Hi
I have got the problem. You have to modify your target structure in the below format
<row>
<column-name1>ABC</column-name1>
<column-name2>12345</column-name2>
<column-name3>Text1</column-name3>
</row>
Create any parent node and inside that create the sub-eliment STATUS and USERID
something like
MT_Succefactor
<record>
<STATUS>
<USERID>
</record
Then you will get the desired output. Use the below content conversion paramters -
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 -
The message that reaches the file receiver channel is
<EDI_DC40>
structure1
</EDI_DC40>
<EK1NA1M>
structure 2
</EK1NA1M>
So i wanna write a module configuration which will rename the first tag as <ek1na1m>. Plz helpHi Sumaya,
you are creating the adapter module using the document i told or not...
if you are using that document, then see in the process method you will write all your code......you will take the message as a string........then you can manipulate your string as you want - means you can rename your node..........then you can set this string as your XMLpayload.....
Thanks,
Rajeev Gupta -
Adapter module Transform.Class error
Hello,
I have a sender jdbc adapter which is calling the xslt transform class with no errors but its obvious that the xsl is not being invoked as my xml is not transformed, but I don't see any error in the audit log. When I purposely use a non existent file path/file name in XSLTConversion.XSLTFileName I expect to get an error in the message monitor audit log but I do not. Neither default.trace or xi.*.log provide any errors regarding the xslt transformation in the adapter module. The audit log actually indicates: "Transform: successfully transformed" Below is my adapter module configuration. Can anyone point me to a log file that might contain adapter module errors or notice any problem with this module config?
localejbs/AF_Modules/MessageTransformBean, Local, XSLT
CallSapAdapter, Local, call_AF_MS
XSLT, Transform.class, com.sap.aii.messaging.adapter.XSLTConversion
XSLT, XSLTConversion.XSLTFileName, /usr/sap/XIS/DVEBMGS00/j2ee/cluster/server0/tmgxsls/GL_split.xsl
Thanks in advance,
DaveHi
Check for correct spelling:
localejbs/AF_modules/MessageTransformBean
Check the parameters for trailing spaces:
'com.sap.aii.messaging.adapter.XSLTConversion_'
Check the path:
Windows: C:\...
Unix: /usr/...
and
Check the adit log of the message monitoring in the RWB for entries according to the module....
Trc or trace files on visual administrator is the closest answer from my part.
please refer,
/people/michal.krawczyk2/blog/2005/09/07/xi-why-dont-start-searching-for-all-errors-from-one-place
regards,
vasanth -
Dynamic configuration required in sender file - Adapter Module
Hi Everybody,
I am developing an Adapter Module in the file adapter (sender) using Adapter Specific Message Attributes.
I am using Dynamic configuration inside the Module Process method in the adapter module.
We are getting an error saying Dynamic Configuration cannot be resolved.
Can anybody tell me the package to be used.
Thanks,
ZabiullaYou can access the dynamic configuration in adapter module like this:
Message msg = (Message) inputModuleData.getPrincipalData();
String fileName = msg.getMessageProperty("http://sap.com/xi/XI/System/File", "FileName");
You do not need any addition library besides the adapter module API.
Hope that helps
Stefan -
Dynamic Configuration or Adapter module ?
Hi Experts
I need advice in the following scenarios where the interface is from a legacy file in the Source to an IDOC posting on the Target
a) The logic for the mapping is that if the File name is A then pass 123 and if the file name is B pass 456
for eg if it is IT_ABYYYYMMDD.350 then i have to pass 123 adn if it is IT_ABYYYYMMDD.350 then i have to pass 456
How is it possible to use the file name PI picks from the folder and use it in the mapping
It has to be done in the File Adapter ? do i have to write an Adapter module for it ??
how do i pass the file name in the mapping in IR ???
b) i need to derive data from the file name
for eg if the filename is IT_ABYYYYMMDD.345 and i have to derive the AB part from it and use it in the message mapping
since it is to be maped to a target field int he idoc .. how can I do that ?
Does it require a lot of coding ?
I have read about Dynamic Configuration but where and how to use it ??
can any one please help me with the steps to use or the code for deriving the value AB from the File name IT_ABYYYYMMDD.345 ??
thanks
Rohan>
RohanS wrote:
> Yes I am on track .. just two small questions ..in michal's blog
> the UDF code says
>
> DynamicConfigurationKey key = DynamicConfigurationKey.create("http://sap.com/xi/XI/System/File","FileName");
>
> so does the first argument in the braces = the file path ? as in the server path and location ?
>
> and secondly
> does this UDF require no input parameters cos in my mapping there is no source for this ... just that i need to derive this name and pass it to the target field so will this udf take any input argument when i am creating it in message mapping n PI 7.1?
>
> or do I just create a UDF without a variable input and write this code and return as per your code and map it to the target ?
>
> thanks
> Rohan
first one is not path i.e file adapter property of SAP PI use as it is and need to pass some input to UDF just some variable which does nothing in the mapping and map the output to your target variable
HTH
Rajesh -
Accessing dynamically configured filename inside adapter module code.
Hi,
I am having a requirement where i have to access the filename configured using Dynamic configuration inside my receiver file adapter MODULE code. I am having PI7.1.
For accessing the DC filename i have inserted this piece of code inside my adapter module code:
MessagePropertyKey MPK =new MessagePropertyKey("FileName","http://sap.com/xi/XI/System/File");
String filename = msg.getMessageProperty(MPK);
But when i am tesing this module i am getting: "Message processing failed. exception encrypting session key".
This module is basically written for encryption.I am referring this blog:
/people/daniel.graversen/blog/2006/10/05/dynamic-configuration-in-adapter-modules
Do i need to do something else for accessing DC filename inside my module??Please help??
Thanks
AmitHi,
My code is something like this:
public ModuleData process(ModuleContext mc,
ModuleData inputModuleData)
throws ModuleException {
Object obj = null;
Message msg = null;
MessageKey amk = null;
String inpKeyLocation = (String) mc.getContextData("inpKeyLocation");
try {
obj = inputModuleData.getPrincipalData();
msg = (Message) obj;
amk = new MessageKey(msg.getMessageId(),msg.getMessageDirection());
XMLPayload xpld = msg.getDocument();
MessagePropertyKey mpk = new MessagePropertyKey("FileName","http://sap.com/xi/XI/System/File");
String filename = msg.getMessageProperty(mpk);
InputStream inps = (InputStream) xpld.getInputStream();
and so on ......
My encryption method somewhere down the line will use "filename" as one of its input.
Please help??
Thanks
Amit
Edited by: AmitSri on May 25, 2010 1:43 PM -
Debugging JMS adapter with Module Configuration
Hi.
I have a problem debugging my JMS adapter with module configuration.
All I get from the Message Monitor is a status "System Error", and no error category or error message.
I know there's an error in my Module configuration design, since it works fine without.
My configuration looks like this:
PROCESSING SEQUENCE:
1 localejbs/AF_Modules/MessageTransformBean Local Enterprise Bean XML2Plain
2 localejbs/SAP XI JMS Adapter/ConvertMessageToBinary Local Enterprise Bean convert_XI2Bin
3 localejbs/SAP XI JMS Adapter/SendBinarytoXIJMSService Local Enterprise Bean exit
MODULE CONFIGURATION:
XML2Plain Transform.Class com.sap.aii.messaging.adapter.Conversion
XML2Plain Transform.ContentType text/plain;charset=utf-8
XML2Plain xml.conversionType StructXML2Plain
XML2Plain xml.addHeaderLine 0
XML2Plain xml.recordsetStructure STARTRECORD,DATARECORD,SERVICEYDELSERRECORD,SLUTRECORD
XML2Plain xml.STARTRECORD.fieldFixedLengths 2,8,6,7,10,7,3,3
XML2Plain xml.DATARECORD.fieldFixedLengths 2,8,6,4,35,17,7,7,7,5,5,5,18,18,18,18,18,18,18,18,18,9
XML2Plain xml.SERVICEYDELSERRECORD.fieldFixedLengths 2,8,6,4,3,20,18,18,18
XML2Plain xml.SLUTRECORD.fieldFixedLengths 2,8,6,7,10,7
XML2Plain xml.STARTRECORD.fixedLengthTooShortHandling Cut
XML2Plain xml.DATARECORD.fixedLengthTooShortHandling Cut
XML2Plain xml.SERVICEYDELSERRECORD.fixedLengthTooShortHandling Cut
XML2Plain xml.SLUTRECORD.fixedLengthTooShortHandling Cut
The structure of the message looks like this:
<STARTRECORD> (occurence = 1)
<DATARECORD> (occurence = 1..unbounded)
--- <SERVICEYDELSERRECORD> (occurence = 0..unbounded)
<SLUTRECORD> (occurence = 1)
I've crosschecked every field, and it length and all looks like it should!
The worst part is the one not getting the reason why it fails. Any way I can get this information?
I've tried to look in the Adapter Framework log, but I have no clue where to look for anything usefull.
Help
Regards PeterHello,
Below is the module configuration in my JMS sender channel:
Check Message Local Enterprise Bean key
ConvertJMSMessageToBinary Local Enterprise Bean convert_JMS2Bin
ConvertBinaryToXMBMessage Local Enterprise Bean convert_Bin2XI
CallSapAdapter Local Enterprise Bean call_AF_MS
CheckMessage is a custom module which does some check on the incoming message.
Now what I want to know is at which position should I include the DynamicConfiguration Bean? Should it be included at position 1 or at position 2 or someother position?
~Thanks. -
AS2 adapter-- Module tab configuration to call seeburger std mappings..!
Hi Experts,
Seeburger has been installed and i want to use AS2 adapter to make use the seeburger standard mappings.
When i opened the module tab, its been found that for
Sender AS2 adapter:
Module Name Module Key
localejbs/Seeburger/solution/as2 solutionid
localejbs/CallSapAdapter exit
Module configuration
_Modulekey ParameterName ParameterValue_
Solutionid Mappingname SEE_ORDERS_UN_...
can i use the above steps??
Is solutionid is enough to call the seeburger mapping?
or
do i need to use the Bic module to call the seeburger std mapping like below?
Module Name Module Key
localjbs/CallBicXIRaBean bic
Module configuration
Modulekey ParameterName Parameter Value
Bic Mappingname SEE_ORDERS_UN_...
Kindly let me know.
Regards
Krupa.HI,
For module configuration for As2 refer the below help.
Sender configuration:
AS2 identifier is the party identified which will be provided by the WAN network provider.
Under the party identifiere tab
Agency will be seeburger
Scheme=AS2ID
Name = WAN network no of the partner who is sending the file
Few changes in the module parameter tab.
localejbs/CallBicXIRaBean bic
CallSapAdapter 0
Module configuration:
bic= destSourceMsg = MainDocument
bic= destTargetMsg = MainDocument
bic= mappingName= See_E2X_EDIFACT_ORDERS_UN_D93A
Receiver AS2 adapter configuration:
When the adapter is used in a receiver channel, it obtains a message from the Integration Engine and sends it to a business partner. In this case, the following steps are required:
1. Define the channel as a Receiver channel on the Parameters tab
2. The last step ensures the module sequence is complete:
Make sure the module ModuleProcessorExitBean does exist in the module sequence:
Module Name=localejbs/ModuleProcessorExitBean
Type=L
Module Key=Exit
with the following module parameter:
Module Key=Exit
Parameter Name=JNDIName
Parameter Value=deployedAdapters/SeeXIAS2/shareable/SeeXIAS2
Refer the below thread which has the same discussion.
Re: Pls.. Help Needed.. Seeburger Mapping Names..!!
Thanks and Regrds,
Chirag -
Hi
For a file adapter I had enabled the option <b>Archieve File</b> in my communication channel. So the system will put the file in the archieve folder after it is read. My requirement is to check if the file already exits in the archieve folder or not. Any means of checking it? or shud i make use of adapter modules? If yes kindly point some helpful tips on the same.
Kindly fwd any useful doc to [email protected]
regds
prabhuPrabhu,
The os command in the file adapter should exists in the XI server only.
Whatever command you provide in the Adapter will result in the SID+"ADM" user id exectuing this command at the oS level of your XI server.
So this script should exist on the XI server.
Now, if the archive directory is on the FTP server you will have to connect to the FTP server from the script and check if the file exists and then do the needful.
Check this blog out for executing Scripts on file adapters,
/people/sameer.shadab/blog/2005/09/21/executing-unix-shell-script-using-operating-system-command-in-xi
Regards
Bhavesh -
Need Help in Creating adapter module for SFTP Sender in NWDS
Hi experts,
I have a scenario where i should write an adapter module for SFTP sender in NWDS.. need your help in achieving this..Hello,
>>i have followed the procedure of FTP but, adapter is not picking the file
Make sure u have written proper expression to pick file.
>>do we have any different adapter parameters for SFTP... the input file is .csv..
I don't think there are any specific parameters needed for SFTP (but in case u are reading file name in AM then u might have to adjust SFTP namespace)
Thanks
Amit Srivastava -
Dynamic configuration in adapter module
Hi friends
I need some information on how to carry out dynamic configuration in adapter module.
To be precise I want to assign file name dynamically to message header in adapter module, not in runtime mapping.
Regards
AkhilHI Akhil,
file adapter dynamic file name
Problem in dynamic file name in File reciever adapater
Dynamic File Name for Receiver File Adapter
/people/michal.krawczyk2/blog/2005/11/10/xi-the-same-filename-from-a-sender-to-a-receiver-file-adapter--sp14
Thax
Chirag -
Help required in File Adapter Module Development
Hi All,
I am working out a File to File scenario where my source file is in some different format. Please find the below sample:
<Root>
<ID>100</ID>
<NAME>SAP</NAME>
<END-Root>
Before taking this into IS, I need to change the file to a proper XML format. I need to replace "END-" with "/".
<?xml version="1.0" encoding="UTF-8" >
<Root>
<ID>100</ID>
<NAME>SAP</NAME>
</Root>
I think I can achive this by developing Adapter Modules. I am new to Adapter Module development.
Can you please tell me if there are any inbuilt Adapter Modules for this. If not please suggest me some relevant blogs to solve this issue. Thanks in Advance.Hi Phani Kumar
There are more than one ways to do this. As per your timelines and skill set you can decide
1. You can use the XMLAnonymizerBean this is an inbuilt module
Check Stefen's blog
Remove namespace prefix or change XML encoding with the XMLAnonymizerBean
2. You can read this complete file in a single field and then you can create XSLT or Java mapping to parse it in a target XML you desire.
Check these
https://www.sdn.sap.com/irj/sdn/weblogs?blog=/pub/wlg/3823 [original link is broken] [original link is broken] [original link is broken](XSLT mapping)
Java Mapping (Part I) (Java Mapping)
The specified item was not found. (Java Mapping helper DOM)
The specified item was not found. (XML Node into string)
3. You can develop Adapter modules for this
Refer
Check Guides
XI 3.0
https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/3bdc14e1-0901-0010-b5a9-a01e29d75a6a
PI 7.0
https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/f013e82c-e56e-2910-c3ae-c602a67b918e
PI 7.1
https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/00838345-708c-2a10-1199-9514c0b0a91c
Maybe you are looking for
-
V.26 Report is not working in Spanish
Hi Guys, When I logged into Spanish and I tried to Run report V.26 I am not getting any value but when I ran the V.26 report in English I get the many values. In Same client I tried. Can anybody tells the reson behind the issue?
-
OSX 10.9.2 iPhoto 9.5.1 I want the Title to contain an identifier like DSCN0277 concatinated with a short description. If I use batch change with Filename I get DSCN0277_12617208544_o, which looks bad. What I want is more like "DSCN0277 Green Frog",
-
Hello, I have a problem on a 10.2.0.4 enterprise edition database. The database crashes several times a day with the error ORA-600 [17280]. Form the metalink I learned that this is due to a bug which is fixed in 11.1 version. Here is the error from t
-
IChat Auto Accept Chats?
Can i get iChat to auto accept calls from only me, which ever remote username i am using? i see it auto accepts but only me. i am the only one i nthe buddy list so is that a way? is it safe that if i dont allow anyone else to join my buddy list then
-
Flash disables mouse during ads
Hello A lot of content on youtube and other sites uses Flash to play streaming content. During the playback there are ads that spawn here and there, and it seems you have to sit during those ads, you cannot skip them, but in addition the player (adob