JDBC Adapter Invalid level 4' found

Hi all,
I have the following XML messages send to a JDBC adapter and I get an Invalid Level 4' found:
  <?xml version="1.0" encoding="UTF-8" ?>
- <ns0:ATL_JDBC_SQL_MAT_BOM_IN_MT xmlns:ns0="http://atlantis.com/material.bom">
- <Statement1>
- <dbTableName action="UPDATE_INSERT">
  <table>SAP_MATERIAL_BOM</table>
- <access>
  <IDOC hasQuot="YES">0000000000003670</IDOC>
  <CODE hasQuot="YES">0183654</CODE>
  <ROWMATCODE hasQuot="YES">0183685</ROWMATCODE>
  <ROWMATQTY hasQuot="YES">8.000</ROWMATQTY>
  <CH_OK hasQuot="YES">0</CH_OK>
  </access>
  </dbTableName>
- <key>
  <CODE hasQuot="YES">0183654</CODE>
  </key>
  </Statement1>
  </ns0:ATL_JDBC_SQL_MAT_BOM_IN_MT>
Does anybody have an idea what might by wrong? Thanks.
....Socrates>>

We are using XI3.0 sp18. The communication channel (JDBC RECEIVER) has the following error when receive the above XML message:
11/9/06 3:21:49 PM 4c54613a06b71c409b86d27d7df80ce3 Error while parsing or executing XML-SQL document: Error processing request in sax parser: Error when executing statement for table/stored proc. 'SAP_MATERIAL_BOM' (structure 'Statement1'): java.sql.SQLException: FATAL ERROR document format: invalid level 4' found (structure 'Statement1')
  11/9/06 3:21:49 PM 4c54613a06b71c409b86d27d7df80ce3 Processing started
That's all the Info I have...

Similar Messages

  • XI JDBC adapter isolation level serializable - Not working properly????

    Hi all,
      I have a JDBC sender adapter which perform in Transaction isolation Method serializable(Advance Mode settings) but it seems that it updates the wrong records witch results in records no to be send in XI.
    the select statement I am using is
    select OwnerCode,DeliveryNo , ErpWarehouseCode, TrtCode, PostGIdate, PostGIdateChangedFlg, DocumentNo, DocumentDate, CancelFlg,  PostGIFlg, TacticalRouteCode, LicenceNo, PackagesQty, CusPickUpFlg, CusPickUpChangedFlg,  RouteChangedFlg, DlvPriority, PickingDate, PickingDateChangedFlg, DlvPriorityChangedFlg, OdtLineNumber, ItemCode,  WmsStatusCode, Lot, ExpirationDate,ProductionDate, TraUnitQty, TraUnitCode, Qty, MainUnitCode, ConvFactor, ConvDivisor, InitQty, DocQty, DeleteLineFlg, ParentLineNumber, ItemType, CusPickUpDescr, CusPickUpChangedFlg2  
    from wmsConfDlv2ERP
    where flg = 0 and
             DeliveryNo in ( select top 1 DeliveryNo from wmsConfDlv2ERP where flg = 0 )
    and the update is
    UPDATE wmsConfDlv2ERP set flg = -1
    where flg = 0 and
              DeliveryNo in ( select top 1 DeliveryNo from  wmsConfDlv2ERP where flg = 0  )
    Any ideas? The DB is an MS SQL 2005... Thanks.

    Hi,
    As far as I know, the JDBC adapter does not support nested queries (just my experience). I always used SPs to properly handle the situation and flow logic.
    VJ

  • JDBC Adapter : no key element found

    Hi experts,
    while going through my Idoc to JDBC scenario, I am facing the following problem :
    when I send an Idoc, in the RWB, it goes through the integration engine with no problem, but once in the adapter engine I got the following error:
    Unable to execute statement for table or stored procedure. 'TBL_IN_TCLIENT' (Structure 'Statement1') due to java.sql.SQLException: FATAL ERROR document format: structure 'Statement1', no key element found
    I have no idea where this could come from. My mapping works fine, my tests configuration as well.
    Does anyone know where this might come from ?
    Thanks,
    Regards,
    Jamal

    Here is the xml of my target message type (hope its explicit):
    <?xml version="1.0" encoding="ISO-8859-1"?>
    <xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://pomona/xi/in/ET/VT433_CLIENT_POUR_ET" targetNamespace="http://pomona/xi/in/ET/VT433_CLIENT_POUR_ET">
    <xsd:element name="MT_VT433_CLIENT_SAP_ET" type="DT_VT433_CLIENT_SAP_ET"></xsd:element>
    <xsd:complexType name="TBL_IN_ADV">
    <xsd:annotation>
    <xsd:appinfo source="http://sap.com/xi/TextID">
    8c900f31649c11ddb2650050568b4d2e
    </xsd:appinfo>
    </xsd:annotation>
    <xsd:sequence>
    <xsd:element name="table" type="xsd:string">
    <xsd:annotation>
    <xsd:appinfo source="http://sap.com/xi/TextID">
    4a23cd40589311ddc780001b387a26b0
    </xsd:appinfo>
    </xsd:annotation>
    </xsd:element>
    <xsd:element name="access">
    <xsd:annotation>
    <xsd:appinfo source="http://sap.com/xi/TextID">
    0f0f64d157e411ddc522001b387a26b0
    </xsd:appinfo>
    </xsd:annotation>
    <xsd:complexType>
    <xsd:sequence>
    <xsd:element name="Code" type="xsd:string">
    <xsd:annotation>
    <xsd:appinfo source="http://sap.com/xi/TextID">
    d34ec57058b611ddb303001b387a26b0
    </xsd:appinfo>
    <xsd:documentation xml:lang="EN">
    numéro de client
    </xsd:documentation>
    </xsd:annotation>
    </xsd:element>
    <xsd:element name="OC" type="xsd:string">
    <xsd:annotation>
    <xsd:appinfo source="http://sap.com/xi/TextID">
    0f0f64d257e411dda5c3001b387a26b0
    </xsd:appinfo>
    <xsd:documentation xml:lang="EN">
    orga. com.
    </xsd:documentation>
    </xsd:annotation>
    </xsd:element>
    <xsd:element name="Canal" type="xsd:string">
    <xsd:annotation>
    <xsd:appinfo source="http://sap.com/xi/TextID">
    0f0f64d357e411dd87ab001b387a26b0
    </xsd:appinfo>
    <xsd:documentation xml:lang="EN">
    canal de distribution
    </xsd:documentation>
    </xsd:annotation>
    </xsd:element>
    <xsd:element name="SA" type="xsd:string">
    <xsd:annotation>
    <xsd:appinfo source="http://sap.com/xi/TextID">
    0f0f64d457e411dd8fd4001b387a26b0
    </xsd:appinfo>
    <xsd:documentation xml:lang="EN">
    secteur d&apos;activité
    </xsd:documentation>
    </xsd:annotation>
    </xsd:element>
    <xsd:element name="Branche" type="xsd:string">
    <xsd:annotation>
    <xsd:appinfo source="http://sap.com/xi/TextID">
    0f0f64d557e411ddc175001b387a26b0
    </xsd:appinfo>
    <xsd:documentation xml:lang="EN">
    branche
    </xsd:documentation>
    </xsd:annotation>
    </xsd:element>
    <xsd:element name="TGR" type="xsd:string">
    <xsd:annotation>
    <xsd:appinfo source="http://sap.com/xi/TextID">
    0f0f64d657e411dd94f5001b387a26b0
    </xsd:appinfo>
    <xsd:documentation xml:lang="EN">
    niveau de TGR
    </xsd:documentation>
    </xsd:annotation>
    </xsd:element>
    <xsd:element name="GPV" type="xsd:string">
    <xsd:annotation>
    <xsd:appinfo source="http://sap.com/xi/TextID">
    0f0f64d757e411dda36d001b387a26b0
    </xsd:appinfo>
    <xsd:documentation xml:lang="EN">
    groupe de vendeur
    </xsd:documentation>
    </xsd:annotation>
    </xsd:element>
    <xsd:element name="GPV2" type="xsd:string">
    <xsd:annotation>
    <xsd:appinfo source="http://sap.com/xi/TextID">
    0f0f64d857e411dd8110001b387a26b0
    </xsd:appinfo>
    <xsd:documentation xml:lang="EN">
    libellé groupe de vendeur
    </xsd:documentation>
    </xsd:annotation>
    </xsd:element>
    <xsd:element name="Agence" type="xsd:string">
    <xsd:annotation>
    <xsd:appinfo source="http://sap.com/xi/TextID">
    0f0f64d957e411ddc186001b387a26b0
    </xsd:appinfo>
    <xsd:documentation xml:lang="EN">
    agence commerciale
    </xsd:documentation>
    </xsd:annotation>
    </xsd:element>
    <xsd:element name="Promo_Reg" type="xsd:string">
    <xsd:annotation>
    <xsd:appinfo source="http://sap.com/xi/TextID">
    0f0f64da57e411dda201001b387a26b0
    </xsd:appinfo>
    <xsd:documentation xml:lang="EN">
    type de promo régionale
    </xsd:documentation>
    </xsd:annotation>
    </xsd:element>
    </xsd:sequence>
    </xsd:complexType>
    </xsd:element>
    </xsd:sequence>
    <xsd:attribute name="action" type="xsd:string" use="required">
    <xsd:annotation>
    <xsd:appinfo source="http://sap.com/xi/TextID">
    0f0f64d057e411ddaff8001b387a26b0
    </xsd:appinfo>
    </xsd:annotation>
    </xsd:attribute>
    </xsd:complexType>
    <xsd:complexType name="TBL_IN_TCLIENT">
    <xsd:annotation>
    <xsd:appinfo source="http://sap.com/xi/TextID">
    8c925922649c11dd88a20050568b4d2e
    </xsd:appinfo>
    </xsd:annotation>
    <xsd:sequence>
    <xsd:element name="table" type="xsd:string">
    <xsd:annotation>
    <xsd:appinfo source="http://sap.com/xi/TextID">
    1be8ae6157d411ddcd78001b387a26b0
    </xsd:appinfo>
    </xsd:annotation>
    </xsd:element>
    <xsd:element name="access">
    <xsd:annotation>
    <xsd:appinfo source="http://sap.com/xi/TextID">
    1be8ae6257d411ddbca7001b387a26b0
    </xsd:appinfo>
    </xsd:annotation>
    <xsd:complexType>
    <xsd:sequence>
    <xsd:element name="Code" type="xsd:string">
    <xsd:annotation>
    <xsd:appinfo source="http://sap.com/xi/TextID">
    1be8ae6357d411ddc0dc001b387a26b0
    </xsd:appinfo>
    <xsd:documentation xml:lang="EN">
    numéro de client
    </xsd:documentation>
    </xsd:annotation>
    </xsd:element>
    <xsd:element name="Nom" type="xsd:string">
    <xsd:annotation>
    <xsd:appinfo source="http://sap.com/xi/TextID">
    1be8ae6457d411ddabb0001b387a26b0
    </xsd:appinfo>
    <xsd:documentation xml:lang="EN">
    nom
    </xsd:documentation>
    </xsd:annotation>
    </xsd:element>
    <xsd:element name="Ville" type="xsd:string">
    <xsd:annotation>
    <xsd:appinfo source="http://sap.com/xi/TextID">
    1be8ae6557d411dd9371001b387a26b0
    </xsd:appinfo>
    <xsd:documentation xml:lang="EN">
    localité
    </xsd:documentation>
    </xsd:annotation>
    </xsd:element>
    <xsd:element name="CP" type="xsd:string">
    <xsd:annotation>
    <xsd:appinfo source="http://sap.com/xi/TextID">
    1be8ae6657d411dda83c001b387a26b0
    </xsd:appinfo>
    <xsd:documentation xml:lang="EN">
    code postal
    </xsd:documentation>
    </xsd:annotation>
    </xsd:element>
    <xsd:element name="Adresse" type="xsd:string">
    <xsd:annotation>
    <xsd:appinfo source="http://sap.com/xi/TextID">
    1be8ae6757d411dd932a001b387a26b0
    </xsd:appinfo>
    <xsd:documentation xml:lang="EN">
    rue et numéro de rue
    </xsd:documentation>
    </xsd:annotation>
    </xsd:element>
    <xsd:element name="KATR1" type="xsd:string">
    <xsd:annotation>
    <xsd:appinfo source="http://sap.com/xi/TextID">
    1be8ae6857d411dd8bae001b387a26b0
    </xsd:appinfo>
    <xsd:documentation xml:lang="EN">
    attribut 1
    </xsd:documentation>
    </xsd:annotation>
    </xsd:element>
    <xsd:element name="KATR1T" type="xsd:string">
    <xsd:annotation>
    <xsd:appinfo source="http://sap.com/xi/TextID">
    1be8ae6957d411dd973d001b387a26b0
    </xsd:appinfo>
    <xsd:documentation xml:lang="EN">
    désignation attribut 1
    </xsd:documentation>
    </xsd:annotation>
    </xsd:element>
    <xsd:element name="KATR2" type="xsd:string">
    <xsd:annotation>
    <xsd:appinfo source="http://sap.com/xi/TextID">
    1be8ae6a57d411dd8441001b387a26b0
    </xsd:appinfo>
    <xsd:documentation xml:lang="EN">
    attribut 2
    </xsd:documentation>
    </xsd:annotation>
    </xsd:element>
    <xsd:element name="KATR2T" type="xsd:string">
    <xsd:annotation>
    <xsd:appinfo source="http://sap.com/xi/TextID">
    1be8ae6b57d411ddcffd001b387a26b0
    </xsd:appinfo>
    <xsd:documentation xml:lang="EN">
    désignation attribut 2
    </xsd:documentation>
    </xsd:annotation>
    </xsd:element>
    <xsd:element name="KATR3" type="xsd:string">
    <xsd:annotation>
    <xsd:appinfo source="http://sap.com/xi/TextID">
    1be8ae6c57d411ddb64e001b387a26b0
    </xsd:appinfo>
    <xsd:documentation xml:lang="EN">
    attribut 3
    </xsd:documentation>
    </xsd:annotation>
    </xsd:element>
    <xsd:element name="KATR3T" type="xsd:string">
    <xsd:annotation>
    <xsd:appinfo source="http://sap.com/xi/TextID">
    1be8ae6d57d411ddc982001b387a26b0
    </xsd:appinfo>
    <xsd:documentation xml:lang="EN">
    désignation attribut 3
    </xsd:documentation>
    </xsd:annotation>
    </xsd:element>
    <xsd:element name="KATR4" type="xsd:string">
    <xsd:annotation>
    <xsd:appinfo source="http://sap.com/xi/TextID">
    1be8ae6e57d411dd85f3001b387a26b0
    </xsd:appinfo>
    <xsd:documentation xml:lang="EN">
    attribut 4
    </xsd:documentation>
    </xsd:annotation>
    </xsd:element>
    <xsd:element name="KATR4T" type="xsd:string">
    <xsd:annotation>
    <xsd:appinfo source="http://sap.com/xi/TextID">
    1be8ae6f57d411ddbfe9001b387a26b0
    </xsd:appinfo>
    <xsd:documentation xml:lang="EN">
    désignation attribut 4
    </xsd:documentation>
    </xsd:annotation>
    </xsd:element>
    <xsd:element name="KATR5" type="xsd:string">
    <xsd:annotation>
    <xsd:appinfo source="http://sap.com/xi/TextID">
    1be8ae7057d411ddb2b7001b387a26b0
    </xsd:appinfo>
    <xsd:documentation xml:lang="EN">
    catégorie
    </xsd:documentation>
    </xsd:annotation>
    </xsd:element>
    <xsd:element name="KATR5T" type="xsd:string">
    <xsd:annotation>
    <xsd:appinfo source="http://sap.com/xi/TextID">
    1be8ae7157d411dda25c001b387a26b0
    </xsd:appinfo>
    <xsd:documentation xml:lang="EN">
    désignation catégorie
    </xsd:documentation>
    </xsd:annotation>
    </xsd:element>
    <xsd:element name="KATR6" type="xsd:string">
    <xsd:annotation>
    <xsd:appinfo source="http://sap.com/xi/TextID">
    1be8ae7257d411ddab8b001b387a26b0
    </xsd:appinfo>
    <xsd:documentation xml:lang="EN">
    sous-segment
    </xsd:documentation>
    </xsd:annotation>
    </xsd:element>
    <xsd:element name="KATR6T" type="xsd:string">
    <xsd:annotation>
    <xsd:appinfo source="http://sap.com/xi/TextID">
    1be8ae7357d411dda876001b387a26b0
    </xsd:appinfo>
    <xsd:documentation xml:lang="EN">
    désignation sous-segment
    </xsd:documentation>
    </xsd:annotation>
    </xsd:element>
    <xsd:element name="Date" type="xsd:string">
    <xsd:annotation>
    <xsd:appinfo source="http://sap.com/xi/TextID">
    1be8ae7457d411dd8e6d001b387a26b0
    </xsd:appinfo>
    </xsd:annotation>
    </xsd:element>
    <xsd:element name="Promo_Nat" type="xsd:string">
    <xsd:annotation>
    <xsd:appinfo source="http://sap.com/xi/TextID">
    17ecb6e057fb11dd8725001b387a26b0
    </xsd:appinfo>
    <xsd:documentation xml:lang="EN">
    type de promo nationale
    </xsd:documentation>
    </xsd:annotation>
    </xsd:element>
    </xsd:sequence>
    </xsd:complexType>
    </xsd:element>
    </xsd:sequence>
    <xsd:attribute name="action" type="xsd:string" use="required">
    <xsd:annotation>
    <xsd:appinfo source="http://sap.com/xi/TextID">
    1be8ae6057d411dda41f001b387a26b0
    </xsd:appinfo>
    </xsd:annotation>
    </xsd:attribute>
    </xsd:complexType>
    <xsd:complexType name="DT_VT433_CLIENT_SAP_ET">
    <xsd:annotation>
    <xsd:appinfo source="http://sap.com/xi/TextID">
    8c8b5442649c11dda43d0050568b4d2e
    </xsd:appinfo>
    </xsd:annotation>
    <xsd:sequence>
    <xsd:element name="Statement1">
    <xsd:annotation>
    <xsd:appinfo source="http://sap.com/xi/TextID">
    74a974a057e611dd8490001b387a26b0
    </xsd:appinfo>
    </xsd:annotation>
    <xsd:complexType>
    <xsd:sequence>
    <xsd:element name="TBL_IN_TCLIENT" type="TBL_IN_TCLIENT">
    <xsd:annotation>
    <xsd:appinfo source="http://sap.com/xi/TextID">
    74a974a157e611ddc27c001b387a26b0
    </xsd:appinfo>
    </xsd:annotation>
    </xsd:element>
    </xsd:sequence>
    </xsd:complexType>
    </xsd:element>
    <xsd:element name="Statement2" minOccurs="0" maxOccurs="unbounded">
    <xsd:annotation>
    <xsd:appinfo source="http://sap.com/xi/TextID">
    74a974a257e611dd9747001b387a26b0
    </xsd:appinfo>
    </xsd:annotation>
    <xsd:complexType>
    <xsd:sequence>
    <xsd:element name="TBL_IN_ADV" type="TBL_IN_ADV">
    <xsd:annotation>
    <xsd:appinfo source="http://sap.com/xi/TextID">
    74a974a357e611ddadb8001b387a26b0
    </xsd:appinfo>
    </xsd:annotation>
    </xsd:element>
    </xsd:sequence>
    </xsd:complexType>
    </xsd:element>
    </xsd:sequence>
    </xsd:complexType>
    </xsd:schema>

  • OSM DataInstance JDBC Adapter: Invalid SQL issue....

    Hi,
    We are facing one issue while using the database adapter as DataInstance Behavior.
    Here are the scripts we used for the highlighted parameters:
    oms:datasource as XPATH: 'mslv/oms/oms1/internal/jdbc/DataSource'
    oms:sql as XQUERY:
    <instance name="OSM" xsi:type="externalInstanceType">
    <adapter>com.mslv.oms.view.rule.adapter.DatabaseAdapter</adapter>
    <parameter  name="oms:dataSource"> 'mslv/oms/oms1/internal/jdbc/DataSource'</parameter>
    <parameter name="oms:sql">
    "SELECT P.NODE_VALUE_TEXT FROM ORDERMGMT_OSMINSTALL.OM_ORDER_INSTANCE  P
    JOIN ORDERMGMT_OSMINSTALL.OM_ORDER_DATA_DICTIONARY PP
    ON P.DATA_DICTIONARY_ID=PP.DATA_DICTIONARY_ID
    where  PP.DATA_DICTIONARY_MNEMONIC='site_id' "
    </parameter>
    </instance>
    The following error logged in Logfile:
    <Feb 18, 2014 5:30:16 AM IST> <Error> <oms> <BEA-000000> <impl.j: failed to invoke adapter for externalInstanceType: name[DataInstance] class[com.mslv.oms.view.rule.adapter.DatabaseAdapter]
    com.mslv.oms.view.rule.adapter.AdapterException: java.sql.SQLSyntaxErrorException: ORA-00900: invalid SQL statement
            at com.mslv.oms.view.rule.adapter.DatabaseAdapter.retrieveInstance(Unknown Source)
            at oracle.communications.ordermanagement.rule.impl.j.getExternalInstance(Unknown Source)
            at oracle.communications.ordermanagement.rule.impl.j.findInstance(Unknown Source)
            at oracle.communications.ordermanagement.rule.impl.a.a(Unknown Source)
            at oracle.communications.ordermanagement.rule.impl.a.a(Unknown Source)
            Truncated. see log file for complete stacktrace
    Caused By: java.sql.SQLSyntaxErrorException: ORA-00900: invalid SQL statement
            at oracle.jdbc.driver.SQLStateMapping.newSQLException(SQLStateMapping.java:91)
            at oracle.jdbc.driver.DatabaseError.newSQLException(DatabaseError.java:133)
            at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:206)
            at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:455)
            at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:413)
            Truncated. see log file for complete stacktrace
    Can you pls suggest the remedy for this issue in the SQL? The same SQL runs well in TOAD and also shows the selected rows.
    Thanks in advance..

    Thanks Viktor.
    I have not tried the Webservice option due to the processing time to retrieve all the orders and then this particular field.
    But I have tried both lookup as well as calculate behaviors.
    Now I am neither getting any exception in the log nor the update reflects in my Webclient task view. Have your view gets updated with the calculate behavior?
    I am using OSM SDK version [7.0.3.745].
    My task_view.xml shows as following with lookup:
    <viewNode element="b_end_site_id">
        <editable>true</editable>  <minOccurs>1</minOccurs>
        <maxOccurs>1</maxOccurs>
            <viewRule xsi:type="dataInstanceRuleType">
                <description>DataInstance</description>
                <instance xsi:type="externalInstanceType"
                    name="DataInstance">
                    <adapter>com.mslv.oms.view.rule.adapter.DatabaseAdapter</adapter>
                    <parameter name="oms:dataSource">&#039;mslv/oms/oms1/internal/jdbc/DataSource&#039;</parameter>
                    <parameter name="oms:sql">&#039;SELECT P.NODE_VALUE_TEXT FROM ORDERMGMT_OSMINSTALL.OM_ORDER_INSTANCE  P
    JOIN ORDERMGMT_OSMINSTALL.OM_ORDER_DATA_DICTIONARY PP
    ON P.DATA_DICTIONARY_ID=PP.DATA_DICTIONARY_ID
    where  PP.DATA_DICTIONARY_MNEMONIC=?&#039;
    </parameter>
                    <parameter name="in:1">&#039;site_id&#039;</parameter>
                    <cache>
                        <scope>SYSTEM</scope>
                        <timeout>15000</timeout>
                        <maxSize>50</maxSize>
                    </cache>
                </instance>
            </viewRule>
            <viewRule xsi:type="lookupRuleType">
                <annotation>
                    <documentation>This behavior retrieves the inline XML defined for the data instance behavior and displays it  as a lookup field, which is the same as a dropdown list field,  in the Web client</documentation>
                </annotation>
                <description>LookUp</description>
                <itemset>
                    <nodeset>instance(&#039;DataInstance&#039;)/rowSet/row/NODE_VALUE_TEXT</nodeset>
                    <value name="Value" openSelectionSeverity="CRITICAL" sortOrder="0" sortDirection="ascending" hidden="false" position="0">
                        <node>text()</node>
                    </value>
                </itemset>
            </viewRule>
    </viewNode>
    With Calculate, it shows following:
    <viewNode element="a_end_site_id">
        <editable>true</editable>  <minOccurs>1</minOccurs>
        <maxOccurs>1</maxOccurs>
            <viewRule xsi:type="dataInstanceRuleType">
                <description>DataInstance</description>
                <instance xsi:type="externalInstanceType"
                    name="DataInstance">
                    <adapter>com.mslv.oms.view.rule.adapter.DatabaseAdapter</adapter>
                    <parameter name="oms:dataSource">&#039;mslv/oms/oms1/internal/jdbc/DataSource&#039;</parameter>
                    <parameter name="oms:sql">&#039;SELECT P.NODE_VALUE_TEXT FROM ORDERMGMT_OSMINSTALL.OM_ORDER_INSTANCE  P
    JOIN ORDERMGMT_OSMINSTALL.OM_ORDER_DATA_DICTIONARY PP
    ON P.DATA_DICTIONARY_ID=PP.DATA_DICTIONARY_ID
    where  PP.DATA_DICTIONARY_MNEMONIC=?&#039; </parameter>
                    <parameter name="in:1">&#039;site_id&#039;</parameter>
                    <cache>
                        <scope>SYSTEM</scope>
                        <timeout>15000</timeout>
                        <maxSize>50</maxSize>
                    </cache>
                </instance>
            </viewRule>
            <viewRule xsi:type="calculateRuleType">
                <description>Calculation</description>
                <calculation>instance(&#039;DataInstance&#039;)/rowSet/row/NODE_VALUE_TEXT/text()</calculation>
            </viewRule>
    </viewNode>

  • JDBC Receiver: FATAL ERROR document format: invalid level 4

    Hi,
    I am creating an IDOC -JDBC scenario .
    The XML created has action as delete.
    but in the comminication channel i am  getting an error which is
    Message processing failed. Cause: com.sap.aii.af.ra.ms.api.RecoverableException: Error processing request in sax parser: Error when executing statement for table/stored proc. 'T_SAP_WBS' (structure 'statement1'): java.sql.SQLException: FATAL ERROR document format: invalid level 4' found (structure 'statement1')
    does any one have any idea on this?
    Regards,
    Tarun Bahal

    Hi,
    The JDBC format which you are using is incorrect.....please maintain the format as mentioned in this document...there seems to be some mismatch
    http://help.sap.com/saphelp_nw04/helpdata/en/2e/96fd3f2d14e869e10000000a155106/content.htm
    By maintaining the format i mean:
    1) maintain the hierarchy as mentioned in the link
    2) maintain the case (upper/ lower) for the standard elements (you seem to be using statement1 instead of Statement)
    3) If there are no multiple stattements then have the name as Statement
    If still facing the problem....provide your structure in sdn
    Regards,
    Abhishek.

  • JDBC Adapter - transaction handling

    Hi,
    I have a question. I use graphical Message Mapping and standard documents formats for Receiver JDBC Adapter.
    Now I need to push a delete call and insert calls in one message looks like that one f.e.:
      <?xml version="1.0" encoding="UTF-8" ?>
    - <ns0:MT_CostcentreUpdate xmlns:ns0="http://rtl.de/xi/TransCostcenter">
    - <StmName>
    - <dbTableName action="DELETE">
      <table>KOSTENSTELLEN</table>
      </dbTableName>
    - <dbTableName action="INSERT">
      <table>KOSTENSTELLEN</table>
    - <access>
      <KOSTL>0000001000</KOSTL>
      <GUELTVON>2005-09-01</GUELTVON>
      <GUELTBIS>9999-12-31</GUELTBIS>
      <ABTEI>Test1</ABTEI>
      <VERAK>Name1</VERAK>
      <KHINR>K1000_1010</KHINR>
      <KTEXT>Test1</KTEXT>
      </access>
    - <access>
      <KOSTL>0000001001</KOSTL>
      <GUELTVON>2005-03-01</GUELTVON>
      <GUELTBIS>9999-12-31</GUELTBIS>
      <ABTEI>Test1</ABTEI>
      <VERAK>Name2</VERAK>
      <KHINR>K1000_1010</KHINR>
      <KTEXT>Test2</KTEXT>
      </access>
    - <access>
      <KOSTL>0000001006</KOSTL>
      <GUELTVON>2006-04-01</GUELTVON>
      <GUELTBIS>9999-12-31</GUELTBIS>
      <ABTEI>Test1</ABTEI>
      <VERAK>Name3</VERAK>
      <KHINR>K1000_1010</KHINR>
      <KTEXT>Test3</KTEXT>
      </access>
      </dbTableName>
    </StmName>
    </ns0:MT_CostcentreUpdate>
    Because I need to do both (delete & insert) in one transaction mode. But i will not work at the moment
    I always get error:
    com.sap.aii.af.ra.ms.api.RecoverableException: Error processing request in sax parser: Error when executing statement for table/stored proc. 'KOSTENSTELLEN' (structure 'StmName'): java.sql.SQLException: FATAL ERROR document format: invalid level 5' found (structure 'StmName')
    Thanks for any help
    Matt

    Hi Matthias,
    you need to have two statements (StmName), one for delete, one for insert.
    Regards,
    Udo

  • JDBC Adapter Level Error

    Hi Guys,
    i am getting below error at JDBC Adapter Level.
    Can any one please help me on how to resolve this issue.
    JDBC Message processing failed, due to Channel has reached maximum concurrency (5,000 concurrent messages) and no free resource found within 5,000 milliseconds; increase the maximum concurrency level
    MP: exception caught with cause com.sap.engine.interfaces.messaging.api.exception.MessagingException: Channel has reached maximum concurrency (5,000 concurrent messages) and no free resource found within 5,000 milliseconds; increase the maximum concurrency level
    Adapter Framework caught exception: Channel has reached maximum concurrency (5,000 concurrent messages) and no free resource found within 5,000 milliseconds; increase the maximum concurrency level
    Delivering the message to the application using connection JDBC_http://sap.com/xi/XI/System failed, due to: com.sap.engine.interfaces.messaging.api.exception.MessagingException: Channel has reached maximum concurrency (5,000 concurrent messages) and no free resource found within 5,000 milliseconds; increase the maximum concurrency level. Setting message to status failed.
    Thanks,
    Siva.

    Hi Raj,
      Thanks for ur help.
    created 4 JDBC communication channels in ID. This error i got in Production system. now i can not change in production environment. can u pls give me some other solution..?
    how i will set max concurency value as 3 ? and where i will set these parameter ..? can u pls send me step by step procedure pls...
    Regards,
    Siva.

  • JDBC receiver adapter: No 'action' attribute found in XML document

    Hi this is my target structure getting generated at the Receiver JDBC adapter
    I have checked the XML doc, still unable to figure out why in the RWB its showing the following error:
    "Message processing failed. Cause: com.sap.aii.af.ra.ms.api.RecoverableException: Error processing request in sax parser: No 'action' attribute found in XML document (attribute "action" missing or wrong XML structure)"
    <?xml version="1.0" encoding="UTF-8"?>
    <ns0:MT_IF001 xmlns:ns0="http://vodafone.com/xi/IF001">
    <Statement>
    <OPCO_VPC_PO action="UPDATE">
    <access>
    <SO>0060000090</SO>
    <SO_ITEM>000010</SO_ITEM>
    </access>
    <key>
    <OPCO_PO>0002002291</OPCO_PO>
    <OPCO_PO_ITEM>00010</OPCO_PO_ITEM>
    </key>
    </OPCO_VPC_PO>
    </Statement>
    </ns0:MT_IF001>
    Kindly Help !!
    Thanks !!

    Hi,
                 Clearly stating that no action attribute .So, please take a look at the structure please do like this at your Data Type specification
    <i><b><b><root>
      <StatementName1>
    <dbTableName action=”UPDATE” | “UPDATE_INSERT”>
        <table>realDbTableName</table>
    <access>
    <col1>val1</col1>
    <col2>val2new</col2>
    </access>
    <key1>
    <col2>val2old</col2>
    <col4>val4</col4>
    </key1>
    <key2>
    <col2>val2old2</col2>
    </key2>
    </dbTableName>
      </StatementName1>
    </root></b></b></i>
        refer the  following link
    http://help.sap.com/saphelp_nw04/helpdata/en/2e/96fd3f2d14e869e10000000a155106/content.htm
    **Assign points if you found helpful
    Regards.,
    V.Rangarajan

  • Invalid column name error in JDBC adapter

    Hi all,
    My scenario is Proxy->XI->JDBC.
    I get the following error in receiver JDBC  adapter.
    Unable to execute statement for table or stored procedure. 'Account_Master' (Structure 'STATEMENT') due to com.microsoft.sqlserver.jdbc.SQLServerException: Invalid column name 'A7'.
    There is no column by name A7 in the table nor there is a field by that name in the data type.
    Can anyone provide any help

    Hi Swatantra,
    compare your message-type with the database table!
    There must be difference!
    Regards Mario

  • 2 level schema import: cvc-complex-type.2.4.a: Invalid content was found...

    HI
    I'm writing an application that gathers xml documents into batches, sends these batches to translation, receives them from translation and unpacks them.
    My documents are ads. I have a schema (x1.xsd) describing them. This schema imports another schema (x2.xsd). None of these are controlled by me (I need a very good reason to change them).
    I have created a new schema (x.xsd) for my batches. This schma imports the ad schema (x1.xsd).
    When I validate an example ad (x1.xml) using the ad schema (x1.xsd), validation is OK. This is the same for XML Spy, oracle.xml.schemavalidator.XSDValidator and org.dom4j.io.SAXReader
    When I validate an example batch (x.xml) with the same ad data in the batch,
    XML Spy says: Unexpected element 'AD' in element 'ADS'. Expected: AD
    oracle.xml.schemavalidator.XSDValidator says: XML-24521: (Error) Element not completed: 'ADS'org.dom4j.io.SAXReader says: cvc-complex-type.2.4.a: Invalid content was found starting with element 'AD'. One of '{"x/translation":AD}' is expected.
    By changing my batch xml by removing xmlns="x/ad" from the AD tag and prefix all "x/ad"-owned tags with ad:, I can make all validators validate.
    But I don't see the reason for this, and thus have some problems telling the supplier that we need to change the schema and xml...
    Notice that I do not have the corresponding problem in the x1.xsd / x2.xsd relationship !!??
    Any suggestions will be appreciated.
    /Jornsen
    I enclose a copy of the files mentioned above:
    x.xml:
    <TRANSLATION_BATCH batchId="8" xmlns="x/translation" xmlns:ad="x/ad" xmlns:gp="x/groups"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:tl="x/translation" xsi:schemaLocation="x/translation
    C:\tmp\t.xsd">
      <LANGUAGES anattr="monoLanguageXmlAd">
        <LANG LangId="3"/>
        <LANG LangId="4"/>
      </LANGUAGES>
      <ADS>
        <AD adattr="hest" xmlns="x/ad" xmlns:gp="x/groups" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
          <LANGLIST>
            <LANG LangId="17"/>
          </LANGLIST>
          <ITEMLIST>
            <ITEM xmlns="x/groups" anattr="hund">
              <ITEM_INFO name="hest"/>
            </ITEM>
          </ITEMLIST>
        </AD>
      </ADS>
    </TRANSLATION_BATCH>x1.xml:
    <AD adattr="hest" xmlns="x/ad" xmlns:gp="x/groups" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="x/ad C:\tmp\t1.xsd">
      <LANGLIST>
        <LANG LangId="17"/>
      </LANGLIST>
      <ITEMLIST>
        <ITEM xmlns="x/groups" anattr="hund">
          <ITEM_INFO name="hest"/>
        </ITEM>
      </ITEMLIST>
    </AD>x.xsd:
    <xs:schema targetNamespace="x/translation" attributeFormDefault="unqualified" elementFormDefault="qualified"
    xmlns="x/translation" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:tl="x/translation" xmlns:ad="x/ad">
      <xs:import namespace="x/ad" schemaLocation="t1.xsd"/>
      <xs:element name="TRANSLATION_BATCH">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="LANGUAGES">
              <xs:complexType>
                <xs:sequence>
                  <xs:element name="LANG" maxOccurs="unbounded">
                    <xs:complexType>
                      <xs:attribute name="LangId" type="xs:string" use="required"/>
                    </xs:complexType>
                  </xs:element>
                </xs:sequence>
                <xs:attribute name="anattr" type="xs:string"/>
              </xs:complexType>
            </xs:element>
            <xs:element name="ADS">
              <xs:complexType>
                <xs:sequence>
                  <xs:element name="AD" type="ad:ADType"/>
                </xs:sequence>
              </xs:complexType>
            </xs:element>
          </xs:sequence>
          <xs:attribute name="batchId" type="xs:string" use="required"/>
        </xs:complexType>
      </xs:element>
    </xs:schema>x1.xsd:
    <xs:schema targetNamespace="x/ad" attributeFormDefault="unqualified" elementFormDefault="qualified" xmlns="x/ad"
    xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:ad="x/ad" xmlns:gp="x/groups">
      <xs:import namespace="x/groups" schemaLocation="t2.xsd"/>
      <xs:element name="AD" type="ad:ADType">
      </xs:element>
      <xs:complexType name="ADType">
        <xs:sequence>
          <xs:element name="LANGLIST" type="ad:LANGLISTType">
          </xs:element>
          <xs:element name="ITEMLIST" type="gp:ITEMLISTType">
          </xs:element>
        </xs:sequence>
        <xs:attribute name="adattr" type="xs:string" use="optional"/>
      </xs:complexType>
      <xs:complexType name="LANGType">
        <xs:attribute name="LangId" type="xs:int" use="required"/>
      </xs:complexType>
      <xs:complexType name="LANGLISTType">
        <xs:sequence>
          <xs:element name="LANG" type="ad:LANGType" maxOccurs="unbounded"/>
        </xs:sequence>
      </xs:complexType>
    </xs:schema>x2.xsd:
    <xs:schema xmlns="x/groups" xmlns:xs="http://www.w3.org/2001/XMLSchema" targetNamespace="x/groups"
    elementFormDefault="qualified" attributeFormDefault="unqualified">
      <xs:complexType name="ITEMLISTType">
        <xs:sequence>
          <xs:element name="ITEM" minOccurs="0" maxOccurs="unbounded">
            <xs:complexType>
              <xs:sequence>
                <xs:element name="ITEM_INFO" maxOccurs="unbounded">
                  <xs:complexType>
                    <xs:attribute name="name" type="xs:string" use="required"/>
                  </xs:complexType>
                </xs:element>
              </xs:sequence>
              <xs:attribute name="anattr" type="xs:string"/>
            </xs:complexType>
          </xs:element>
        </xs:sequence>
      </xs:complexType>
    </xs:schema>Message was edited by:
    Jornsen - formatting
    Message was edited by:
    Jornsen

    Hi Linyin,
    Please refer to: http://middlewaremagic.com/weblogic/?p=2034
    The Problem is missing element <web-resource-name> in your "web.xml" file..... which must be a Unique name of your Resource set which u want to make secure.....
    <security-constraint>
    <web-resource-collection>
    *<web-resource-name>MySecureResources</web-resource-name>*
    <description>Some Description</description>
    <url-pattern>/*</url-pattern>
    <http-method>GET</http-method>
    <http-method>POST</http-method>
    </web-resource-collection>
    <auth-constraint>
    <role-name>admin</role-name>
    </auth-constraint>
    </security-constraint>
    <login-config>
    <auth-method>BASIC</auth-method>
    </login-config>
    <security-role>
    <role-name>admin</role-name>
    </security-role>
    Thanks
    Jay SenSharma
    http://middlewaremagic.com/weblogic   (Middleware Magic Is Here)

  • Table name in Receiver JDBC Adapter

    Hi All,
    I am using receiver JDBC adapter.
    But table name consist of " like BPC."#II" .
    After mapping table name becomes BPC.&quot;#II&quot; .
    I am getting error while pulling data from DB.
    Is the table name creating a problem.
    Please remedy of this if you have come across such scenario.
    Regards
    Piyush

    Hi Piyush,
    All that i could get from the SAP Help regarding JDBC Adapters are these links where i never found anything much regarding the table name.anyways just go through these links and see if you find anything useful.
    http://help.sap.com/bp_bpmv130/Documentation/Planning/XIUnicodeGuide030411.pdf
    <a href="http://help.sap.com/saphelp_nw04/helpdata/en/b0/676b3c255b1475e10000000a114084/content.htm">Configuring the Receiver JDBC Adapter</a>
    <a href="http://help.sap.com/saphelp_nw04/helpdata/en/cf/406642ea59c753e10000000a1550b0/content.htm">Mapping Lookups</a>
    <a href="http://help.sap.com/saphelp_nw04/helpdata/en/22/b4d13b633f7748b4d34f3191529946/content.htm">JDBC Adapter</a>
    <a href="http://help.sap.com/saphelp_nw04/helpdata/en/64/ce4e886334ec4ea7c2712e11cc567c/content.htm">Configuring the Receiver JDBC Adapter - part 2</a>
    This is all i got from the help files, anyways you can also go through those links and see if you find anything else useful.
    - Escape Symbol for Apostrophe
    The apostrophe character (‘) is a reserved character in SQL syntax and is therefore replaced by an escape character if it occurs within value strings. This replacement character can be database-specific. Typical replacement characters are \’ or ’’(default value). If a character occurs that is invalid for the database being used, the adapter triggers an error message (an SQL exception) concerning the SQL syntax that is generated by the database.
    - Column Name Delimiter
    Depending on the database being used, column names can be enclosed by a special delimiter character, for example, if the names can contain special characters (such as ”). This character can be specified at this point. The default setting is no delimiter character. If a character occurs that i
    Also check if there are notes in the service market place related to the same.
    Regards,
    abhy
    Message was edited by: Abhy Thomas

  • Error in calling stored procedure in sender JDBC adapter

    Hi Experts,
    I am working on MySQl to SAP scenario. I have to use stored procedure in sender JDBC adapter.
    I am calling SP as fallows: execute proc_dtdc_booking_interface_sd
    But it returned following error,
    Database-level error reported by JDBC driver while executing statement 'execute proc_dtdc_booking_interface_sd'. The JDBC driver returned the following error message: 'java.sql.SQLException: Unknown prepared statement handler (proc_dtdc_booking_interface_sd) given to EXECUTE'. For details, contact your database server vendor.
    the way i called SP is correct ??
    please suggest me how to resolve the issue ??
    Regards,
    Bhuvan.

    Hi
    Below is the code , when we are using this code directly in the mySQl command promp, it fetches 10 record but when the same code is called through XI adapter  its fetching only one record
    DELIMITER $$
    DROP PROCEDURE IF EXISTS `proc_dtdc_booking_interface_sd` $$
    CREATE DEFINER=`root`@`localhost` PROCEDURE `proc_dtdc_booking_interface_sd`()
    BEGIN
    declare done int(1);
    declare v_dsr_booked_by char(1) ;
    declare v_dsr_branch_code char(3) ;
    declare v_dsr_cust_code varchar(7) ;
    declare v_dsr_booking_date date ;
    declare v_dsr_cnno char(9) ;
    declare v_dsr_cn_type char(3) ;
    declare v_dsr_cn_weight decimal(8,3) ;
    declare v_dsr_dest char(3) ;
    declare v_dsr_mode char(2) ;
    declare v_dsr_amt decimal(10,2) ;
    declare v_dsr_dox char(1) ;
    declare v_office_code char(3) ;
    declare v_dsr_status char(1) ;
    declare v_dsr_remarks varchar(25) ;
    declare v_dsr_refno varchar(20) ;
    declare v_dsr_transmf_no varchar(10) ;
    declare v_dsr_trans_status_xi char(1) ;
    declare v_ndsr_cnno char(9) ;
    declare v_ndsr_product char(3) ;
    declare v_ndsr_sercharge decimal(8,3) ;
    declare v_ndsr_ins_amt decimal(8,3) ;
    declare v_ndsr_others decimal(8,3) ;
    declare v_dr_amt_type decimal(2,0) ;
    declare v_dr_extra_amt decimal(10,2) ;
    declare v_sales_document varchar(2) ;
    declare bookcur CURSOR for
    SELECT *
    FROM dtdcdb_rw.dtdc_booking_interface_sd
    LIMIT 10;
    DECLARE CONTINUE HANDLER FOR NOT FOUND SET DONE=1;
    set done=0;
    OPEN bookcur;
    bookloop: loop
    FETCH bookcur
    INTO
    v_dsr_booked_by ,
    v_dsr_branch_code,
    v_dsr_cust_code,
    v_dsr_booking_date,
    v_dsr_cnno,
    v_dsr_cn_type,
    v_dsr_cn_weight,
    v_dsr_dest,
    v_dsr_mode,
    v_dsr_amt,
    v_dsr_dox,
    v_office_code,
    v_dsr_status,
    v_dsr_remarks,
    v_dsr_refno,
    v_dsr_transmf_no,
    v_dsr_trans_status_xi,
    v_ndsr_cnno,
    v_ndsr_product,
    v_ndsr_sercharge,
    v_ndsr_ins_amt,
    v_ndsr_others,
    v_dr_amt_type,
    v_dr_extra_amt,
    v_sales_document ;
    IF DONE=1 THEN
    LEAVE bookloop;
    END IF;
    select
    v_dsr_booked_by As dsr_booked_by,
    v_dsr_branch_code As dsr_branch_code,
    v_dsr_cust_code As dsr_cust_code,
    v_dsr_booking_date As dsr_booking_date,
    v_dsr_cnno As dsr_cnno,
    v_dsr_cn_type As dsr_cn_type,
    v_dsr_cn_weight As dsr_cn_weight,
    v_dsr_dest As dsr_dest,
    v_dsr_mode As dsr_mode,
    v_dsr_amt As dsr_amt,
    v_dsr_dox As dsr_dox,
    v_office_code As office_code,
    v_dsr_status As dsr_status,
    v_dsr_remarks As dsr_remarks,
    v_dsr_refno As dsr_refno,
    v_dsr_transmf_no As dsr_transmf_no,
    v_dsr_trans_status_xi As dsr_trans_status_xi,
    v_ndsr_cnno As ndsr_cnno,
    v_ndsr_product As ndsr_product,
    v_ndsr_sercharge As ndsr_sercharge,
    v_ndsr_ins_amt As ndsr_ins_amt,
    v_ndsr_others As ndsr_others,
    v_dr_amt_type As dr_amt_type,
    v_dr_extra_amt As dr_extra_amt,
    v_sales_document As sales_document;
    update dtdcdb_rw.dsr_table
    set dsr_trans_status_xi='T'
    where dsr_cnno=v_dsr_cnno;
    end loop;
    SELECT *
    FROM dtdcdb_rw.dtdc_booking_interface_sd
    LIMIT 10;
    END $$
    DELIMITER ;
    Please help
    Regards
    Bhuvan

  • Strange behavior of JDBC Adapter

    Hello everybody!
    I found a pretty strange behaviour of JDBC Receiver Adapter during problems with network (big thanks to our Basis). According to the status in Adapter Engine, the message wasn't processed. In the database I can see these inserts. However, there are more lines in the XML than lines in the database. So, how it is possible that adapter commits only part of inserts. Logs and settings see below.
    My XML includes a SQL_DML statement and a few INSERT statements, each contains many inserts.
    It looks like that:
    <?xml version="1.0" ?>
    <MyMessage>
        <statement>
            <table1 action="SQL_DML">
                <access>here I delete old values</access>
            </table1>
        </statement>
        <statement>
            <table2 action="INSERT">
                <access>some data</access>
            </table2>
        </statement>
        <statement>
            <table3 action="INSERT">
                <access>some data</access>
            </table3>
        </statement>
    </MyMessage>
    Part of adapter log is here:
    Information
    Message successfully put into the queue
    Information
    The message was successfully retrieved from the receive queue
    Information
    Message status set to DLNG
    Information
    Delivering to channel: Adapter_Name
    Information
    MP: processing local module localejbs/CallSapAdapter
    Information
    Receiver JDBC adapter: processing started; QoS required: ExactlyOnce
    Information
    JDBC Adapter Receiver Channel Adapter_Name: Processing started; party / service BS
    Information
    Database request processed successfully
    Error
    MP: exception caught with message Ack handling failed: creation of messageFactory failed: com.sap.engine.interfaces.messaging.api.exception.MessagingException: Connection JDBC_http://sap.com/xi/XI/System is currently not started.
    Error
    Exception caught by adapter framework: Ack handling failed: creation of messageFactory failed: com.sap.engine.interfaces.messaging.api.exception.MessagingException: Connection JDBC_http://sap.com/xi/XI/System is currently not started.
    Error
    Delivery of the message to the application using connection JDBC_http://sap.com/xi/XI/System failed, due to: com.sap.engine.interfaces.messaging.api.exception.MessagingException: java.lang.Exception: Ack handling failed: creation of messageFactory failed: com.sap.engine.interfaces.messaging.api.exception.MessagingException: Connection JDBC_http://sap.com/xi/XI/System is currently not started.
    Information
    Message status set to WAIT
    Information
    The asynchronous message was successfully scheduled to be delivered at ...
    Information
    Message status set to TBDL
    Information
    Retrying to deliver message to the application. Retry: 1
    Information
    The message was successfully retrieved from the receive queue
    Information
    Message status set to DLNG
    Information
    Delivering to channel: Adapter_Name
    Information
    MP: processing local module localejbs/CallSapAdapter
    Information
    Receiver JDBC adapter: processing started; QoS required: ExactlyOnce
    Information
    JDBC Adapter Receiver Channel Adapter_Name: Processing started; party / service BS
    Error
    Unable to execute statement for table or stored procedure. 'Table' (Structure 'statement') due to com.microsoft.sqlserver.jdbc.SQLServerException: Violation of PRIMARY KEY constraint 'fields'. Cannot insert duplicate key in object 'Table'. The duplicate key value is (field values).
    Error
    JDBC message processing failed; reason Error processing request in sax parser: Error when executing statement for table/stored proc. 'Table' (structure 'statement'): com.microsoft.sqlserver.jdbc.SQLServerException: Violation of PRIMARY KEY constraint 'fields'. Cannot insert duplicate key in object 'Table'. The duplicate key value is (field values).
    Error
    MP: exception caught with cause com.sap.engine.interfaces.messaging.api.exception.MessagingException: Error processing request in sax parser: Error when executing statement for table/stored proc. 'Table' (structure 'statement'): com.microsoft.sqlserver.jdbc.SQLServerException: Violation of PRIMARY KEY constraint 'fields'. Cannot insert duplicate key in object 'Table'. The duplicate key value is (field values).
    Error
    Exception caught by adapter framework: Error processing request in sax parser: Error when executing statement for table/stored proc. 'Table' (structure 'statement'): com.microsoft.sqlserver.jdbc.SQLServerException: Violation of PRIMARY KEY constraint 'fields'. Cannot insert duplicate key in object 'Table'. The duplicate key value is (field values).
    Error
    Delivery of the message to the application using connection JDBC_http://sap.com/xi/XI/System failed, due to: com.sap.engine.interfaces.messaging.api.exception.MessagingException: Error processing request in sax parser: Error when executing statement for table/stored proc. 'Table' (structure 'statement'): com.microsoft.sqlserver.jdbc.SQLServerException: Violation of PRIMARY KEY constraint 'fields'. Cannot insert duplicate key in object 'Table'. The duplicate key value is (field values).
    Adapter settings:
    Maximum concurrency: 20
    Persistence: Local
    Conflict Resolution: Redo
    Advanced Mode: On
    Number of Retries of Database Transaction on SQL Error: 0
    Transaction Isolation Level: serializable

    Dear All,
    Follow the steps below to resolve the "Connection JDBC_http://sap.com/xi/XI/System is currently not started." issue:
    1. Log in to NWA
    2. Navigate to Operations -> Systems -> Start & Stop
    3. Click on Java Services tab
    4. Search  the service Service "XPI Adapter: JDBC"
    5. Select the service XPI Adapter: JDBC and click on Restart button
    With the restart of JDBC Service in NWA, the channels should start working properly
    Regards,
    Shreyansh

  • JDBC Adapter - Sender - Stored Procedure - SQLException Error

    Hi,
         I have created one stored procedure in our Oracle database. I give below that stored procedure.
    CREATE OR REPLACE PROCEDURE sp_stud
    IS
        l_row student%ROWTYPE;
        TYPE t_ref_cursor IS REF CURSOR RETURN l_row%TYPE;
        c_cursor t_ref_cursor;
    BEGIN
        OPEN c_cursor FOR
         SELECT *
         FROM student where readflag= ' ';
        LOOP
         FETCH c_cursor into l_row;
            EXIT WHEN c_cursor%NOTFOUND;
            DBMS_OUTPUT.PUT_LINE(l_row.id || ' : ' || l_row.name);
        END LOOP;
    close c_cursor;
    END;
    This is a procedure to retreive rows from the table student which is having the field read_flag = ' '; (Student table contains the fields ID, NAME, BIRTHYEAR, BIRTHMONTH, READFLAG).
    In JDBC Sender Adapter, I set the values for the following fields under Parameters tab.
    Query SQL Statement: EXECUTE sp_stud
    Update SQL Statement: UPDATE student SET readflag = 'Y' where readflag = ' '
    The scenario is every 5 minutes JDBC adapter checks the table whether any new row is inserted, if it is inserted and commit, it will send that record to File. This is the Scenario.
    In Runtime Workbench, Communication Channel Monitoring, it shows the following error, when JDBC Polls the table.
    Database-level error reported by JDBC driver while executing statement 'EXECUTE sp_stud'. The JDBC driver returned the following error message: 'java.sql.SQLException: ORA-00900: invalid SQL statement '. For details, contact your database server vendor.
    Note : If we execute the Stored Procedure ad SQL command level, it works fine.
    Kindly help friends to solve this, where the error is happened.
    Thanking you,
    Kind regards,
    Jegatheeswaran P.

    Hi,
    Not a Database expert. But , in case you have not seen the note pointed by Deepu,
    <i> The JDK 1.1.x, 1.2 and 1.3 versions (classes111. zip, classes12.zip, classes12.jar) of the driver are not compatible with the SAP XI JDBC Adapter. Use the JDK 1.4 driver (ojdbc14.jar) instead. For details, refer to Oracle MetaLink note # 203849.1.
               <b>Invoking Oracle stored procedures from within a JDBC sender channel is only possible for Oracle DBMS versions >= 10.2.x using so-called table functions:</b>
               Example:
    pkg1 -
    CREATE PACKAGE pkg1 AS
      TYPE numset_t IS TABLE OF NUMBER;
      FUNCTION f1(x NUMBER) RETURN numset_t PIPELINED;
    END pkg1;
    CREATE PACKAGE BODY pkg1 AS
    -- FUNCTION f1 returns a collection of elements (1,2,3,... x)
    FUNCTION f1(x NUMBER) RETURN numset_t PIPELINED IS
      BEGIN
        FOR i IN 1..x LOOP
          PIPE ROW(i);
        END LOOP;
        RETURN;
      END;
    END pkg1;
    pkg1 -
            <b>   This function has to be invoked from the sender channel configuration (SELECT statement) as follows:
               SELECT * FROM TABLE(pkg1.f1(5));</i></b>
    Check this, confirm your Oracle DB version and then use the Table Functions as described in this note.
    A Database Expert wil be able to crack this for sure.
    Regards
    Bhavesh

  • Executing an Oracle Stored Procedure from Sender JDBC adapter

    I could really use some help from someone who had done this before. 
    I've read the help about using the JDBC sender adapter, but it's not helping enough.
    I found this line: "Specify an SQL EXECUTE statement to execute a stored procedure, which contains exactly one SELECT statement.
    The expression must correspond to the SQL variant supported by the relevant JDBC driver. It can also contain table JOINs."
    That's definately what we want to do, but we can't figure out the syntax.
    The procedure in oracle looks like this:
    CREATE OR REPLACE PROCEDURE test_ref_cursor
    ( cur_generic IN OUT result_sets.cur_generic)
    as
    BEGIN
    Open cur_generic for
    select
       proposal_number,
       to_char(sequence_number),
       column_name,
       column_value,
       update_timestamp,
       update_user
       from
       coeus.sap_test;
    END test_ref_cursor;
    And we have tried every kind of statement we can think of, but the file adapter always gives us an "invalid sql statement" error.
    Does anyone know what syntax we need to put in the "Query SQL Statement" in the JDBC sender adapter in order to call this procedure?  Or is there something wrong with the procedure that is causing the error?
    <i>I will absolutely return and give points, but PLEASE read my whole post before answering and do not just link me to or quote the help for configuring a sender JDBC adapter or blogs that are about the JDBC adapter in general but do not deal with the issues I am having. Thank you.</i>

    Hi Vanda,
    Unfortunately, the sender JDBC adapter does not support Oracle's store procedure/function.  Unlike stored procedures from other database vendors, Oracle returns a cursor, not a resultset.  The sender JDBC adapter must send a resultset to XI.
    There are 2 possible ways you can accomplish this:
    1.  Use BPM and call the Oracle stored procedure using a receiver adapter via a asynch-synch bridge.
    2.  Develop a user-module for the adapter, which can be used with a sender adapter.
    Thanks
    Prasad

Maybe you are looking for

  • Regarding Generic Object Services (GOS)

    Hi Is there any Tcode/Std. Report where I can see the document attached through Generic Object Services (GOS).And which tables are involved in Generic Object Services (GOS).Whenever I attach document entry goes in SOOD table.What are other tables for

  • Bluetooth connection notification sound

    Does anyone know how to turn off the notification sound which plays when the Razr Maxx bluetooth connects with a car system? It is extremely annoying to have this play every time you get in the car and start it especially if you are running errands a

  • Execution Time Format

    I want to get rid of the decimal portion of the Execution Time that prints on my test report. At a minimum, I want it to display only one significant digit. Below is the expression that is found in the reportgen_txt.seq for the f(x)Add Execution Time

  • Calculations and crosstab view customization

    hi All, i am a beginner at olapi and BI beans. i am trying to understand if we can use bi beans to meet our users requirements. i have some questions here. 1. lets take sales measure. i'd like to define new measure or calculation that shows differenc

  • Unknon error on e update softwar

    Computer say have a Twitter update and when i enter id receive Unknown Error.