NWDS 7.1 for adapter module of PI 7.1
hi experts,
i have been trying to develop an adapter module for PI 7.1 using this how to guide
https://www.sdn.sap.com/irj/scn/index?rid=/library/uuid/c0b39e65-981e-2b10-1c9c-fc3f8e6747fa&overridelayout=true
I have downloaded the NWDS, but in the EJB project wizard..on page 11 in the guide above
Target Runtime : SAP librarues
Configuration : SAP EJB J2EE 1.4 project
I m not getting the above, it just sez default J2EE runtim elibraries...
also after completion of wizard im unable to get enterprise bean in the file context menu
am i missing soomething..?pls help me out
Hi Guys,
I was goin thru this pdf to convert adapter module for 7.0 t 7.1
I have added all the jars..how evre in the wizard as mentioned on page 8 of http://www.sdn.sap.com/irj/scn/index?rid=/library/uuid/d0667f56-96c7-2b10-0e9a-c40fbd523f4d&overridelayout=true
Add server libraries.. choose server runtime choose SAP libraries..
what r thee SAP libraries..do i have import soem mor ejars?
can anyone pls let me know
Similar Messages
-
Reg::Error in XMLDecryption algorithm for adapter module in SAP PI
Hi Experts,
I have developed a custom java code for encryption and decryption for XML to be included in adapter module in SAP PI using SAP netweaver.My decryption code is working fine for stand alone java application.But when I create EJB project and deploy it I get no error..But in communication monitoring of SAP PI i get the below error
Error: org.apache.xml.security.encryption.XMLEncryptionException: No Key Encryption Key loaded and cannot determine using key resolvers
I included xmlsec1.3.0.jar file as external library..
I would be grateful if you could suggest any solution for the above issue.
Thanks
PriyaHi Priya,
I am working on the same senario if Uhave idea plz help me on it.
Regards,
Prasad. -
How to get parameter for Adapter Module ?
Hi XI Expert,
I have write some simple adapter module in my sender file adapter. in order to make it more flexible i need to read some parameter that already set in communication channel module parameters.
please advise how to get those parameter value from my ejb module.
Thank You and Best Regards
Fernandhi,
follow this example SAP contribution for parameter in Adapter Module
https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/3bdc14e1-0901-0010-b5a9-a01e29d75a6a
Regards
Ramesh P -
Dynamic conifguration for adapter module
com.sap.aii.mapping.api.DynamicConfigurationKey
Class used to create a key object for an adapter-specific attribute. The key object comprises the adapter namespace and the property name.
● com.sap.aii.mapping.api.DynamicConfiguration
Class used to read, change, or delete the value of an adapter-specific attribute. In a method, you use objects of type DynamicConfigurationKey to access the attributesFor Module Processors, check Adapter-Specific Message Attributes of the following link:
http://help.sap.com/saphelp_nw2004s/helpdata/en/17/50d440e14f8431e10000000a1550b0/frameset.htm
The methods to set/get Attributes in Adapter Module are:
Message.setMessageProperty()
Message.getMessageProperty()
The following info can be obtained in javadoc:
getMessageProperty
public java.lang.String getMessageProperty(java.lang.String namespace,
java.lang.String name)
Returns the value of an additional message property, in case that such an value exists.
Parameters:
namespace - The namespace of the property to get.
name - The name of the property to get.
Returns:
The value for the given namespace/name combination, or null, when no such value exists.
setMessageProperty
public void setMessageProperty(java.lang.String namespace,
java.lang.String name,
java.lang.String value)
throws InvalidParamException
Sets an additional message field, if supported by the Message profile implementation. Such additional fields will not be visible as an own table column in the MS message monitoring, since it is to be stored as part of the message header. This mechanism allows different protocol implementations to support more message fiels, as per default available in the MS Message interface. Such fields can be accessed through this API method, without casting to the specific Message implementation.
Parameters:
namespace - The namespace of the property to set.
name - The name of the property to set.
value - The value of the property to set. When null is given as the value param, an already set value will be deleted.
Throws:
InvalidParamException - If either the length of one of the parameters is too long, or in case of an unknown/not allowed namespace/name combination (but only if the Message implementation has the necessary knowledge about the valid namespace/name pairs).
Also, for an example, check the following blog:
/people/daniel.graversen/blog/2006/10/05/dynamic-configuration-in-adapter-modules
Regards,
Henrique. -
JAR File for Channel-Class for Adapter-Modules
Hello,
does anybody know which JAR and Package i need for the Channel-Class.
It's not:
com.sap.aii.mapping.lookup.Channel
I need this one with the method "getValueAsString" in order to write an Adapter-Module.
GunnarHi,
Check out this link for the documentation of com.sap.aii.mapping.lookup.
You will get all the functions of this. and import com.sap.aii.mapping.lookup and use the function of this package.
Link : http://help.sap.com/javadocs/NW04S/SPS09/pi/com/sap/aii/mapping/lookup/class-use/Channel.html
hope this will help you.
Regards
Aashish Sinha
PS : reward points if helpful -
I need Java API documentation for Adapter Modules
Hi
Please provide me Java API documentation for Adatper Modules
Regards
SowmyaUse this
https://help.sap.com/javadocs/pi/SP3/xpi/index.html
http://help.sap.com/saphelp_nw04/helpdata/en/87/3ef4403ae3db12e10000000a155106/frameset.htm
which is part of
http://help.sap.com/saphelp_nw04/helpdata/en/8b/895e407aa4c44ce10000000a1550b0/frameset.htm
Regards,
Prateek -
Testing Adapter Module in NWDS
hi,
I have got a code for adapter module,I wanted to test it standalone using NWDS.
class XML2EdifactBean
public ModuleData process(ModuleContext moduleContext, ModuleData inputModuleData)
throws ModuleException { //Some Code... }
I am getting some error while executing the adapter module ,so I want to call the function using main method.Can you provide me with a sample code for this.
regards,
Ujjwal Kumar.This would be too complex to do all necessary steps for a stand alone test.
I recommend to split the generic adapter module stuff and the part, you really want to do something.
For the adapter modul, which we used on Teched session:
GetHostName.java code for 3.0/7.0
I did following: I introduced a helper class and passed the DOM code
public class HelperClass {
String hostElementName = "host";
String hostName = "host";
public static void main(String[] args) {
try {
InputStream in = new FileInputStream(new File("in.xml"));
OutputStream out = new FileOutputStream(new File("out.xml"));
new HelperClass().execute(in, out);
} catch (Exception e) {
e.printStackTrace();
public void setHostElementName(String hostElementName){
this.hostElementName = hostElementName;
public void setHostName(String hostName){
this.hostName = hostName;
public void execute(InputStream in, OutputStream out){
try {
DocumentBuilderFactory factory;
factory = DocumentBuilderFactory.newInstance();
DocumentBuilder builder = factory.newDocumentBuilder();
Document document = builder.parse(in);
Element rootNode = document.getDocumentElement();
if(rootNode != null) {
Element childElement =
document.createElement(hostElementName);
childElement.appendChild(document.createTextNode(hostName));
rootNode.appendChild(childElement);
// Transforming the DOM object to Stream object.
TransformerFactory tfactory = TransformerFactory.newInstance();
Transformer transformer = tfactory.newTransformer();
Source src = new DOMSource(document);
Result dest = new StreamResult(out);
transformer.transform(src,dest);
} catch(Exception e){}
in the bean class, I used the helper class:
XMLPayload xmlpayload = msg.getDocument();
InputStream in = xmlpayload.getInputStream();
ByteArrayOutputStream out = new ByteArrayOutputStream();
HelperClass hc = new HelperClass();
hc.setHostElementName(hostElementName);
hc.setHostName(hostName);
hc.execute(in,out);
byte[] docContent = out.toByteArray();
if(docContent != null) {
xmlpayload.setContent(docContent);
inputModuleData.setPrincipalData(msg);
Now I can test the parser in the NWDI
Regards
Stefan -
How to debug adapter module in PI 7.1
Hello all,
I am trying to figure out how to debug adapter module in PI 7.1.
I guess runtime debugging ( switch AS java in debug mode and attach NWDS to the AS Java to debug as module is being executed) is not possible with adapter module. Please let me know if this is indeed possible and how to enable it.
The only option is to send debug information to log file. So in the module code like:
audit.addAuditLogEntry(key, status, message);
location.debugT(SIGNATURE, message);
I've read that for PI 7.0, you need to add log-configuration.xml to meta-inf. Is this still required for PI 7.1?
My next question is how to read the log in audit log and in location. I've read that the audit log can be read in .../MessagingSystem/monitor/monitor.jsp, under which section of the page I can read the audit log? I can't see any of my log there.
For log in location, I guess I need to go to NWA, can you please share the path (navigation) in NWA to see the location?
Thanks
Jayson> I guess runtime debugging ( switch AS java in debug mode and attach NWDS to the AS Java to debug as module is being executed) is not possible with adapter module. Please let me know if this is indeed possible and how to enable it.
It is possible for adapter modules as well. I know this from our developers
It should work like this:
/people/christian.drumm/blog/2008/09/30/debugging-java-mappings-using-sap-netweaver-developer-studio
> The only option is to send debug information to log file. So in the module code like:
> audit.addAuditLogEntry(key, status, message);
> location.debugT(SIGNATURE, message);
> My next question is how to read the log in audit log and in location. I've read that the audit log can be read in .../MessagingSystem/monitor/monitor.jsp, under which section of the page I can read the audit log?
In the RWB under Message Monitoring for Adapter, or try the shortcut
http://server:port/mdt -
Adapter Module to convert text message to XML
Hello Experts,
I am writing a custom adapter module to convert the text content to XML message at the sender adapter end.
I have followed the steps mentioned in the "HowToCreateModulesforJ2EEAdapterEngine" guide available on SDN.
I have created the java logic in the process mesthod of the bean to conver the text message to XML paylod (don't know if it is correct). I do not have much idea about the Adpater API methods.
Can anybody help me with the logic to convert the text msg to xml paylod using adapter frame work APIs or is there any way I can debug and test my logic in NWDS.
Any help will be greatly appreciated.
- RajanHi ,
To convert Text message to XML why yiu want to go for Adapter Module?? Using file content conversion it self you can do it right?????
There is no standard logic to convert text file to XML, the logic purely depends on your text message format.
Regards,
Raj -
Adapter Module Migration in PI 7.1
Hi,
I have migrated some code for Adapter Module from PI 7.0 to PI 7.1. I have deployed the SDA file on the server and it was successful. But in the communication channel monitoring i am getting below exception.
Message processing failed. Cause: javax.ejb.TransactionRolledbackLocalException: Exception raised from invocation of public com.sap.aii.af.lib.mp.module.ModuleData com.Demo.JMSadapterModuleBean.process(com.sap.aii.af.lib.mp.module.ModuleContext,com.sap.aii.af.lib.mp.module.ModuleData) throws com.sap.aii.af.lib.mp.module.ModuleException method on bean instance com.Demo.JMSadapterModuleBean@63120b10 for bean sap.com/DemoJMSEARxml|DemoJMSEJB.jarxml|JMSadapterModuleBean; nested exception is: java.lang.NullPointerException; nested exception is: javax.ejb.EJBException: Exception raised from invocation of public com.sap.aii.af.lib.mp.module.ModuleData com.Demo.JMSadapterModuleBean.process(com.sap.aii.af.lib.mp.module.ModuleContext,com.sap.aii.af.lib.mp.module.ModuleData) throws com.sap.aii.af.lib.mp.module.ModuleException method on bean instance com.Demo.JMSadapterModuleBean@63120b10 for bean sap.com/DemoJMSEARxml|DemoJMSEJB.jarxml|JMSadapterModuleBean; nested exception is: java.lang.NullPointerException; nested exception is: javax.ejb.EJBTransactionRolledbackException: Exception raised from invocation of public com.sap.aii.af.lib.mp.module.ModuleData com.Demo.JMSadapterModuleBean.process(com.sap.aii.af.lib.mp.module.ModuleContext,com.sap.aii.af.lib.mp.module.ModuleData) throws com.sap.aii.af.lib.mp.module.ModuleException method on bean instance com.Demo.JMSadapterModuleBean@63120b10 for bean sap.com/DemoJMSEARxml|DemoJMSEJB.jarxml|JMSadapterModuleBean; nested exception is: java.lang.NullPointerException; nested exception is: javax.ejb.EJBException: Exception raised from invocation of public com.sap.aii.af.lib.mp.module.ModuleData com.Demo.JMSadapterModuleBean.process(com.sap.aii.af.lib.mp.module.ModuleContext,com.sap.aii.af.lib.mp.module.ModuleData) throws com.sap.aii.af.lib.mp.module.ModuleException method on bean instance com.Demo.JMSadapterModuleBean@63120b10 for bean sap.com/DemoJMSEARxml|DemoJMSEJB.jarxml|JMSadapterModuleBean; nested exception is: java.lang.NullPointerException
could you please advise me what could be the problem?
Please help me out here.
Best Regards,
Prasad Babu.Hi Prasad,
please refer to the last paragraph of the CSS note -
[#1004000 PI 7.1 Adapter/Module Development: API Changes since SP0|http://service.sap.com/sap/support/notes/1004000]
i.e.,
"MIGRATION NOTES
API: NetWeaver04 XI 3.0/7.0 any SP; Documentation: XI 3.0/7.0 any SP
XI 3.0/7.0 adapter and module implementations cannot be deployed in XI
7.1. The source code must be adjusted first. Please use the API cross
reference attached here. Further information can be found in the SAP
NetWeaver PI 7.1 manual."
Regards
Kenny -
Issue in calling Adapter Module
Hi experts,
We have a File -
> IDoc scenario where the file has got fixed length data. The data is in the following format:
Header xdfsdfefefeswefr
Detail dfdkfereorierwer
Detail fdfkjwoeiefiwere
Detail
Trailer erererewoirwoiwe
We do not have any identifier to identify the header, detail and trailer record.
We have gone for custom java adapter module which inserts H, D, T as the first character of each line in the file to identify the Header, Detail and Trailer nodes.
We added a entry for calling the adapter module under the module tab in file sender communciation channel. The EAR for adapter module has been deployed successfully.
But we are unable to call the adapter module at runtime.
The channle log has no indication wrt to the module being called.
We are on SAP XI 3.0 SP17
If any one has faced a similar issue. Please respond and your help would be highly appreciated.
regards,
YounusHi,
Check this document.Nice document on adding an adpater module at runtime.
https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/00838345-708c-2a10-1199-9514c0b0a91c
this forum replies too..
Reg Integration Scenario
Thanks,
Vijaya. -
Adapter modules in sync scenarios
Hi all,
here we have some strange requirements to the format of a WebService Outbound Call:
So I have a Sender SOAP Channel and developed an adapter module for it, because of a kind of self defined envelope around the data. This module cuts of the envelop and forwards the content (subset of the whole message) to a BPM.
Since this is a synchronouse call I have to add the envelop also to the response message comming from the BPM.
The question is, how to configure the channel in that way that an additional module is called for the response?
I want to avoid a Java Mapping for performance reasons and also reusability of the module.
Thanks
Regards
OlliHi Oliver,
I am trying to deploy the EJB which has been developed for adapter module development. The EJB is in the form .Jar file and i am getting the following error
) Error loading archive
C:\Documents and Settings\x10adm\Desktop\EJBXiPayAuthReq.jar
(server side name is: D:/usr/sap/X10/DVEBMGS01/SDM/program/temp/EJBXiPayAuthReq.jar)
com.sap.sdm.util.sduread.IllFormattedSduFileException: There is no deployment descriptor found in the SDA manifest
any help would be really appreciated
Thanks,
Srini -
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 -
Developing adapter modules for PI 7.0 using NWDS 7.3
Hello all,
Did someone have already developed adapter modules for PI 7.0 using NWDS 7.3? I can´t find the EJB libraries for Java 1.4.
I'm able to develop mapping programs, but I'm not sure if it is possible to create EJB projects.
Thanks,
MarcosHi Marcos,
I haven't tried developing adapter modules in NWDS 7.3 for PI 7.0 myself, but according to the documentation from SAP it is possible to develop J2EE 1.4 compliant applications i.e. EJB 2.1 components, which is used by SAP PI 7.0.
[http://help.sap.com/saphelp_nw73/helpdata/en/48/fc1e73a0ad2637e10000000a42189d/frameset.htm]
Because of this backwards-compatibility I would expect that the EJB libraries for J2EE 1.4 should be available directly in NWDS 7.3 somewhere.
Best regards,
Jacob -
Deploy Adapter-Module PI 7.1 with NWDS 7.1 to server?
Hey,
i am developed a adapter-module for PI 7.0 now i am upgrading the module to PI 7.1.
I got the NWDS, all libs and build all Projects like it was described in a SAP Help skript.
I created a new Project,
added the EJB module,
adjusted the decriptor file application-j2ee-engine.xml
BUT where is the tag to deploy the Module to the Server?
In NWDS 7.0 where a tag like "deploy to J2EE engine" where is it in the NWDS 7.1.??
Please help how to deploy my module to the server an where i can make the settings like the host and the port for the server?
Thank you allHi,
Check these if you haven't checked already:
Check the section 4.11 of this article
http://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/c0b39e65-981e-2b10-1c9c-fc3f8e6747fa?overridelayout=true
Re: Deploy Custom Adapter Module in PI 7.1
Customer Module Deployment in PI 7.1
Regards,
Ravi
Edited by: Ravi Kanth Talagana on Jul 23, 2009 4:12 PM
Maybe you are looking for
-
End of Page event not triggering in ALV report
Hello, I am developing an ALV report using REUSE_ALV_LIST_DISPLAY. Whatever I write in top_of_page, it will be displayed in the header portion of the output. But I want to display some footer text at the end of the page. The problem I am facing is, t
-
Due to the security concerns from Heartbleed and Steve Gibson's excellent coverage on certification revocation, I have set "When an OCSP server connection fails, treat the certificate as invalid" on my desktop Firefox and now want to do the same on F
-
Why & FIX after acrobat XI in creative Cloud update
After upgrading to 11.0.03 for Acrobat XI, the PDF to Word (also rtf, text) conversion doesn't work right. The new doc is all garbled, gibberish. Anybody else have this problem? And what's the fix. I am an Adobe Partner and my client is having pr
-
Can the maximum number of Logical Processors allowed in a Processor Group be increased by Bcdedit command or registry key to a number greater than the default (64) to allow non-group-aware applications to seamlessly scale via multithreading across mo
-
I have a new iPod Touch 4th generation running iSO4.2 and I tried it playing over airtunes via my Airport Express the other day, great! But this morning my G5 and MacBook couldn't see the Airport Express in its usual place but my iPod Touch could fin