Deployment error in adapter module

HI ,
The deployment of the adapter module was successful but with exception.below is the log.
Any help with this is appreciated
--- Deploying file(s):
C:\Users\am90001042\workspace\File_EAR\File_EAR.ear
--- Status:
Deploy finished with warnings.
--- Description:
    S U M M A R Y
~~~~~~~~~~~~~~~~~~~
Successfully deployed:       0
Deployed with warnings:       1
Failed deployments:        0
~~~~~~~~~~~~~~~~~~~
Description:
  1. Warning occurred on server 59866950 during update sap.com/File_EAR : References Test: There are no matching deploy time references (described in META-INF/SAP_MANIFEST.MF) for the following runtime references [sap.com/engine.security.facade, sap.com/engine.j2ee14.facade, sap.com/com.sap.aii.af.svc.facade, sap.com/com.sap.aii.af.ifc.facade, com.sap/com.sap.aii.af.lib.facade, sap.com/com.sap.base.technology.facade] (described in the META-INF/application-j2ee-engine.xml)., file: File_EAR.ear, column 0, line 0, severity: warning
  2. Exception has been returned while the [sap.com/File_EAR] was starting. Warning/Exception :[
][[ERROR CODE DPL.DS.6193] Error while ; nested exception is:
com.sap.engine.services.deploy.exceptions.ServerDeploymentException: [ERROR CODE DPL.DS.5030] Clusterwide exception: [server ID 59866950:[ERROR CODE DPL.DS.5029] Exception in operation [startApp] with application [sap.com/File_EAR].
   -> [ERROR CODE DPL.DS.5035] Application [sap.com/File_EAR] cannot be started. Reason: it has hard reference to resource [com.sap~com.sap.aii.af.lib.facade] with type [library], which is not active on the server.
Hint: 1) Is referred resource deployed? 2) Is referred resource able to start?
server ID 59866950:com.sap.engine.services.deploy.exceptions.ServerDeploymentException: [ERROR CODE DPL.DS.5035] Application [sap.com/File_EAR] cannot be started. Reason: it has hard reference to resource [com.sap~com.sap.aii.af.lib.facade] with type [library], which is not active on the server.
Hint: 1) Is referred resource deployed? 2) Is referred resource able to start?
at com.sap.engine.services.deploy.server.ReferenceResolver.processReferenceToLibrary(ReferenceResolver.java:752)
at com.sap.engine.services.deploy.server.ReferenceResolver.processMakeReference(ReferenceResolver.java:568)
at com.sap.engine.services.deploy.server.ReferenceResolver.beforeStartingApplication(ReferenceResolver.java:488)
at com.sap.engine.services.deploy.server.application.StartTransaction.beginCommon(StartTransaction.java:192)
at com.sap.engine.services.deploy.server.application.StartTransaction.begin(StartTransaction.java:157)
at com.sap.engine.services.deploy.server.application.ApplicationTransaction.makeAllPhasesOnOneServer(ApplicationTransaction.java:493)
at com.sap.engine.services.deploy.server.application.ApplicationTransaction.makeAllPhases(ApplicationTransaction.java:544)
at com.sap.engine.services.deploy.server.application.ParallelAdapter.super_MakeAllPhases(ParallelAdapter.java:302)
at com.sap.engine.services.deploy.server.application.StartTransaction.makeAllPhasesImpl(StartTransaction.java:579)
at com.sap.engine.services.deploy.server.application.ParallelAdapter.runInTheSameThread(ParallelAdapter.java:213)
at com.sap.engine.services.deploy.server.application.ParallelAdapter.makeAllPhasesAndWait(ParallelAdapter.java:374)
at com.sap.engine.services.deploy.server.DeployServiceImpl.startApplicationAndWait(DeployServiceImpl.java:3455)
at com.sap.engine.services.deploy.server.DeployServiceImpl.startApplicationAndWait(DeployServiceImpl.java:3441)
at com.sap.engine.services.deploy.server.DeployServiceImpl.startApplicationAndWait(DeployServiceImpl.java:3331)
at com.sap.engine.services.deploy.server.DeployServiceImpl.startApplicationAndWait(DeployServiceImpl.java:3303)
at com.sap.engine.services.dc.lcm.impl.J2EELCMProcessor.doStart(J2EELCMProcessor.java:105)
at com.sap.engine.services.dc.lcm.impl.LifeCycleManagerImpl.start(LifeCycleManagerImpl.java:78)
at com.sap.engine.services.dc.cm.deploy.impl.LifeCycleManagerStartVisitor.visit(LifeCycleManagerStartVisitor.java:34)
at com.sap.engine.services.dc.cm.deploy.impl.DeploymentItemImpl.accept(DeploymentItemImpl.java:83)
at com.sap.engine.services.dc.cm.deploy.impl.DefaultDeployPostProcessor.postProcessLCMDeplItem(DefaultDeployPostProcessor.java:91)
at com.sap.engine.services.dc.cm.deploy.impl.DefaultDeployPostProcessor.postProcess(DefaultDeployPostProcessor.java:61)
at com.sap.engine.services.dc.cm.deploy.impl.DeployerImpl.doPostProcessing(DeployerImpl.java:866)
at com.sap.engine.services.dc.cm.deploy.impl.DeployerImpl.performDeploy(DeployerImpl.java:814)
at com.sap.engine.services.dc.cm.deploy.impl.DeployerImpl.doDeploy(DeployerImpl.java:644)
at com.sap.engine.services.dc.cm.deploy.impl.DeployerImpl.deploy(DeployerImpl.java:363)
at com.sap.engine.services.dc.cm.deploy.impl.DeployerImpl.deploy(DeployerImpl.java:252)
at com.sap.engine.services.dc.cm.deploy.impl.DeployerImplp4_Skel.dispatch(DeployerImplp4_Skel.java:897)
at com.sap.engine.services.rmi_p4.DispatchImpl._runInternal(DispatchImpl.java:362)
at com.sap.engine.services.rmi_p4.server.ServerDispatchImpl.run(ServerDispatchImpl.java:69)
at com.sap.engine.services.rmi_p4.P4Message.process(P4Message.java:67)
at com.sap.engine.services.rmi_p4.P4Message.execute(P4Message.java:41)
at com.sap.engine.services.cross.fca.FCAConnectorImpl.executeRequest(FCAConnectorImpl.java:977)
at com.sap.engine.services.rmi_p4.P4Message.process(P4Message.java:57)
at com.sap.engine.services.cross.fca.MessageReader.run(MessageReader.java:55)
at com.sap.engine.core.thread.execution.Executable.run(Executable.java:122)
at com.sap.engine.core.thread.execution.Executable.run(Executable.java:101)
at com.sap.engine.core.thread.execution.CentralExecutor$SingleThread.run(CentralExecutor.java:327)
Result
Status:Warning
Thanks
Nikhil

Hello,
Cross check the references which u have added under application-j2ee-engine.xml and ejb-jar.xml.
There used to be wiki on SDN, which provides troubleshooting steps for each error code, but i couldn't able to find that...u can also try searching the same.
Old Link:
https://wiki.sdn.sap.com/wiki/display/JSTSG/(JSTSG)(TG)Q1127
Thanks
Amit Srivastava

Similar Messages

  • Error in Adapter modules

    Hello Gurus,
    We are facing issue in Adapter modules installed in J2EE engine. We deployed two different Adapter modules in J2EE engine and two different interfaces are using them. But if any one of the interfaces run, the other interface is giving following error:
    "Error: BaseTransactionRolledbackLocalException: Exception thrown in method process. The transaction is marked for rollback.".
    If we restart the J2EE engine, it will start to work but the another interface is giving the smae error.
    Please help me.
    Regards,
    Indira D

    I facing the same error few days before.
    My module was working well for the first time but running again used to give problem.
    But on restarting server or redeploying module it again use to work fine.
    The basic problem was...
    there were few variables used in my modules which were initialised as class variables.
    when the process() method gets called for first time it use to execute properly.
    solution:
    Reinitialize variables at the starting phase of process() method.
    Reward points if useful.
    thanks

  • Error in adapter module Upgrade PI7.11

    Hello,
    After upgrade from XI3.0 to PI7.11,I am trying to adapt code of an adapter module in order to use it in new version.
    I have changed the code ,there were no compilation errors and it was deployed successfully.
    But when trying to test the scenario ,I am getting following error:
    <code>ADAPTER.JAVA_EXCEPTION</code>
                   <text>javax.ejb.EJBException: (Failed in component: sap.com/ValidationModule7.11_EAR) Exception raised from invocation of public com.sap.aii.af.lib.mp.module.ModuleData com.sapcons.xi.af.validation.ValidationModuleBean711.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.sapcons.xi.af.validation.ValidationModuleBean711@4dee79d1 for bean sap.com/ValidationModule7.11_EARxml|ValidationModule7.11_EJB.jarxml|ValidationModuleBean711 in application sap.com/ValidationModule7.11_EAR.; nested exception is: java.lang.NullPointerException: while trying to invoke the method com.sap.engine.interfaces.messaging.api.MessageKey.getMessageId() of an object loaded from local variable 'msgKey'
    java.lang.NullPointerException: while trying to invoke the method com.sap.engine.interfaces.messaging.api.MessageKey.getMessageId() of an object loaded from local variable 'msgKey'
    I am nowhere using variable 'msgkey' in my code.
    I was using getMessageId() method and because of this error,I have changed the code such that I am not using this method at all.
    After this change ,I have deployed the module again,and the strange part is I am still getting the same error.
    Just to be sure that I have deployed the changed code,I created an altogether new module ValidationModule7.11_EAR(it was ValidationModule_EAR before) and deployed it,I am sure ,I am not using getMessageId() method at all,but I am getting the same error (as mentioned above).
    I have no idea why I am getting the same error.I can see in the error message that my new module is called which doesn't use this method.
    Can anyone please suggest apart from saving the Bean after code changes and redeploying the code,what needs to be done.
    (Rebuilding the project,etc.)
    It would be great if I can get some inputs on this strange behaviour.
    Thanks a lot.
    Best Regards,
    Shweta

    Hello Stefan,
    Thanks for your reply.
    I have created my new module with a different JNDI name.
    Also,I have verified that there is a link to the interface com.sap.aii.af.ifc.facade in application-j2ee-engine.xml .
    This was the code which I was trying to adapt:
    if((MessageContext)inputModuleData.getPrincipalData() instanceof MessageContext)
                    MessageContext messsageContext = (MessageContext)inputModuleData.getPrincipalData();
                    Message message = messsageContext.getMessage();
                    Attachment rootDocument = message.getRootDocument();
                    Object data = rootDocument.getData();
                    if(data instanceof Binary)
                        Binary bin = (Binary)data;
                        request = bin.getBytes();
                        String messageID = "1232";
                        if(dir == Direction.INBOUND)
                            amk = new AuditMessageKey(messageID, AuditDirection.INBOUND);
                        else
                            amk = new AuditMessageKey(messageID, AuditDirection.OUTBOUND);
    But I was getting errors like MessageContext not recognized and also,for the statement:
    Attachment rootDocument = message.getRootDocument();
    I was getting an error in statement :   if(data instanceof Binary) as following imports weren't recognized.
    import com.sap.aii.messaging.lang.Binary;
    import com.sap.aii.messaging.mo.*;
    So I used import com.sap.aii.af.service.cpa.BinaryData; and following code
    Object obj = null;
                   Message message = null;
                   obj = inputModuleData.getPrincipalData();
                              if(obj instanceof BinaryData)
                         message = (Message)obj;  
                        BinaryData bin = (BinaryData)obj;
                        request = bin.getData();
                         String messageID = "1232";
                          amk = new MessageKey(messageID, message.getMessageDirection());                                      
    Code was compiled correctly and deployed ,but I get this error with getMessageId() when I try to test it.You can see I am not using getMessageId() and msgkey anywhere in the code
    Thanks for your help
    Regards,
    Shweta

  • Error in Adapter Module to unzip files

    Hello ,
    I wish to unzip many files with use of an adapter module
    To du this I use following code
    package de.lsv.moduledevelopement;
    import java.io.*;
    import java.util.Hashtable;
    import java.util.zip.ZipEntry;
    import java.util.zip.ZipInputStream;
    import javax.ejb.SessionBean;
    import javax.ejb.SessionContext;
    import javax.ejb.CreateException;
    import com.sap.aii.af.mp.module.Module;
    import com.sap.aii.af.mp.module.ModuleContext;
    import com.sap.aii.af.mp.module.ModuleData;
    import com.sap.aii.af.mp.module.ModuleException;
    import com.sap.aii.af.ra.ms.api.Message;
    import com.sap.aii.af.ra.ms.api.MessageDirection;
    import com.sap.aii.af.ra.ms.api.Payload;
    import com.sap.aii.af.ra.ms.spi.Trace;
    import com.sap.aii.af.service.auditlog.Audit;
    import com.sap.aii.af.service.auditlog.AuditDirection;
    import com.sap.aii.af.service.auditlog.AuditLogStatus;
    import com.sap.aii.af.service.auditlog.AuditMessageKey;
    * @ejbLocal <{de.lsv.moduledevelopement.UnZipFilesLocal}>
    * @ejbLocalHome <{de.lsv.moduledevelopement.UnZipFilesLocalHome}>
    * @stateless
    public class UnZipFilesBean implements SessionBean, Module {
         static AuditMessageKey amk = null;
         static String auditStr = "UnzipFilesBean - ";
         static ModuleException mEx = null;
         public static final String VERSION_ID =
              "$Id://de.lsv.moduledevelopement.UnZipFilesBean.java#1 $";
         private static final Trace TRACE = new Trace(VERSION_ID);
         public void ejbRemove() {
         public void ejbActivate() {
         public void ejbPassivate() {
         public void setSessionContext(SessionContext context) {
              myContext = context;
         private SessionContext myContext;
          * Create Method.
         public void ejbCreate() throws CreateException {
              // TODO : Implement
         /* (non-Javadoc)
          * @see com.sap.aii.af.mp.module.Module#process(com.sap.aii.af.mp.module.ModuleContext, com.sap.aii.af.mp.module.ModuleData)
         public ModuleData process(
              ModuleContext moduleContext,
              ModuleData inputModuleData)
              throws ModuleException {
              Object obj = null;
              Message msg = null;
              Payload attachment = null;
              //initializing variables for module parameters
              String modkey = "";
              String fileMask = "";
              String directory = "";
              String saveDirectory = "";
              //     String newMimeType = "";
              //     String newAttachmentName = "";
              //     String newAttachmentExtension = "";
              //     String newAttachmentNameReplace = "";
              //this block is to manage the adapter when is not file/FTP
              try {
                   //get the XI Message
                   obj = inputModuleData.getPrincipalData();
                   msg = (Message) obj;
                   // create AuditMessageKey object to write audit log.
                   if (msg.getMessageDirection() == MessageDirection.INBOUND)
                        amk =
                             new AuditMessageKey(
                                  msg.getMessageId(),
                                  AuditDirection.INBOUND);
                   else
                        amk =
                             new AuditMessageKey(
                                  msg.getMessageId(),
                                  AuditDirection.OUTBOUND);
                   // ******start get the module parameters from the configuration******
                   modkey = moduleContext.getContextData("module.key");
                   Audit.addAuditLogEntry(
                        amk,
                        AuditLogStatus.SUCCESS,
                        auditStr + "Module Configuration Key: " + modkey);
                   //***** einlesen der Moduke Parameter******************
                   //***** DateiMaske
                   fileMask = moduleContext.getContextData("FileMask");
                   Audit.addAuditLogEntry(
                        amk,
                        AuditLogStatus.SUCCESS,
                        auditStr + "FileMask: " + fileMask);
                   // check ob fileMask definiert ist
                   if (fileMask == null || fileMask.equalsIgnoreCase("")) {
                        //if no attachment name is specified in the module configuration the module will end the execution
                        throw mEx =
                             new ModuleException(
                                  auditStr
                                       + "!FileMask in Modulconfiguration nicht definiert!");
                   //***** DateiMaske2
                   String fileMask2 = moduleContext.getContextData("FileMask2");
                   Audit.addAuditLogEntry(
                        amk,
                        AuditLogStatus.SUCCESS,
                        auditStr + "FileMask2: " + fileMask2);
                   //***** Directory
                   directory = moduleContext.getContextData("Directory");
                   Audit.addAuditLogEntry(
                        amk,
                        AuditLogStatus.SUCCESS,
                        auditStr + "Directory: " + directory);
                   // Fehler wenn Directory nicht definiert
                   if (directory == null || directory.equalsIgnoreCase("")) {
                        //the module will end the execution
                        throw mEx =
                             new ModuleException(
                                  auditStr
                                       + "Directory in Modulconfiguration nicht definiert");
                   //***** Sicherungs Verzeichnis
                   saveDirectory = moduleContext.getContextData("SaveDirectory");
                   Audit.addAuditLogEntry(
                        amk,
                        AuditLogStatus.SUCCESS,
                        auditStr + "SaveDirectory: " + saveDirectory);
                   // entpacken aufrufen
                   entpacke(directory, saveDirectory, fileMask);
                   if (fileMask2.length() > 0) {
                        entpacke(directory, saveDirectory, fileMask2);
                   //update the XI Message
                   inputModuleData.setPrincipalData(msg);
              } catch (Exception e) {
                   String errorMessage =
                        auditStr + "Error bei der . Exception:" + e.getMessage();
                   Audit.addAuditLogEntry(amk, AuditLogStatus.ERROR, errorMessage);
                   throw mEx = new ModuleException(auditStr + errorMessage);
              Audit.addAuditLogEntry(
                   amk,
                   AuditLogStatus.SUCCESS,
                   auditStr + "Verarbeitung beendet ");
              return inputModuleData;
         //+++++++++++++++++++++++++
         private static void entpacke(
              String directory,
              String saveDirectory,
              String mask)
              // TODO Auto-generated method stub
              Audit.addAuditLogEntry(
                   amk,
                   AuditLogStatus.SUCCESS,
                   auditStr + "Funktion entpacke");
              if (!directory.endsWith("\")) {
                   directory = directory + "\";
              } // if
              File f;
              f = new File(directory);
              Audit.addAuditLogEntry(
                   amk,
                   AuditLogStatus.SUCCESS,
                   auditStr + "f = new File(directory)");
    //          // Achtung Klasse in einer Klasse :-)
    //          String[] strFiles = f.list(new FilenameFilter() {
    //               public boolean accept(File file, String filename) {
    //                    Wildcard wildcard1 = new Wildcard(mask);
    //                    Audit.addAuditLogEntry(
    //                         amk,
    //                         AuditLogStatus.SUCCESS,
    //                         auditStr + "wc1");
    //                    return wildcard1.match(filename, false);
              String [] strFiles = f.list(new MyFilter(mask));
              // Liste der Gefundenen dateien
              Audit.addAuditLogEntry(
                   amk,
                   AuditLogStatus.SUCCESS,
                   auditStr + "Anzahl gepackter Dateien: " + strFiles.length);
              //System.out.println( strFiles.length + " Dateien zum entpacken");
              for (int i = 0; i < strFiles.length; i++) {
                   Audit.addAuditLogEntry(
                        amk,
                        AuditLogStatus.SUCCESS,
                        auditStr + "verarbeite Datei: : " + strFiles<i>);
                   //     System.out.println("f[" + i + "]=" + strFiles<i>);
              } // for
              // *****entpacken**********************
              for (int i = 0; i < strFiles.length; i++) {
                   try {
                        byte[] buf = new byte[4096];
                        ZipInputStream in =
                             new ZipInputStream(
                                  new FileInputStream(directory + strFiles<i>));
                        Audit.addAuditLogEntry(
                             amk,
                             AuditLogStatus.SUCCESS,
                             auditStr + "Entpacke " + directory + strFiles<i>);
                        //System.out.println("Entpacke " + directory + strFiles<i>);
                        int count = 0;
                        while (true) {
                             count++;
                             // Nächsten Eintrag lesen
                             ZipEntry entry = in.getNextEntry();
                             if (entry == null) {
                                  break;
                             // Beschreibung ausgeben
                             Audit.addAuditLogEntry(
                                  amk,
                                  AuditLogStatus.SUCCESS,
                                  auditStr + entry.getName());
                             //System.out.println(entry.getName());
                             // Ausgabedatei erzeugen
                             FileOutputStream out =
                                  new FileOutputStream(directory + entry.getName());
                             int len;
                             while ((len = in.read(buf)) > 0) {
                                  out.write(buf, 0, len);
                             out.close();
                             // Eintrag schließen
                             in.closeEntry();
                        } // while
                        in.close();
                        Audit.addAuditLogEntry(
                             amk,
                             AuditLogStatus.SUCCESS,
                             auditStr + count + "Dateien entpackt");
                        //System.out.println(count + "Dateien entpackt");
                        // verschieben
                        if (saveDirectory.length() > 0) {
                             File quelle = new File(directory + strFiles<i>);
                             File ziel = new File(saveDirectory + strFiles<i>);
                             boolean bla = quelle.renameTo(ziel);
                             if (!bla) {
                                  Audit.addAuditLogEntry(
                                       amk,
                                       AuditLogStatus.SUCCESS,
                                       auditStr
                                            + strFiles<i>
                                            + " konnte nicht verschoben werden");
                             } else {
                                  Audit.addAuditLogEntry(
                                       amk,
                                       AuditLogStatus.SUCCESS,
                                       auditStr
                                            + strFiles<i>
                                            + "verschoben nach "
                                            + saveDirectory);
                                  //          System.out.println(
                                  //               strFiles<i> + "verscgoben nach " + directory + "sik//");
                        } // if
                   } catch (Exception e) {
                        String errorMessage =
                             auditStr
                                  + "Error in entpacken. Exception:"
                                  + e.getMessage();
                        Audit.addAuditLogEntry(amk, AuditLogStatus.ERROR, errorMessage);
                   } // catch
                   // *****entpacken*************
              } // for
         } //entpacke
    } // UnzipFilesBean
    class Wildcard {
         static AuditMessageKey amk = null;
         static String auditStr = "WildCard - ";
         static ModuleException mEx = null;
         private final String wildcardString;
          * Der Konstruktor für die WildcardSuche.
          * @param wildcardString
          *            Der WildcardString
         public Wildcard(String wildcardString) {
              this.wildcardString = wildcardString;
              Audit.addAuditLogEntry(
                   amk,
                   AuditLogStatus.SUCCESS,
                   auditStr + "Constructor");
          * Die Methode, welche den Vergleich durchführt.
          * @param str
          *            Der String, welcher darauf überprüft werden soll, ob er dem
          *            WildcardString entspricht.
          * @return true Wenn der String dem wildcardString entspricht.
         public boolean match(String str, boolean fCasesensitive) {
              if (str == null || wildcardString == null) {
                   return false;
              return recursiveMatch(wildcardString, str, fCasesensitive);
          * Hier wird der eigentliche Vergleich durchgeführt
          * @param strWildcard
          *            Der Wildcardstring, z.B.: "Test*"
          * @param str
          *            Der zu überprüfende String, z.B. "Testlauf"
          * @return true, wenn eine Übereinstimmung vorhanden ist, sonst false
         private boolean recursiveMatch(
              String strWildcard,
              String str,
              boolean fCasesensitive) {
              while (true) {
                   if (strWildcard.length() == 0)
                        return str.length() == 0;
                   char ch = strWildcard.charAt(0);
                   switch (ch) {
                        case '?' :
                             if (str.length() == 0)
                                  return false;
                             break;
                        case '*' :
                             strWildcard = strWildcard.substring(1);
                             while (true) {
                                  if (recursiveMatch(strWildcard, str, fCasesensitive))
                                       return true;
                                  if (str.length() == 0)
                                       return false;
                                  str = str.substring(1);
                        default :
                             if (str.length() == 0)
                                  return false;
                             if (fCasesensitive) {
                                  if (ch != str.charAt(0))
                                       return false;
                             } else if (
                                  Character.toLowerCase(ch)
                                       != Character.toLowerCase(str.charAt(0)))
                                  return false;
                             break;
                   strWildcard = strWildcard.substring(1);
                   str = str.substring(1);
         //++++++++++++++++++++++++++
    } // class
    /** Nun der eigentliche Filter */
    class MyFilter implements FilenameFilter {
         static AuditMessageKey amk = null;
         static String auditStr = "MyFilter - ";
         static ModuleException mEx = null;
         String fileMask;
         public MyFilter(String fileMask) {
              this.fileMask = fileMask;
              Audit.addAuditLogEntry(
                   amk,
                   AuditLogStatus.SUCCESS,
                   auditStr + "Constructor");
         } //constructor
          public boolean accept(File file, String filename) {
              // TODO Auto-generated method stub
              //fileMask = "?5LBL*";
              Wildcard wildcard1 = new Wildcard(fileMask);
              return wildcard1.match(filename, false);
    } //class
    But in Audit Protocol it failed after:
    17.09.2008 17:33:19     Erfolgreich     UnzipFilesBean - Module Configuration Key: 2
    17.09.2008 17:33:19     Erfolgreich     UnzipFilesBean - FileMask: ?5LBL???
    17.09.2008 17:33:19     Erfolgreich     UnzipFilesBean - FileMask2:
    17.09.2008 17:33:19     Erfolgreich     UnzipFilesBean - Directory: //transfer//X1E//100//99//lb//ein
    17.09.2008 17:33:19     Erfolgreich     UnzipFilesBean - SaveDirectory: //transfer//X1E//100//99//lb//ein_s
    17.09.2008 17:33:19     Erfolgreich     UnzipFilesBean - Funktion entpacke
    17.09.2008 17:33:19     Erfolgreich     UnzipFilesBean - f = new File(directory)
    17.09.2008 17:33:19     Fehler     UnzipFilesBean - Error bei der . Exception:null
    I could not find the error??
    Were there any log files to look into?
    regarts
    Zimmerningkat

    Hi Ralf,
    I am late..........
    I am bit confused with your explanation.
    1. Does all zip files will be picked by file adapter in one shot or is it conditional, since you have a XML descriptor file in firts zip file and the XML files describes the list of JPEG files which might be stored in the other zipped JPEG files?
    2. Can you tell the exact flow of your scenario
    3. Receiver in your scenario?
    Thanks,
    Gujjeti.

  • MalformedInputException Error in Adapter module for SFTP channel

    Dear All,
    I am using MessageTransformBean in adapter module for Plain to XML conversion. The channel works fine in all the cases but when I recieve     "  ì " or few more special characters in the file my channel does not pick file and show below error.
    Error: com.aedaptive.adapter.sftp.SFTPException : Aborting processing: com.sap.aii.af.mp.module.ModuleException: Transform: failed to execute the transformation: com.sap.aii.messaging.adapter.trans.TransformException: Error converting Message: 'sun.io.MalformedInputException'; nested exception caused by: sun.io.MalformedInputException caused by: com.sap.aii.messaging.adapter.trans.TransformException: Error converting Message: 'sun.io.MalformedInputException'; nested exception caused by: sun.io.MalformedInputException
    I am using below parameter value in adapter module.
    Transform.Class : com.sap.aii.messaging.adapter.Conversion
    Transform.ContentType : text/xml;charset=ISO-8859-1
    Please help me if any of you have faces such error in your developments.
    Avanish

    Hi Grzegorg,
    I have tried using UTF-8 encoding in my channel but this doesn't work. Communication cahnnel is still giving same problem.
    Error: com.aedaptive.adapter.sftp.SFTPException : Aborting processing: com.sap.aii.af.mp.module.ModuleException: Transform: failed to execute the transformation: com.sap.aii.messaging.adapter.trans.TransformException: Error converting Message: 'sun.io.MalformedInputException'; nested exception caused by: sun.io.MalformedInputException caused by: com.sap.aii.messaging.adapter.trans.TransformException: Error converting Message: 'sun.io.MalformedInputException'; nested exception caused by: sun.io.MalformedInputException
    The file which we are trying to process have character  Ì and as far as my serach is concerned i think this belongs to charset ISO-8859-1.
    Any more suggestion Guys to solve this problem.
    Thanks and Regards
    Avanish

  • Error in Adapter module on decentral Adapter engine

    Hi,
    I have configured a scenario file to file for picking a xml file and then converting it to corresponding edifact file,using an adapter module at the receiver side.The adapter module is getting executed but i am getting this error
    Message processing failed. Cause: java.lang.ClassCastException: class Xml_To_Edi.XML2EdifactLocalHomeImpl0_0 can not be casted to ModuleLocalHome or SModuleLocalHome
    Can you all tell what is this error and how to rectify it.
    regards,
    ujjwal kumar

    Hi Ujjawal,
    Do the following steps...
    1.created EJB of type StatelessSession Bean
    2.Dont uncheck generate default interfaces
    3. Fininsh.
    Later in ejb-jar.xml file, modify Home,Remote,Local,LocalHome entries.
    and for more info
    I refered a blog ,in that its given as:
    You need references to connector.jar file which has the classes required at compile time and runtime
    Compile time :
    From the context menu of the EJB project , follow the path Properties -> Java Build Path -> Libraries.
    Click on Add variable and select TSSAP_JAVAX_HOME and click on Extend and select connector.jar from the list displayed.
    Run time :
    Navigate to the application-j2ee-engine.xml in your EAR project.
    Select References on the General tab and click on Add.
    Select Select library/interface/service as shown in the snapshot and select j2eeca as in the next snapshot.
    Check this blog:
    /people/amol.joshi2/blog/2006/11/28/alerts-from-adapter-modules--the-jra-way-part-ii
    see the comments in the blog who faced same error.may this helps or gives an idea
    Searched lot for this,dont forget to reward points
    Regards
    Pragathi.
    Edited by: Pragathi on May 23, 2008 5:15 AM

  • Error in adapter module - jndi lookup can't find the class

    Hi gurus,
    I have a problem with my adapter module, the error from the RWB is:
    Error: com.sap.engine.services.jndi.persistent.exceptions.NameNotFoundException: Object not found in lookup of KFCProc.
    My EJB-JAR looks like this:
      <?xml version="1.0" encoding="UTF-8" ?>
      <!DOCTYPE ejb-jar (View Source for full doctype...)>
    <ejb-jar>
      <description>EJB JAR description</description>
      <display-name>EJB JAR</display-name>
    <enterprise-beans>
    <session>
      <ejb-name>KFCProc</ejb-name>
      <home>com.sap.aii.af.mp.module.ModuleHome</home>
      <remote>com.sap.aii.af.mp.module.ModuleRemote</remote>
      <local-home>com.sap.aii.af.mp.module.ModuleLocalHome</local-home>
      <local>com.sap.aii.af.mp.module.ModuleLocal</local>
      <ejb-class>com.sap.adapter.KFCProc</ejb-class>
      <session-type>Stateless</session-type>
      <transaction-type>Container</transaction-type>
      </session>
      </enterprise-beans>
      </ejb-jar>
    I think it should be all right, but it isn't.
    Can be the problem, that I use for "com.sap.adapter.KFCProc"package "com.sap..."?
    Thank you,
    Olian

    Hi Stefan,
    I developed it using your document
    This is my ejb-j2ee-engine.xml
    <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE ejb-j2ee-engine SYSTEM "ejb-j2ee-engine.dtd">
    <ejb-j2ee-engine>
         <enterprise-beans>
              <enterprise-bean>
                   <ejb-name>KFCProc</ejb-name>
                   <jndi-name>KFCProc</jndi-name>
                   <session-props/>
              </enterprise-bean>
         </enterprise-beans>
    </ejb-j2ee-engine>
    My entry in Modules tab of CC config is
    localejbs/KFCProc
    I think this all should be ok...
    Thanks,
    Olian

  • Receiver Time error in adapter Module in PI 7.31

    Hello Team,
    I am trying working on adapter module that accomplish Message id, Sender Interface name,Receiver Interface name sent time and receiver time.
    I got all values in my file except receiver time .I have failed to get exact receiver time.
    sent time shows as 2014 04 24 05:28:57
    receiver time as 1969 12 31 19:00:00
    when ever message triggers  its shows same receiver time(1969 12 31 19:00:00) ,I have placed my adapter module in JMS and File adapters,but i am getting same time in message receiver time .
    Please help me how to get exact message receiver time.
    Here is code.
    Message msg1=null;
    obj=md.getPrincipalData();
      msg1=(Message)obj;
    msg1=(Message)md.getPrincipalData();
    Date date = new Date();//For dynamic date file generation
      //time sent
      Long timesent=msg1.getTimeSent();
      Date sdate = new Date(timesent);
      Format Tformat = new SimpleDateFormat("yyyy MM dd HH:mm:ss");
      String SentTime=Tformat.format(sdate).toString();
      //time receive
      Long timerecev=msg1.getTimeReceived();
      Date rdate = new Date(timerecev);
      String ReceiveTime=Tformat.format(rdate).toString();
    Thanks
    Ganesh

    Hi ,
    For file you can get it as below
    String sentTime = msg.getMessageProperty("http://sap.com/xi/XI/System/File", "SourceFileTimestamp"); 
    For JMS try the below and let me know.
    String sentTime = msg.getMessageProperty("http://sap.com/xi/XI/System/JMS", "DCJMSTimestamp"); 
    Regards
    Venkat

  • Error in Adapter module

    Dear Experts,
    I have created EAR file using the NWDS tool.( the blog: " How to Create Modules fot the J2EE Adapter Engine".)
    I have also deployed the EAR file usinf Visual Administrator.
    When I am sending the files to a folder then the error is coming as "Exception caught with cause com.sap.engine.services.jndi.persistent.exceptions.NameNotFoundException: Path to object does not exist at localebjs, the whole lookup name is localebjs/CreateAttachment.
    Attempt to process file failed with com.sap.engine.services.jndi.persistent.exceptions.NameNotFoundException: Path to object does not exist at localebjs, the whole lookup name is localebjs/CreateAttachment."
    Kindly help me.
    Thanks in advance.

    Check ejb-j2ee-engine.xml file for the Whats the EJB name and JNDI name any spelling mistakes can also create this error.
    Hi,
    Both the EJB name and JNDI name is same.
    In JAVA, the code is like this..
    @ejbHome <{com.sap.aii.af.mp.module.ModuleHome}>
    @ejbLocal <{com.sap.aii.af.mp.module.ModuleLocal}>
    @ejbLocalHome <{com.sap.aii.af.mp.module.ModuleLocalHome}>
    @ejbRemote <{com.sap.aii.af.mp.module.ModuleRemote}>
    @stateless
    and ejb-j2ee-engine as
    <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE ejb-j2ee-engine SYSTEM "ejb-j2ee-engine.dtd">
    <ejb-j2ee-engine>
         <enterprise-beans>
              <enterprise-bean>
                   <ejb-name>CreateAttachment</ejb-name>
                   <jndi-name>CreateAttachment</jndi-name>
                   <session-props/>
              </enterprise-bean>
              <enterprise-bean>
                   <ejb-name>AdapterModuleBean</ejb-name>
                   <session-props/>
              </enterprise-bean>
         </enterprise-beans>
    </ejb-j2ee-engine>
    Kindly help me.
    pls, tell me where should I check the error.
    Edited by: Amit Mandal on Oct 23, 2008 8:55 AM

  • Conversion Agent Error in Adapter Module ?

    Hi,
    I am trying to install the conversion agent with PI 7.0 SP15. But then i got adapter error when trying to test simple scenario PDF file to JDBC.
    The error message is :
    ===========================================================================
    Attempt to process file failed with com.sap.engine.services.jndi.persistent.exceptions.NameNotFoundException: Path to object does not exist at localejb, the whole lookup name is localejbs/localejb/sap.com/com.sap.nw.cm.xi/CMTransformBean
    ===========================================================================
    I have check many time even with Visual Admin the JNDI name is correct. but why still error ?
    Please advise.
    Thank you and Best Regards
    Fernand

    Check setEnv.sh is their in the startsap file
    How to get started using Conversion Agent from Itemfield
    More on the SAP Conversion Agent by Itemfield
    Integrate SAP Conversion Agent by Itemfield with SAP XI
    Conversion Agent a Free Lunch?
    How to get started using Conversion Agent from Itemfield
    All you need to know about conversion agaent can be found here:
    https://websmp102.sap-ag.de/~sapdownload/011000358700001090982006E/ConvAgentDocSP16.zip
    https://websmp102.sap-ag.de/~sapdownload/011000358700004921152005E/ConversionAgent.pdf
    XI: Generate PDF file out of file adapter
    XI: Read data from PDF file in Sender Adapter
    The specified item was not found.

  • Regd. Error in Adapter module for IDOCxml to flat file conversion

    Hi Champs!
    I am using PI 7.1 and i am trying out the blog for direct conversion of IDOC xml to flat file and vice versa.
    /people/william.li/blog/2009/04/01/how-to-use-user-module-for-conversion-of-idoc-messages-between-flat-and-xml-formats
    has anyone tried this in Pi7.1
    i am getting the following error:
    Message processing failed.
    Cause: com.sap.engine.services.jndi.persistent.exceptions.NameNotFoundException:
    Path to object does not exist at SAP_XI_IDOC, the whole lookup
    name is localejbs/SAP_XI_IDOC/IDOCFlatToXmlConvertor.
    I have done all the setting required .. as per the blog.Is it srictly for PI7.11?
    Regards,
    Abhi

    Hi Abhi,
    This feature is a part of PI 7.11  new features , as it is mentioned in the begining of the Blog itself.
    So i feel , yes its strictly PI7.11 feature which may not be available in PI7.1 version which you are using currently.
    There may be workarounds...lets c  fellow SDNer's replys:)...
    Regards,
    Srinivas

  • Error in Adapter module EJB

    Hi,
    I have developed an EJB. After successfully deploying it on PI, I ma getting the following warning in NWA logs and the bean are not working:
    Warning occurred on server 1627350 during deploy sap.com/FileUploadEAR : References Test: There are no matching deploy time references (described in META-INF/SAP_MANIFEST.MF) for the following runtime references [sap.com/engine.security.facade, sap.com/engine.j2ee14.facade, sap.com/com.sap.aii.af.svc.facade, sap.com/com.sap.aii.af.ifc.facade, sap.com/com.sap.aii.af.lib.facade, sap.com/com.sap.base.technology.facade] (described in the META-INF/application-j2ee-engine.xml)., file: FileUploadEAR.ear, column 0, line 0, severity: warning
    Date:
    2014-06-03
    PFA logs from NWa.

    Hi Arijit,
    Can you share your application-j2ee-engine.xml file that is included in your EAR for deployment?
    Regards,
    Ryan Crosby

  • Custom adapter module deployment in PI 7.1

    We upgrade XI 3.0 to PI 7.1. However, I dont see SDM directory anymore which is what I had used to deploy my custom adapter module.
    Is there a different way to deploy custom adapter module in 7.1? Is SDM discontinued?
    When I try to deploy the ear file from NWDS directly I get deployment exception error
    "Deployment exception : Cannot determine sdm host (is empty). Please configure your engine/sdm correctly !".
    I have given the message server host and port correctly in preferences.
    I am using NWDS 7 and JAVA SDK 1.4.2.15.
    Is there a new procedure to deploy custom adapters in PI 7.1?
    Regards
    Haseeb

    hi,
    check this document:
    https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/00838345-708c-2a10-1199-9514c0b0a91c
    regards.

  • SAP PI crashes because of Custom Adapter module

    Hi,
    We are facing a strange problem. We have deployed a custom adapter module developed in java which accesses a Hardware Security Module(HSM) and uses the keys in HSM to digitally sign our data. Now, when I use particular methods in this code and deploy it on PI server, the server crashes while testing this out. As soon as I run the channel having this adapter module, PI server becomes unavailable. It restarts on its own after a few minutes.
    One of the reasons I identified to be causing this issue is the signing mechanism used in code. When I used a mechanism that was not supported or not correct, it crashed the server. If i corrected it, it worked fine. I found no other thing in my code causing this behaviour apart from this mechanism. But I am still not able to understand how a single method in a code can cause the whole server to crash. Has anybody here faced such a problem? Any pointers would be appreciated.
    We are using SAP PI 7.31 java only installation.
    Thanks,
    Ravi Desai

    Hi Ravi
    1. To check if it is a memory issue. Once you start the channel, check the memory usage in nwa. Check if the memory is increasing once the channel is started.
    2. Add debug statements to print logs in default traces at as many places as possible. Since your code is not reaching the Catch block, using the debug statement you can reach the line in the code which is causing this issue.
    Regards
    Osman Jabri

  • File adapter - Archive issue with adapter module

    Hi All,
    I have 2 issues here. We are currently using PI 7.11 EHp1 SP02.
    1. Arhival with "add time stamp" wont work. It just gives us an error message saying simpledate format exception.
    I have gone through the OSS note 1265534 and thought this will resolve the issue. But our BASIS team believes this note is only applicable for PI 7.1 SP01. Can you one using PI 7.11 SP02 comment on this?
    Note: Archive option with out add time stamp works fine.
    2. When I use adapter module in my sender file configuration, the archive option itself does not work. Read the official SAP help which says "To archive source files where a permanent error occurred during processing, set the indicator.
    A permanent error occurs either during the conversion of the file content, or in a module in the module processor."
    So the question here is, how do we make the error permanent? The only way to throw error from adapter module is using the ModuleException. It has 4  different constructors. I have used both
    ModuleException me = new ModuleException ("My error Msg"); and
    Module Exception me1 = new ModuleException ("Error String", new Throwable("My error Msg");
    In both the cases, the archival wont happen.
    Any ideas welcome.
    Thanks
    Jai

    Hi,
    I am using NFS protocol here not FTP. Sorry I dint mention that earlier.
    Thanks
    Jai
    Edited by: Jaishankar on Apr 1, 2010 9:55 AM
    Edited by: Jaishankar on Apr 6, 2010 11:10 AM

Maybe you are looking for

  • How not to go screen black

    How do I stop my screen from going from gray to black after about 60 seconds? Thanks for help

  • Skype not available in Canada?

    I would like to use Skype on my ipod touch. I found out it is only available in the US? Isn't that silly? It is a free app, and I have a skype account here in Canada. Please Apple, make skype available in itunes Store Canada

  • Windows Authentication issue

    Hi, I use the windows authentication to login into planning 4.1 and reports 7.2, but now for the last few days i can login into planning but not into hyperion reports with the windows id. What can be the issue and how should it be solved? Thanks

  • Can someone help me find the JavaMail example code?

    Hello, once I found a collection of source code files that contained example code for using the JavaMail API. Now I cannot find the collection. Is it still online? Can anyone help me find the JavaMail example code? Sorry if this question seems to eas

  • Create one sales order for two customers

    Hello to all. I have to plan the following development. Our client can create one sales order for one material and can bill it between two or more payers.  In SAP you would have to create one sales order for each customer and divide the material prop