Adapter Engine handling for CDATA in XML

Gurus:
I had a question on the Dapter Engines behavious, specifically the SOAP Sender.
The Source is sending something like:
           <Data><![CDATA[<?xml version="1.0" encoding="ISO-8859-1" ?><response><forms><form ObjectId="4070" Form_Name="P40 Action"><EMP_NAME>Howard Roark</EMP_NAME><PERNR>P1111111</PERNR><WORKAUTH></WORKAUTH><HR_NAME>Scott Manager</HR_NAME><HR_PNUM>P1234567</HR_PNUM><ESIG>Scott Manager</ESIG><ELECTRONIC_SIGNATURE>Scott Manager (electronically signed)</ELECTRONIC_SIGNATURE><ESIG_VERIFICATION>Scott.Manager [Tue Jun 2 12:03:56 EDT 2009]</ESIG_VERIFICATION><ESIG_DATE>06/02/2009</ESIG_DATE></form></forms></response>]]></Data>
         </GetFormXMLResult>
What the Integration Engine sees is the Data elelment with the CDATA section trimmed, i.e., it sees:
<Data> <?xml version="1.0" encoding="ISO-8859-1" ?><response><forms><form ObjectId="4070" Form_Name="P40 Action"><EMP_NAME>Howard Roark</EMP_NAME><PERNR>P1111111</PERNR><WORKAUTH></WORKAUTH><HR_NAME>Scott Manager</HR_NAME><HR_PNUM>P1234567</HR_PNUM><ESIG>Scott Manager</ESIG><ELECTRONIC_SIGNATURE>Scott Manager (electronically signed)</ELECTRONIC_SIGNATURE><ESIG_VERIFICATION>Scott.Manager [Tue Jun 2 12:03:56 EDT 2009]</ESIG_VERIFICATION><ESIG_DATE>06/02/2009</ESIG_DATE></form></forms></response> </Data>
Is this an issue with the Aapter Engine, or has anyone come accross this before? This is on PI7.0 SPS 13.
Thanks
Feroz

Hi,
the CDATA section should not be a problem. It's mostly used to include information / XML in one tag and to include special characters that should not be changed or ignored by the system. All informaiton within a CDATA element is ignored by PI and handled as "blackbox" string. PI just receives it and passes it out without really looking what's inside the tag.
If you want to extract what's inside the CDATA element, you need to use an XSLT in your mapping (see: Handling CDATA in PI)
Regards,
Kai

Similar Messages

  • Adapter Engine Prioritation for JDBC Adapter

    Hi ,
    I am currently working on an Idoc to Jdbc Scenario. The jdbc adapter is used to push the messages to three different legacy systems through three different scenarios. I need to prioratize the messages of the legacy systems(For Eg. Legacy System A is more critical than Legacy System B) in adapter engine or in adapter itself.
    Regards,
    UserPI

    Hi
    We are having the same problem. Once one of the interfaces which is using a JDBC communication channel is processing a bigger amount of messages, the JDBC adapter seems to be blocked exclusively for that interface. All other interfaces using the JDBC adapter are on hold (status "Scheduled" in Adapter Engine Message Monitoring). I set up message prioritization in RWB (Component: Adapter Engine), but it doesn't help (nothing different from before).
    Does anybody has a hint on that?
    Thanks
    Philippe

  • File Adapter Fault Handling for CSV files

    I have been working on a requirement where the file adapter picks up the file and gives to the BPEL for processing the data.
    In my composite, i have configured the file adapter as a service for reading files, and i defined the xsd using the native format builder....
    <?xml version="1.0" encoding="UTF-8" ?>
    <xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"
    xmlns:nxsd="http://xmlns.oracle.com/pcbpel/nxsd"
    xmlns:tns="http://TargetNamespace.com/ReadFile"
    targetNamespace="http://TargetNamespace.com/ReadFile"
    elementFormDefault="qualified"
    attributeFormDefault="unqualified"
    nxsd:version="NXSD"
    nxsd:stream="chars"
    nxsd:encoding="US-ASCII"
    nxsd:hasHeader="true"
    nxsd:headerLines="1"
    nxsd:headerLinesTerminatedBy="${eol}"
    >
    <xsd:element name="Root-Element">
    <xsd:complexType>
    <xsd:sequence>
    <xsd:element name="Student" minOccurs="1" maxOccurs="unbounded">
    <xsd:complexType>
    <xsd:sequence>
    <xsd:element name="Name" type="xsd:string" nxsd:style="terminated" nxsd:terminatedBy="," nxsd:quotedBy="&quot;" />
    <xsd:element name="Street1" type="xsd:string" nxsd:style="terminated" nxsd:terminatedBy="," nxsd:quotedBy="&quot;" />
    <xsd:element name="Street2" type="xsd:string" nxsd:style="terminated" nxsd:terminatedBy="," nxsd:quotedBy="&quot;" />
    <xsd:element name="City" type="xsd:string" nxsd:style="terminated" nxsd:terminatedBy="," nxsd:quotedBy="&quot;" />
    <xsd:element name="State" type="xsd:string" nxsd:style="terminated" nxsd:terminatedBy="," nxsd:quotedBy="&quot;" />
    <xsd:element name="Country" type="xsd:string" nxsd:style="terminated" nxsd:terminatedBy="${eol}" nxsd:quotedBy="&quot;" />
    </xsd:sequence>
    </xsd:complexType>
    </xsd:element>
    </xsd:sequence>
    </xsd:complexType>
    </xsd:element>
    </xsd:schema>
    If i put some test data like below , the .txt file is being picked up and the valid being passed to the BPEL and its not returning any error for the invalid records. In this case, just want to throw an error and exit the bpel.
    Krish,abcd,abcd,chennai,tnin - comma is missing here
    NP,abcd,abcd,chennai,tnin - - comma is missing here
    Nutan,abcd,abcd,chennai,tn,in - this record being processed successfully.
    Pari,abcd,abcd,chennai,tn,in - - this record being processed successfully.
    Experts, any help is really appreciated..

    Hi,
    its better to opt for seeburger for EDI data processings..
    http://www.sdn.sap.com/irj/scn/index?rid=/library/uuid/20ed5d5b-b188-2c10-76a2-997a616e48a9
    http://www.cbs-consulting.com/EN/Services/ProcessesApplications/SAP__TechnologyConsulting/OpenPI/OpenPI__n,naviExpand=.html__nnn=true
    Check the above links can be helpful..
    HTH
    Rajesh

  • 9iAS WE v2 Beta: which adapter to use for BC4J-UIX-XML components?

    hi,
    through official TAR i still have no answer after 3 weeks, so maybe someone here can help me out.
    using Jdveloper 9i RC i create a BC4J-based client project (BC4J-UIX-XML components) which i want to use for wireless services. the only thing i know is that oracle recommends this framework. together with WE v2 we got more than 1000 pages of documentation, but nothing about the new adapters (the most important thing i believe, what else am i supposed to do as official beta tester?!!).
    any piece of information about the new adapters (especially the oc4j-adapter) or any kind of examples are really appreciated.
    TIA, trevi

    automatic mode is just for quick demos. You cannot internationalize your application while using automatic mode.
    You will need to turn off automatic mode, and have bc4j:column beans in your table and databind the data to come from your resource bundles.

  • File adapter, no item in Adapter Engine list

    I'm trying add communication channel (File/FTP Receiver)
    There is no item In Adapter Engine list . This fieldis mandatory.
    What must I do to see "Integration Server" in this list?
    Thanks.

    Hi Cemil,
    See these..
    Adapter Engine field is empty
    Integration Server does not appear in Adapter Engine field for File adapter
    cheers,
    Prashanth
    P.S Please mark helpful answers

  • Adapter engine payload

    Hi
    In my XI system I am able to see the Adapter engine payload for asynchronous messages.
    But it is not showing the payload for synchronous messages. Where can I change the settings
    so that I can see the payload for synchronous messages too.......?? Meanwhile in case of
    asynchronous messages my XI system is asking for saving the payload rather to displaying the
    message in the window itself. Where can I change the settings so that it won't ask for saving
    the payload ??
    thanks
    kumar

    Hi,
    You will be only able to see Asynchronous messages in Adapter Engine and not the Synchronous messages.
    For Synchronous message logs you need to login to SAP ABAP stack, TCode sxmb_adm -> Integration Engine Configuration -> Specific Configuration
    Edit and Add new Entry with following details
    Category: RUNTIME
    Parameters: LOGGING_SYNC
    Current Value: 1
    Regarding your second query, can you tell the exact page from where you are trying to see the payload. It should show the payload in the window only. I don't think there is some setting for this in XI.
    Thanks
    Amit

  • Cache Refresh for Adapter Engine is not working

    Hi,
    our adaper engine is not working. At RTW no there are no channels visible and the button "Test Cache Connectivity" leads to a yellow icon for the adapter engine with the error text: "Attempt to fetch cache data from Integration Directory not yet started or still in process".
    The error reason is at <i>http://<j2ee host>:<port>/CPACache/history.jsp</i> available: <i>com.sap.aii.af.service.cpa.impl.exception.CPADirectoryCacheException: Couldn't open Directory URL (http://pixd1.digoff.no:55200/dir/hmi_cache_refresh_service/ext?method=CacheRefresh&mode=C&consumer=af.xd1.dat-dof-xi), due to: HTTP 403: Forbidden</i>
    <b>The cache refreh request from adapter engine to directory gets an 403 error.</b> What is strange: No problem, to execute that request in a browser, i get the right message, no fault.
    I searched for notes or other threads, i could find only <a href="https://www.sdn.sap.comhttp://www.sdn.sap.comhttp://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/com.sap.km.cm.docs/oss_notes/sdn_oss_bc_xi/~form/handler%7b5f4150503d3030323030363832353030303030303031393732265f4556454e543d444953504c4159265f4e4e554d3d373531383536%7d">SAP note 751856</a> , but it is valid for XI 3.0; we are on PI 7.0.
    I checked out:
    - no user blocked
    - all system users have standard authorisations
    - reimport of SAP BASIS SWC
    - SICF services for XI active
    - destination INTEGRATION_DIRECTORY_HMI working
    Any idea, how i can get the adapter engine working?
    Regards,
    Udo

    Hi,
    There are two ways to display the content of the CPA cache refresh.
    1. The Cache-Update Content-XML
    Document can be stored in the Adapter Framework database (J2EE schema) for further analysis. Here you have to set the property in the J2EE Visual Administrator tool.
    To do so, proceed as follows:
    =>J2EE-service SAP XI AF CPA Cache
    => set property trackCacheUpdateXML= true
    => You can now display the cache update XML with the alias  CPACache
    => View Cache Update History
    => View Cache Update XML
    2. The content of the cache refresh from the Integration Directory intothe CPA cache can be written to an XML file: Here you have to set the property inthe J2EE Visual Administrator tool:
    =>J2EE-service SAP XI AF CPA Cache
    => set property J2EE service SAP XI AF CPA Cache cacheUpdateDebugFile = true
    => the CPA cache refresh XML file will be in the server(0) directory search for the following file names:
    => value of the property cacheUpdateDebugFile.deltaif you intend to see the delta refresh accordingly and the value of the property cacheUpdateDebugFile.full if
    you intend to see the full cache refresh content
    Note: After your analysis, do not forget to reset the properties value to false.
    You can delete the XML cache-
    refresh table: alias CPACache
    => View Cache Update History
    => Delete History
    Also check out the user and its permission.
    regards
    Aashish Sinha
    PS : Reward points if Helpful

  • "Message Rejection Handler" for the file/ftp adapter using fault policy

    Hi guys,
    We are trying to implement "Message Rejection Handler" for the file/ftp adapter using following fault policy configuration.
    Fault Policy:
    `````````````
    <?xml version='1.0' encoding='UTF-8'?>
    <faultPolicies xmlns="http://schemas.oracle.com/bpel/faultpolicy">
    <faultPolicy version="2.0.1" id="ProcessNameGenericPolicy"
    xmlns:env="http://schemas.xmlsoap.org/soap/envelope/"
    xmlns:xs="http://www.w3.org/2001/XMLSchema"
    xmlns="http://schemas.oracle.com/bpel/faultpolicy"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <Conditions>
    <faultName xmlns:bpelx="http://schemas.oracle.com/bpel/extension"
    name="bpelx:remoteFault">
    <condition>
    <action ref="ora-retry"/>
    </condition>
    </faultName>
    <faultName xmlns:bpelx="http://schemas.oracle.com/bpel/extension"
    name="bpelx:bindingFault">
    <condition>
    <action ref="ora-rethrow-fault"/>
    </condition>
    </faultName>
    </Conditions>
    <Actions>
    <Action id="ora-retry">
    <retry>
    <retryCount>3</retryCount>
    <retryInterval>1</retryInterval>
    <retryFailureAction ref="ora-rethrow-fault"/>
    </retry>
    </Action>
    <Action id="ora-rethrow-fault">
    <rethrowFault/>
    </Action>
    <Action id="ora-human-intervention">
    <humanIntervention/>
    </Action>
    <Action id="ora-terminate">
    <abort/>
    </Action>
    </Actions>
    </faultPolicy>
    <faultPolicy version="2.0.1" id="ProcessNameHumanInterventionPolicy"
    xmlns:env="http://schemas.xmlsoap.org/soap/envelope/"
    xmlns:xs="http://www.w3.org/2001/XMLSchema"
    xmlns="http://schemas.oracle.com/bpel/faultpolicy"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <Conditions>
    <faultName xmlns:medns="http://schemas.oracle.com/mediator/faults"
    name="medns:mediatorFault">
    <condition>
    <test>contains($fault.mediatorErrorCode, "TYPE_TRANSIENT")</test>
    <action ref="ora-retry-with-intervention"/>
    </condition>
    </faultName>
    <faultName xmlns:bpelx="http://schemas.oracle.com/bpel/extension"
    name="bpelx:remoteFault">
    <condition>
    <action ref="ora-retry-with-intervention"/>
    </condition>
    </faultName>
    <faultName xmlns:bpelx="http://schemas.oracle.com/bpel/extension"
    name="bpelx:bindingFault">
    <condition>
    <action ref="ora-rethrow-fault"/>
    <!--<action ref="ora-retry-with-intervention"/>-->
    </condition>
    </faultName>
    </Conditions>
    <Actions>
    <Action id="ora-retry-with-intervention">
    <retry>
    <retryCount>3</retryCount>
    <retryInterval>1</retryInterval>
    <retryFailureAction ref="ora-human-intervention"/>
    </retry>
    </Action>
    <Action id="ora-retry">
    <retry>
    <retryCount>3</retryCount>
    <retryInterval>1</retryInterval>
    <retryFailureAction ref="ora-rethrow-fault"/>
    </retry>
    </Action>
    <Action id="ora-rethrow-fault">
    <rethrowFault/>
    </Action>
    <Action id="ora-human-intervention">
    <humanIntervention/>
    </Action>
    <Action id="ora-terminate">
    <abort/>
    </Action>
    </Actions>
    </faultPolicy>
    <faultPolicy version="2.0.1" id="RejectedMessages">
    <Conditions> <!-- All the fault conditions are defined here -->
    <faultName xmlns:rjm="http://schemas.oracle.com/sca/rejectedmessages" name="rjm:PartnerLinkName">
    <!-- local part of fault name should be the service name-->
    <condition>
    <action ref="writeToFile"/> <!-- action to be taken, refer to Actions section for the details of the action -->
    </condition>
    </faultName>
    </Conditions>
    <Actions> <!-- All the actions are defined here -->
    <Action id="writeToFile">
    <fileAction>
    <location>Server/Loc/path</location>
    <fileName>Rejected_AJBFile_%ID%_%TIMESTAMP%.xml</fileName>
    </fileAction>
    </Action>
    </Actions>
    </faultPolicy>
    </faultPolicies>
    Fault Binding:
    ``````````````
    <?xml version='1.0' encoding='UTF-8'?>
    <faultPolicyBindings version="2.0.1"
    xmlns="http://schemas.oracle.com/bpel/faultpolicy"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <composite faultPolicy="ProcessNameGenericPolicy"/>
    <service faultPolicy="RejectedMessages">
    <name>PartnerLinkName</name>
    </service>
    <reference faultPolicy="RejectedMessages">
    <name>PartnerLinkName</name>
    </reference>
    </faultPolicyBindings>
    We have SyncFileRead partner link.
    The expectation is: when the message read by SyncFileRead partner link is rejected,
    that rejected message should come to particular directory in the server.
    Could you please help us fixing this.
    TIA.

    HI..
    Have a look at this blog :
    3) Error: HTTP_RESP_STATUS_CODE_NOT_OK 401 Unauthorized
    Description: The request requires user authentication
    Possible Tips:
    u2022 Check XIAPPLUSER is having this Role -SAP_XI_APPL_SERV_USER
    u2022 If the error is in XI Adapter, then your port entry should J2EE port 5<System no>
    u2022 If the error is in Adapter Engine
    u2013then have a look into SAP note- 821026, Delete the Adapter Engine cache in transaction SXI_CACHE Goto --> Cache.
    u2022 May be wrong password for user XIISUSER
    u2022 May be wrong password for user XIAFUSER
    u2013 for this Check the Exchange Profile and transaction SU01, try to reset the password -Restart the J2EE Engine to activate changes in the Exchange Profile After doing this, you can restart the message
    Http* Errors in XI
    Thanks,
    Pooja

  • Java exception appear during file adapter to handle large xml

    Hi,Guys,
    I am using file adapter to poll one folder of my local.one get input.xml,then do something,then write out output.xml.
    input.xml format is :
    <mes:DataRequestIns xmlns:mes="http://xml.netbeans.org/schema/MessageDefined">
    <!--1 or more repetitions:-->
         <mes:DataIns>
              <mes:address>Ang Mo Kio 5,63 street</mes:address>
              <mes:birthday>14/12/1970</mes:birthday>
              <mes:firstName>Sing1</mes:firstName>
              <mes:gender>0</mes:gender>
              <mes:ID>1001</mes:ID>
              <mes:lastName>NorthMan</mes:lastName>
              <mes:postcode>2002</mes:postcode>
              <mes:telephone>6665222</mes:telephone>
              <mes:surname>Sur</mes:surname>
              <mes:status>single</mes:status>
              <mes:location>sgp</mes:location>
              <mes:HP1>11111</mes:HP1>
              <mes:HP2>22222</mes:HP2>
              <mes:passport>123456878</mes:passport>
              <mes:company>ST</mes:company>
              <mes:department>TO</mes:department>
              <mes:occupation>engineer</mes:occupation>
              <mes:experience>10</mes:experience>
              <mes:level>2</mes:level>
              <mes:certificate>high</mes:certificate>
              <mes:specialisation>computer</mes:specialisation>
              <mes:staffNumber>1020</mes:staffNumber>
              <mes:fax>00200</mes:fax>
              <mes:email>[email protected]</mes:email>
              <mes:national1>sgp</mes:national1>
              <mes:national2>sgp</mes:national2>
              <mes:interestingField>bpel</mes:interestingField>
              <mes:national>earth</mes:national>
              <mes:oversea>yes</mes:oversea>
         </mes:DataIns>
    <mes:DataIns>
    </mes:DataIns>
    </mes:DataRequestIns>
    if my input.xml contain less than 1000 records,then it's working,once greater than 1000,then appear exception.for normal case ,must have more than 10000 records need to handle,and file size is 11.2MB.
    so,Does any other way or how to use file adapter to handle it ?
    thank you
    exception :
    SEVERE: An error occured while scanning for the next trigger to fire.
    org.quartz.JobPersistenceException: Failed to obtain DB connection from data sou
    rce 'soaNonManagedDS': java.sql.SQLException: Could not retrieve datasource via
    JNDI url 'jdbc/SOALocalTxDataSource' weblogic.jdbc.extensions.ConnectionDeadSQLE
    xception: weblogic.common.resourcepool.ResourceDeadException: 0:weblogic.common.
    ResourceException: Could not create pool connection. The DBMS driver exception w
    *as: Socket read timed out [See nested exception: java.sql.SQLException: Could no*
    *t retrieve datasource via JNDI url 'jdbc/SOALocalTxDataSource' weblogic.jdbc.ext*
    *ensions.ConnectionDeadSQLException: weblogic.common.resourcepool.ResourceDeadExc*
    *eption: 0:weblogic.common.ResourceException: Could not create pool connection. T*
    *he DBMS driver exception was: Socket read timed out]*
    at org.quartz.impl.jdbcjobstore.JobStoreCMT.getNonManagedTXConnection(Jo
    bStoreCMT.java:167)
    at org.quartz.impl.jdbcjobstore.JobStoreSupport.executeInNonManagedTXLoc
    k(JobStoreSupport.java:3652)
    at org.quartz.impl.jdbcjobstore.JobStoreSupport.acquireNextTrigger(JobSt
    oreSupport.java:2654)
    at org.quartz.core.QuartzSchedulerThread.run(QuartzSchedulerThread.java:
    *235)*
    Caused by: java.sql.SQLException: Could not retrieve datasource via JNDI url 'jd
    bc/SOALocalTxDataSource' weblogic.jdbc.extensions.ConnectionDeadSQLException: we
    blogic.common.resourcepool.ResourceDeadException: 0:weblogic.common.ResourceExce
    ption: Could not create pool connection. The DBMS driver exception was: Socket r
    ead timed out
    another exception:
    Message handle error.
    error while attempting to process the message "com.collaxa.cube.engine.dispatch.
    message.invoke.InvokeInstanceMessage"; the reported exception is: Transaction Ro
    lledback.: weblogic.transaction.internal.TimedOutException: Transaction timed ou
    t after 302 seconds
    BEA1-3468FC5E3C698D2A82F7
    at weblogic.transaction.internal.ServerTransactionImpl.wakeUp(ServerTran
    sactionImpl.java:1742)
    at weblogic.transaction.internal.ServerTransactionManagerImpl.processTim
    edOutTransactions(ServerTransactionManagerImpl.java:1609)
    at weblogic.transaction.internal.TransactionManagerImpl.wakeUp(Transacti
    onManagerImpl.java:1885)
    at weblogic.transaction.internal.ServerTransactionManagerImpl.wakeUp(Ser
    verTransactionManagerImpl.java:1519)
    at weblogic.transaction.internal.WLSTimer.timerExpired(WLSTimer.java:35)
    at weblogic.timers.internal.TimerImpl.run(TimerImpl.java:273)
    at weblogic.work.SelfTuningWorkManagerImpl$WorkAdapterImpl.run(SelfTunin
    gWorkManagerImpl.java:516)
    at weblogic.work.ExecuteThread.execute(ExecuteThread.java:201)
    at weblogic.work.ExecuteThread.run(ExecuteThread.java:173)
    *; nested exception is: weblogic.transaction.internal.TimedOutException: Transact*
    ion timed out after 302 seconds
    BEA1-3468FC5E3C698D2A82F7
    This error contained an exception thrown by the message handler.
    Edited by: aris yu on Dec 27, 2009 11:55 PM

    Hi,
    we have to explicitly mention batch while configuaring file adapter.
    i.e. in step 5 : Check file contains multiple messages and mention how many messages u want to process in a batch.
    i.e. if you have 10000 msgs in ur file mention the size as 500. Then it will read 10000 records in 20 batches.
    Now while writing to a file use Append=true property.
    U have to add this property to fileadapter.wsdl (in jca:operation tag) which will be created when u complete the configuaration of file adapter with write operation.
    Regards
    PavanKumar.M

  • How to get Alerts mail for adapter engine errors in SAP PI 7.0

    Hi Friends,
    I configured Alerts in PI 7.0. with the help of t-code u2018ALRTCATDEF and created a new alert catergory.
    In container tab i have mentioned all give below elements.
    SXMS_MSG_GUID, SXMS_RULE_NAME, SXMS_ERROR_CAT, SXMS_ERROR_CODE, SXMS_FROM_PARTY, SXMS_FROM_SERVICE, SXMS_FROM_NAMESPACE, SXMS_FROM_INTERFACE, SXMS_TO_PARTY, SXMS_TO_SERVICE, SXMS_TO_NAMESPACE,SXMS_TO_INTERFACE
    I am getting alerts when I manually test the alerts configurations by running the report u2018RSALERTTESTu2019.
    I am getting mail as :
    Alert ID: ##00009##
    Dear Administrator,
    This is with respect to XI Scenario. During processing of XML file from ECC or XYZ Server, Following error has been occured:
    Message ID:
    Interface:
    NOTE: To check the file name, go to SXMB_MONI and search for above message ID.
    Double click on that message ID and click on error in left hand tree.
    Please take appropriate action in co-ordination with respective functional and BASIS consultant.
    But When I am getting a error , I am not getting an alert mail. Right now iam doing in XI Development.
    I am not getting an Alert mail , when my message is in status of : System Error . Error catergory is : XI_J2EE_ADAPTER_JDBC.
    Kindly tell how to get alert mail for error catergory : XI_J2EE_ADAPTER_JDBC and in Adapter engine errors.
    How to get alert mail when my message is failed with any reason in Adapter engine.
    Waiting for quick replay. Please help me out.
    Regards,
    Ahmed.

    Hi thanks for quick reply.
    As per your given link : http://www.sdn.sap.com/irj/scn/weblogs?blog=/pub/wlg/14877. [original link is broken]
    I have done all these steps. But still little problem.
    as per link he is getting Error  description , error message id , alert rule..
    In my case I am not getting these information. when my messages failed. When I am doing manully testing the alert getting an mail as :
    Alert ID: ##00009##
    Dear Administrator,
    This is with respect to XI Scenario. During processing of XML file from ECC or XYZ Server, Following error has been occured:
    Message ID:
    Interface:
    NOTE: To check the file name, go to SXMB_MONI and search for above message ID.
    Double click on that message ID and click on error in left hand tree.
    Please take appropriate action in co-ordination with respective functional and BASIS consultant.
    Is it okay the body of mail??.
    I am not getting alert mail when my messages failed in adapter engine and Integration Engine.
    Ex my message is failed in AE:as below.
    My messages flow as : SAP --> XI --> DB.
    Messages is success (in ECC moni)> XI moni also success> XI Adapter engine getting error as (Status: System Error) and (Error Category : XI_J2EE_ADAPTER_JDBC).
    Regards,
    Ahmed.

  • Message split on adapter engine for the java based IDoc adapter

    Hi Guys,
    Do you know if message split on adapter engine is available for the java based IDoc adapter on the single stack (PI 7.31)?
    I'm getting such exception when I try to post 3 IDocs
    Transmitting the message to endpoint <local> using connection File_http://sap.com/xi/XI/System failed, due to: com.sap.aii.af.idoc.exception.IDOCAdapterException: Error before sending due to idoc parsing error: (7) IDOC_ERROR_PARSE_FAILURE: Invalid XML 1.0 character encountered within IDocXML for type <ns0:Messages>:
    state=EXPECTING_IMMEDIATE_TAG_END, charPosition=68, lineNumber=1, columnNumber=69, invalidChar=U+0078,
    sourceSnippet=...UTF-8" standalone="no"?><ns0:Messages xmlns:ns0="http://sap.com/xi/XI/SplitAndMerge"><ns0:Message1><...
    ^
    Mapping is one to many.
    Each IDoc content has been compared manually against the xsd schema and it was fine.  
    I know that old way of modifying xsd is still possible.
    Best regards,
    Wojciech

    Did you find a solution to this? Having a similar error right now.
    Thanks and kind regards
    Jens

  • Adapter Engine XML Schema Validation Error Surpression

    We recently developed a number of web services that are called by 3rd parties outside our network. The web service request once made is picked up by a Web Dispatcher which then forwards the request to the de-central adapter. Both of these components reside within within a DMZ.
    We have, as an additional security measure made use of the new Adapter Engine XML Schema validation available with PI 7.1, to ensure that the payload of incomming messages is checked to ensure that it is a known structure.
    Now here is my problem, we recently had these services penetration tested by a 3rd party to ensure that they were secure and whilst the report was very good showing no major weaknesses they did pickup on a couple of items including that the fact that if the XSD to be used during payload message validation cannot be found an 'ADAPTER.JAVA_EXCEPTION' is returned to the web service consumer that highlights the path details of where the XSD should be (but could not be found).
    This was viewed as useful to an attacker for a number of reasons:
    1. Feedback in SQL injection attempts via verbatim DB error messages greatly improves attacker efficiency
    2. Path information is useful to the attacker for OS fingerprinting, directory traversal attempts
    3. Other miscellaneous stack trace information is useful to an attacker to understand how the application works
    Is there anyway this can be surpressed so that the adapter does not show this information in the returned error message - see example message below ?
    com.sap.engine.interfaces.messaging.api.exception.MessagingException: com.sap.engine.interfaces.messaging.api.exception.MessageFormatException: Schema MaintenanceOrderByIDQuery_sync.xsd not found in E:\usr\sap\DPI\DVEBMGS40\j2ee\cluster\server0\validation\schema\f7cd3b50a87411e08830ed9d0af006a5\urnstw.contractor.wfm.workorderretrieval\MaintenanceOrderByIDQueryRequest_Out\httpsap.comxiSAPGlobal20~Global\MaintenanceOrderByIDQuery_sync.xsd  (validation\schema)
         at com.sap.aii.adapter.soap.ejb.XISOAPAdapterBean.process(XISOAPAdapterBean.java:1041)
         at sun.reflect.GeneratedMethodAccessor497.invoke(Unknown Source)
    com.sap.engine.interfaces.messaging.api.exception.MessagingException: com.sap.engine.interfaces.messaging.api.exception.MessageFormatException: Schema Schema1.xsd not found in E:\usr\sap\DPI\DVEBMGS40\j2ee\cluster\server0\validation\schema\f7cd3b50a87411e08830ed9d0af006a5\urnstw.contractor.wfm.workorderretrieval\MaintenanceOrderByIDQueryRequest_Out\httpsap.comxiEA-APPLSEGlobal\Schema1.xsd  (validation\schema)
         at com.sap.aii.adapter.soap.ejb.XISOAPAdapterBean.process(XISOAPAdapterBean.java:1041)

    Hi,
    We are having the same problem, so you are not alone.
    I had an extensive call with Azure premium support and we where able to determine that:
    - Nothing is missing or in the wrong place in my exported .xml file.
    - Any changes to the VNET's using the web gui interface of https://manage.windowsazure.com is not possible when you have dns servers and use an gateway
    - You can download the .xml configuration file of the network and make manual changes to it, then import it again , to add/remove dns servers and or subnet's. 
    I am currently waiting for an solution,  i have let them lower the urgency from A to B (because i can make changes trough xml) and responded to the next support contact (saying he will continue with the issue) that the problems seems to be with azure and
    he should speak with the previous person helping me.  I have not heard from Azure support since.
    SR Number:115021812414226
    Open on:02/18/2015 09:28
    > There are networks with and without gateways created and the issue is happening on all the networks.
    > We are unable to add or remove the DNS servers. (by web gui)
    > Also not able to add or remove any subnets. (by web gui)
    > Every time the error message is same but the DNS server name is different. (from another subnet then the one we are changing)
    > Created CRI- 3405931, but they said it will need WATS team.
    > Confirmed with WATS engineer as well and moving case to WATS.
    > Cx agreed to lower the severity of the case as they are able to make changes through the network configuration file.
    > But they still want to get this resolved soon.
    > Agreed and dropped off, reducing severity to B 24/7.
    I hope microsoft is going to resolve this soon, as i do not want to edit my xml for little things like adding a subnet all the time. I have requested an status update in the issue.
    Should anyone have more information on this, please share it here.

  • What is the max file size that a Adapter Engine [J2SE] can handle ?

    We are having a scenario where a 4 GB compressed file needs to be sent across without mapping, I'm trying to explore the possible options to tackle this scenario.
    Some of the options, we are considering :
    - Sending a file from one Adapter Engine [J2SE] to another Adapter Engine [J2SE] bypassing PI. Adapter Logs will be monitored. What is the maximum file size that can be then handled assuming a standard installation ?
    - What is the max file size that Adapter Engine [J2SE] can send through PI without mapping?
    Any help with the above options or with any other possible solutions to handle extremely large file transfers will be much appreciated.

    Hi,
    j2se is not a good option here
    if you have 4gb then you need a copy solution
    a) build an proxy that will just copy the file from sender dest to receiver
    b) build an adapter that will do the same as proxy)
    this way processing of this message will be controlled with SAP PI/XI
    it will be as quick as copy & paste of the 4gb file
    I did the a) for one of the flow for 300 mb and it works perfectly
    Regards,
    Michal Krawczyk

  • Error while reading access data (URL, user,password) for the Adapter Engine

    Hi,
    Any idea on below message? I am doing file to file scenario and got the below tarce from sxmb_moni.
    <?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
    - <!--  Call Adapter
      -->
    - <SAP:Error xmlns:SAP="http://sap.com/xi/XI/Message/30" xmlns:SOAP="http://schemas.xmlsoap.org/soap/envelope/" SOAP:mustUnderstand="">
      <SAP:Category>XIServer</SAP:Category>
      <SAP:Code area="INTERNAL">AE_DETAILS_GET_ERROR</SAP:Code>
      <SAP:P1>af.pi1.piserver1</SAP:P1>
      <SAP:P2 />
      <SAP:P3 />
      <SAP:P4 />
      <SAP:AdditionalText>no_messaging_url_found: Unable to find URL for Adapter Engine af.pi1.piserver1</SAP:AdditionalText>
      <SAP:ApplicationFaultMessage namespace="" />
      <SAP:Stack>Error while reading access data (URL, user, password) for the Adapter Engine af.pi1.piserver1</SAP:Stack>
      <SAP:Retry>M</SAP:Retry>
      </SAP:Error>
    Thanks
    Balaji

    It looks like the adapter engine is not able to register him self on SLD, you have to check in the SLD the "Exchange Infrastructure" domain, you have to verify restarting the J2EE the adapter engine update the entries in the SLD related to the specific XI Domain.
    Launch Visual Administrator >> Server >> Services >> SAP AF CPA Cache
    Enter the appropriate values for:
    SLD.selfregistration.hostname (Use fully qualified hostname)
    SLD.selfregistration.httpPort
    SLD.selfregistration.httpsPort
    Sandro

  • Error when reading the access data for the Adapter Engine

    We are getting the following error in XI. It started on Jan 22 and resolved on Jan 23 automatically. Nothing has been changed and we don't able to understand how problem started and how it resolved:
    <?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
    - <!--  Call Adapter
      -->
    - <SAP:Error xmlns:SAP="http://sap.com/xi/XI/Message/30" xmlns:SOAP="http://schemas.xmlsoap.org/soap/envelope/" SOAP:mustUnderstand="1">
      <SAP:Category>XIServer</SAP:Category>
      <SAP:Code area="INTERNAL">AE_DETAILS_GET_ERROR</SAP:Code>
      <SAP:P1>af.xpd.dbcixpd</SAP:P1>
      <SAP:P2 />
      <SAP:P3 />
      <SAP:P4 />
      <SAP:AdditionalText>3: Unable to find URL for Adapter Engine af.xpd.dbcixpd</SAP:AdditionalText>
      <SAP:ApplicationFaultMessage namespace="" />
      <SAP:Stack>Error when reading the access data (URL, user, password) for the Adapter Engine af.xpd.dbcixpd</SAP:Stack>
      <SAP:Retry>N</SAP:Retry>
      </SAP:Error>
    Pls suggest if anyone has gone thru same problem.
    Regards
    Amar

    I got the same problem while using RFC lookup.
    <?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
    - <!--  Call Adapter
      -->
    - <SAP:Error xmlns:SAP="http://sap.com/xi/XI/Message/30" xmlns:SOAP="http://schemas.xmlsoap.org/soap/envelope/" SOAP:mustUnderstand="">
      <SAP:Category>XIServer</SAP:Category>
      <SAP:Code area="INTERNAL">AE_DETAILS_GET_ERROR</SAP:Code>
      <SAP:P1>af.tx1.netweaver</SAP:P1>
      <SAP:P2 />
      <SAP:P3 />
      <SAP:P4 />
      <SAP:AdditionalText>3: Unable to find URL for Adapter Engine af.tx1.netweaver</SAP:AdditionalText>
      <SAP:ApplicationFaultMessage namespace="" />
      <SAP:Stack>Error when reading the access data (URL, user, password) for the Adapter Engine af.tx1.netweaver</SAP:Stack>
      <SAP:Retry>M</SAP:Retry>
      </SAP:Error>
    Any idea ,when we get this error usually.

Maybe you are looking for