DbAdapter invocation issue

Hello everyone,
I have a stored procedure in a SqlServer 2012 database, as follows:
CREATE PROCEDURE [dbo].[SP_GET_PERSONS]
@Id varchar(15), @FirstName varchar(30), @LastName varchar(30)
WITH EXEC AS CALLER
AS
BEGIN
     Declare @SQL VarChar(MAX)
  CREATE TABLE #records
       Id int,
       FstName varchar(50),
       LstName varchar(50)
  insert into #records
  select Id, First_Name, Last_Name
  from Persons
  where First_Name like '%'+@FirstName+'%'
    or  Last_Name like '%'+@LastName+'%'
    or  Id like '%'+@Id+'%'
  declare @query nvarchar(MAX)
  set @query = 'select Id, FstName, LstName from #records'
  execute (@query)
END
GOWhen I execute this SP in a SQL client (such as squirrel), it returns rows successfuly.
From this, I have created a JCA dbadapter in order to use it in OSB. Then, I generated a business service based in the JCA file.
So far so good!
When I test the business service with the same input tested in the sql client, I don't get any error neither any result. I simply get this:
<soap-env:Envelope      xmlns="http://schemas.xmlsoap.org/soap/envelope/" xmlns:soap-env="http://schemas.xmlsoap.org/soap/envelope/">
<soap-env:Body>
<OutputParameters      xmlns="http://xmlns.oracle.com/pcbpel/adapter/db/sp/my_sp_namespace" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"/>
</soap-env:Body>
</soap-env:Envelope>However, if I change the stored procedure to simply perform the select statement instead of the execute with the temporary table inside, both the execution in the sql client and the invocation to the business service returns the expected result!
<soap-env:Envelope      xmlns="http://schemas.xmlsoap.org/soap/envelope/" xmlns:soap-env="http://schemas.xmlsoap.org/soap/envelope/">
<soap-env:Body>
<OutputParameters      xmlns="http://xmlns.oracle.com/pcbpel/adapter/db/sp/my_sp_namespace" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<RowSet>
<Row>
<Column      name="Id" sqltype="int">1</Column>
<Column      name="First_Name" sqltype="varchar">James</Column>
<Column      name="Last_Name" sqltype="varchar">Monty Python</Column>
</Row>
</RowSet>
</OutputParameters>
</soap-env:Body>
</soap-env:Envelope>I have tested this issue with both Oracle's driver (weblogic.jdbc.sqlserver.SQLServerDriver) and MS driver (com.microsoft.sqlserver.jdbc.SQLServerDriver)
Does anybody know why this happen? Any tips?
Kind regards and thanks in advance,
Bagagem

Hi Jose,
the DbAdapter's db.jca file contains a property MappingsMetaDataURL, which points to an Oracle TopLink file ending in or-mappings.xml.
The first entry in this xml file is (for 11.1.1.2.0):
<toplink:object-persistence version="Oracle TopLink - 11g Release 1 (11.1.1.2.0) (Build 091016)" xmlns:opm="http://xmlns.oracle.com/ias/xsds/opm" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:toplink="http://xmlns.oracle.com/ias/xsds/toplink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
Starting in 11.1.1.3.0, whenever you create an or-mappings.xml, we now use the EclipseLink schema, which is the open source version of TopLink. So the head element looks like this:
<object-persistence xmlns="http://www.eclipse.org/eclipselink/xsds/persistence" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:eclipselink="http://www.eclipse.org/eclipselink/xsds/persistence" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="Eclipse Persistence Services - 2.1.2.v20101104-r8475">
11.1.1.3.0 can read either schema. However 11.1.1.2.0 can only read the first one. Maybe what happened is you are trying to run on 11.1.1.2.0 a process that was at least partially modeled on 11.1.1.3.0.
Failing that maybe your *or_mappings.xml file is corrupt somehow, and you should run through the DbAdapter wizard in edit mode to hit finish and regenerate it, or try doing so.  You may need to recreate it and redeploy.  Also make sure you are not using an 11.1.1.3.0 JDev with 11.1.1.2.0.
Thanks
Steve

Similar Messages

  • Soa Suite 11g DbAdapter invocation error message

    Hi All,
    Morning,...We are trying to make connection to Oracle 11g database using Db adapter in Soa 11g but getting this error message during invocation :
    Database platform org.eclipse.persistence.platform.database.Database Platform is not supported ..An attempt was made to use an unsupported database platform
    Steps mentioned here :
    1.Creation of the Data Source - general tab:
    Name: demo
    JNDI Name: jdbc/demo
    Under the Connection POOL tab : enter the url & also mention the driver class name : oracle.jdbc.OracleDriver, enter the user login details/pwd etc.
    2.
    Deployments --> DBAdapter --> Configuration --> outbound connection pools -- here created a new entry with Connection Factory name :javax.resource.cci.ConnectionFactory
    JNDI NAME : eis/DB/demo --> Then SAVE it.
    Now click this JNDI entry again created in Step # 2 above --> Properties tab -->
    enter the dataSourceName : jdbc/demo
    platformClassName : Now could someone please let us know what exactly do we need to mention here ?_
    Currently this value is null/blank, could this be the reason why we are getting this error message and how could we resolve this ..
    With Regards

    Hi,
    Put the jdbc/demo under xADataSourceName.
    The value for platformClassName is: org.eclipse.persistence.platform.database.Oracle10Platform
    After each value you enter, press ENTER. In the end save.
    Don't forget to redeploy the DbAdapter - check this box under deployment and press the update button.
    Arik

  • DBAdapter serious issue

    Sorry but I cant use this adapter here. Its very important to my job but we failed. I tried everything including redeploy adapter and reconfiguring it.
    A operação selecionada execute não pôde ser chamada.
    Ocorreu uma exceção ao chamar a operação de serviço da web. Veja mais detalhes nos logs.
    oracle.sysman.emSDK.webservices.wsdlapi.SoapTestException: Exception occured when binding was invoked.<br>Exception occured during invocation of JCA binding: "JCA Binding execute of Reference operation 'guiaServiceTesteSelect' failed due to: Could not create/access the TopLink Session.<br>This session is used to connect to the datastore.<br>Caused by Exception [TOPLINK-25004] (Oracle TopLink - 11g Release 1 (11.1.1.2.0) (Build 091016)): oracle.toplink.exceptions.XMLMarshalException<br>Exception Description: An error occurred unmarshalling the document<br>Internal Exception: Exception [TOPLINK-27101] (Oracle TopLink - 11g Release 1 (11.1.1.2.0) (Build 091016)): oracle.toplink.platform.xml.XMLPlatformException<br>Exception Description: An error occurred while parsing the document.<br>Internal Exception: oracle.xml.parser.v2.XMLParseException: Can not find definition for element 'object-persistence'.<br>". <br>The invoked JCA adapter raised a resource exception.<br>Please examine the above error message carefully to determine a resolution.<br><br>
    java.lang.Exception: oracle.sysman.emSDK.webservices.wsdlapi.SoapTestException: Exception occured when binding was invoked.
    Exception occured during invocation of JCA binding: "JCA Binding execute of Reference operation 'guiaServiceTesteSelect' failed due to: Could not create/access the TopLink Session.
    This session is used to connect to the datastore.
    Caused by Exception [TOPLINK-25004] (Oracle TopLink - 11g Release 1 (11.1.1.2.0) (Build 091016)): oracle.toplink.exceptions.XMLMarshalException
    Exception Description: An error occurred unmarshalling the document
    Internal Exception: Exception [TOPLINK-27101] (Oracle TopLink - 11g Release 1 (11.1.1.2.0) (Build 091016)): oracle.toplink.platform.xml.XMLPlatformException
    Exception Description: An error occurred while parsing the document.
    Internal Exception: oracle.xml.parser.v2.XMLParseException: Can not find definition for element 'object-persistence'.
    The invoked JCA adapter raised a resource exception.
    Please examine the above error message carefully to determine a resolution.
         at oracle.sysman.emas.model.wsmgt.WSTestModel.invokeOperation(WSTestModel.java:575)
         at oracle.sysman.emas.view.wsmgt.WSView.invokeOperation(WSView.java:381)
         at oracle.sysman.emas.view.wsmgt.WSView.invokeOperation(WSView.java:298)
         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
         at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
         at java.lang.reflect.Method.invoke(Method.java:597)
         at com.sun.el.parser.AstValue.invoke(AstValue.java:157)
         at com.sun.el.MethodExpressionImpl.invoke(MethodExpressionImpl.java:283)
         at org.apache.myfaces.trinidadinternal.taglib.util.MethodExpressionMethodBinding.invoke(MethodExpressionMethodBinding.java:53)
         at org.apache.myfaces.trinidad.component.UIXComponentBase.broadcastToMethodBinding(UIXComponentBase.java:1245)
         at org.apache.myfaces.trinidad.component.UIXCommand.broadcast(UIXCommand.java:183)
         at oracle.adf.view.rich.component.fragment.ContextSwitchingComponent$1.run(ContextSwitchingComponent.java:90)
         at oracle.adf.view.rich.component.fragment.ContextSwitchingComponent._processPhase(ContextSwitchingComponent.java:309)
         at oracle.adf.view.rich.component.fragment.ContextSwitchingComponent.broadcast(ContextSwitchingComponent.java:94)
         at oracle.adf.view.rich.component.fragment.UIXInclude.broadcast(UIXInclude.java:102)
         at oracle.adf.view.rich.component.fragment.ContextSwitchingComponent$1.run(ContextSwitchingComponent.java:90)
         at oracle.adf.view.rich.component.fragment.ContextSwitchingComponent._processPhase(ContextSwitchingComponent.java:309)
         at oracle.adf.view.rich.component.fragment.ContextSwitchingComponent.broadcast(ContextSwitchingComponent.java:94)
         at oracle.adf.view.rich.component.fragment.UIXInclude.broadcast(UIXInclude.java:96)
         at javax.faces.component.UIViewRoot.broadcastEvents(UIViewRoot.java:475)
         at javax.faces.component.UIViewRoot.processApplication(UIViewRoot.java:756)
         at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl._invokeApplication(LifecycleImpl.java:698)
         at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl._executePhase(LifecycleImpl.java:285)
         at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:177)
         at javax.faces.webapp.FacesServlet.service(FacesServlet.java:265)
         at weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:227)
         at weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:125)
         at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:292)
         at weblogic.servlet.internal.TailFilter.doFilter(TailFilter.java:26)
         at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
         at oracle.adfinternal.view.faces.webapp.rich.RegistrationFilter.doFilter(RegistrationFilter.java:97)
         at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl$FilterListChain.doFilter(TrinidadFilterImpl.java:420)
         at oracle.adfinternal.view.faces.activedata.AdsFilter.doFilter(AdsFilter.java:60)
         at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl$FilterListChain.doFilter(TrinidadFilterImpl.java:420)
         at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl._doFilterImpl(TrinidadFilterImpl.java:247)
         at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl.doFilter(TrinidadFilterImpl.java:157)
         at org.apache.myfaces.trinidad.webapp.TrinidadFilter.doFilter(TrinidadFilter.java:92)
         at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
         at oracle.help.web.rich.OHWFilter.doFilter(Unknown Source)
         at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
         at oracle.sysman.emSDK.license.LicenseFilter.doFilter(LicenseFilter.java:101)
         at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
         at oracle.adf.model.servlet.ADFBindingFilter.doFilter(ADFBindingFilter.java:191)
         at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
         at oracle.sysman.emas.fwk.MASConnectionFilter.doFilter(MASConnectionFilter.java:41)
         at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
         at oracle.adf.library.webapp.LibraryFilter.doFilter(LibraryFilter.java:159)
         at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
         at oracle.sysman.eml.app.AuditServletFilter.doFilter(AuditServletFilter.java:179)
         at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
         at oracle.sysman.eml.app.EMRepLoginFilter.doFilter(EMRepLoginFilter.java:203)
         at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
         at oracle.sysman.core.app.perf.PerfFilter.doFilter(PerfFilter.java:141)
         at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
         at oracle.sysman.eml.app.ContextInitFilter.doFilter(ContextInitFilter.java:542)
         at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
         at oracle.dms.wls.DMSServletFilter.doFilter(DMSServletFilter.java:326)
         at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
         at weblogic.servlet.internal.RequestEventsFilter.doFilter(RequestEventsFilter.java:27)
         at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
         at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:3592)
         at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
         at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:121)
         at weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2202)
         at weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:2108)
         at weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1432)
         at weblogic.work.ExecuteThread.execute(ExecuteThread.java:201)
         at weblogic.work.ExecuteThread.run(ExecuteThread.java:173)
    Caused by: oracle.sysman.emSDK.webservices.wsdlapi.SoapTestException: Exception occured when binding was invoked.
    Exception occured during invocation of JCA binding: "JCA Binding execute of Reference operation 'guiaServiceTesteSelect' failed due to: Could not create/access the TopLink Session.
    This session is used to connect to the datastore.
    Caused by Exception [TOPLINK-25004] (Oracle TopLink - 11g Release 1 (11.1.1.2.0) (Build 091016)): oracle.toplink.exceptions.XMLMarshalException
    Exception Description: An error occurred unmarshalling the document
    Internal Exception: Exception [TOPLINK-27101] (Oracle TopLink - 11g Release 1 (11.1.1.2.0) (Build 091016)): oracle.toplink.platform.xml.XMLPlatformException
    Exception Description: An error occurred while parsing the document.
    Internal Exception: oracle.xml.parser.v2.XMLParseException: Can not find definition for element 'object-persistence'.
    The invoked JCA adapter raised a resource exception.
    Please examine the above error message carefully to determine a resolution.
         at oracle.sysman.emSDK.webservices.wsdlapi.dispatch.DispatchUtil.invoke(DispatchUtil.java:260)
         at oracle.sysman.emSDK.webservices.wsdlparser.OperationInfoImpl.invokeWithDispatch(OperationInfoImpl.java:985)
         at oracle.sysman.emas.model.wsmgt.PortName.invokeOperation(PortName.java:716)
         at oracle.sysman.emas.model.wsmgt.WSTestModel.invokeOperation(WSTestModel.java:569)
         ... 68 more
    Caused by: javax.xml.ws.soap.SOAPFaultException: Exception occured when binding was invoked.
    Exception occured during invocation of JCA binding: "JCA Binding execute of Reference operation 'guiaServiceTesteSelect' failed due to: Could not create/access the TopLink Session.
    This session is used to connect to the datastore.
    Caused by Exception [TOPLINK-25004] (Oracle TopLink - 11g Release 1 (11.1.1.2.0) (Build 091016)): oracle.toplink.exceptions.XMLMarshalException
    Exception Description: An error occurred unmarshalling the document
    Internal Exception: Exception [TOPLINK-27101] (Oracle TopLink - 11g Release 1 (11.1.1.2.0) (Build 091016)): oracle.toplink.platform.xml.XMLPlatformException
    Exception Description: An error occurred while parsing the document.
    Internal Exception: oracle.xml.parser.v2.XMLParseException: Can not find definition for element 'object-persistence'.
    The invoked JCA adapter raised a resource exception.
    Please examine the above error message carefully to determine a resolution.
         at oracle.j2ee.ws.client.jaxws.DispatchImpl.throwJAXWSSoapFaultException(DispatchImpl.java:882)
         at oracle.j2ee.ws.client.jaxws.DispatchImpl.invoke(DispatchImpl.java:715)
         at oracle.j2ee.ws.client.jaxws.OracleDispatchImpl.synchronousInvocationWithRetry(OracleDispatchImpl.java:226)
         at oracle.j2ee.ws.client.jaxws.OracleDispatchImpl.invoke(OracleDispatchImpl.java:97)
         at oracle.sysman.emSDK.webservices.wsdlapi.dispatch.DispatchUtil.invoke(DispatchUtil.java:256)
         ... 71 more

    Hi Jose,
    the DbAdapter's db.jca file contains a property MappingsMetaDataURL, which points to an Oracle TopLink file ending in or-mappings.xml.
    The first entry in this xml file is (for 11.1.1.2.0):
    <toplink:object-persistence version="Oracle TopLink - 11g Release 1 (11.1.1.2.0) (Build 091016)" xmlns:opm="http://xmlns.oracle.com/ias/xsds/opm" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:toplink="http://xmlns.oracle.com/ias/xsds/toplink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    Starting in 11.1.1.3.0, whenever you create an or-mappings.xml, we now use the EclipseLink schema, which is the open source version of TopLink. So the head element looks like this:
    <object-persistence xmlns="http://www.eclipse.org/eclipselink/xsds/persistence" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:eclipselink="http://www.eclipse.org/eclipselink/xsds/persistence" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="Eclipse Persistence Services - 2.1.2.v20101104-r8475">
    11.1.1.3.0 can read either schema. However 11.1.1.2.0 can only read the first one. Maybe what happened is you are trying to run on 11.1.1.2.0 a process that was at least partially modeled on 11.1.1.3.0.
    Failing that maybe your *or_mappings.xml file is corrupt somehow, and you should run through the DbAdapter wizard in edit mode to hit finish and regenerate it, or try doing so.  You may need to recreate it and redeploy.  Also make sure you are not using an 11.1.1.3.0 JDev with 11.1.1.2.0.
    Thanks
    Steve

  • /SOMO/GET_TIMEZONE rfc invocation issue

    Hi Reiner,
    I have an issue with invoking the rfc '/SOMO/GET_TIMEZONE'.
    this works fine using se37.
    When i build the proxy client.
    1> the wsdl description defines a method Somo_Get_Timezone
    2> the proxy class [.cs] does not create the method to implement the rfc.
    3> i created a method myself, but upon
    invocation
    results = this.SAPInvoke("Somo_Get_Timezone",new object[] {});
    error msg :"invalid method Somo_Get_Timezone."
    or -
    results = this.SAPInvoke("/SOMO/GET_TIMEZONE",new object[] {});
    error msg :"invalid method/SOMO/GET_TIMEZONE."
    any combination yields similar results...
    any thoghts ?
    Thanks,
    Amit.

    We had a problem with "namespaced" functions in the very early version of NCo (1.0.0). With the current 2.0.1 I cannot repro any problem. It correctly create a proxy like this:
       /// <summary>
        /// Remote Function Module /SOMO/GET_TIMEZONE. 
        /// To get the timezone, date and time from this system for solution manager
        /// </summary>
        /// <param name="Date"></param>
        /// <param name="Time"></param>
        /// <param name="Tzone"></param>
        [RfcMethod(AbapName = "/SOMO/GET_TIMEZONE")]
        [SoapDocumentMethodAttribute("http://tempuri.org/_-SOMO_-GET_TIMEZONE",
         RequestNamespace = "urn:sap-com:document:sap:rfc:functions",
         RequestElementName = "_-SOMO_-GET_TIMEZONE",
         ResponseNamespace = "urn:sap-com:document:sap:rfc:functions",
         ResponseElementName = "_-SOMO_-GET_TIMEZONE.Response")]
        public virtual void Somo_Get_Timezone (
         [RfcParameter(AbapName = "DATE",RfcType=RFCTYPE.RFCTYPE_DATE, Optional = true, Direction = RFCINOUT.OUT, Length = 8, Length2 = 16)]
         [XmlElement("DATE", IsNullable=false, Form=XmlSchemaForm.Unqualified)]
         out string Date,
         [RfcParameter(AbapName = "TIME",RfcType=RFCTYPE.RFCTYPE_TIME, Optional = true, Direction = RFCINOUT.OUT, Length = 6, Length2 = 12)]
         [XmlElement("TIME", IsNullable=false, Form=XmlSchemaForm.Unqualified)]
         out string Time,
         [RfcParameter(AbapName = "TZONE",RfcType=RFCTYPE.RFCTYPE_INT, Optional = true, Direction = RFCINOUT.OUT, Length = 4, Length2 = 4)]
         [XmlElement("TZONE", IsNullable=false, Form=XmlSchemaForm.Unqualified)]
         out int Tzone)
            object[]results = null;
            results = this.SAPInvoke("Somo_Get_Timezone",new object[] {
            Date = (string) results[0];
            Time = (string) results[1];
            Tzone = (int) results[2];

  • Spring apps cross invocation issue

    Hi,
    I have two Spring apps deployed to OAS 10g. One app (LibraryRequest) invokes an operation within the other (CommonServices). The issue I am having is when I make a code change within the LibraryRequest app and redeploy it, somehow the CommonServices app becomes unavailable - when I run the LibraryRequest app, I get the error "Target bean not yet published". If I redeploy CommonServices, all is well. The problem with this is other apps will also be using the CommonServices operations...
    Is there some special configuration that keeps this app alive on OAS?
    Thanks,
    Ginni

    Did you try to stop and restart the OC4J container? When you only deploy and redeploy the other applications that is not been deployed, could have the configuration of the old app. Because at start they get what they nead, and only restarting will get any change make in the outside.
    Hope this helps.
    Regards.

  • PopupFetchListener invocation issue

    Hi All,
    When i call af:showPopupBehavior from inside toolbar, sometimes the listener doesn't run, it runs when i do tableSelectionListener, is there any problem with popupFetchListener ??!!

    Have you tried setting contentDelivery property of popup to lazyUncached?
    Sireesha

  • DbAdapter / Toplink Performance issues

    I'm using the DbAdabpter / Toplink to fetch a sizable dataset (500 - 30,000) row for later emission to a file. The fetch of this data via the DbAdapter / Toplink seems to works reasonably well (albeit quite slow) for datasets between 500-7,000 rows. If I attempt to read a larger dataset, the DbAdapter invocation simply times out. I've tweaked the following configuration options suspecting they might help with the long running invoke the DbAdapter partner link:
    * created an on alarm branch and allowed for 15 minutes for the dataset to be returned.
    * increased the syncMaxWaitTime attribute to 15 minutes.
    * Configured the BPEL OC4J instance to use 2048MB for the JVM heap.
    I've tested the query being used by the DbAdapter via SQL navigator and it returns the data sub-second. I'm suspecting the performance issue is related to the DbAdapter / Toplink rendering the thousands of rows into an XML DOM representation. Might this be the case?
    To help further my hypothesis, I'd like to enable the Toplink profiler. I've found a document in the Oracle doc library that suggests it can be enabled with the following directive, "logProfile" (http://www.oracle.com/technology/products/ias/toplink/doc/1013/MAIN/_html/optimiz003.htm#BEEBCBJF). Any idea where I'd specify this directive? Perhaps somewhere in the toplink_mappings.xml file?
    I could be completely off base and the performance issue could be attributed to some other aspect of my BPEL process. Has anyone else encountered this sort of behavior when working with DbAdapters that return thousands of rows?
    Thanks,
    Peter

    Hi Peter,
    if you are still experiencing the timeout problem you may want to alter the transaction config timout setting in the server.xml file. The tuning guide indicates to change the one file but we have changed it in two locations.
    j2ee/OC4J_BPEL/config (to 700000) and integration/orabpel/system/appserver/oc4j/j2ee/home/config/ (600000) we have previously found that the sync_max_wait_time in the console needs to be set at a value lower than the settings in the above files (540 secs).
    For the performance have you captured the sql from the island log that BPEL is actually running (colaxa.cube.ws logging to debug), is it from a single table or from multiple. We managed to improve the perfromance by setting the use-joining in the toplink-mappings file, but then ended up creating a view in the source system to limit the queries being executed. I am not sure about BPEL's capacity to handle large payloads but it would be interesting to know.
    Ashley

  • A very urgent deployment issue about DBAdapter

    Hello All,
    I have a very urgent deployment issue about DBAdapter.
    That DBAdapter is connect to DB2 AS400 Database. I have a developing database (jdbc:as400://server01/TEST) and a production database (jdbc:as400://server01/PROD).
    During developing, I used DBAdapter wizard to create it, and import some tables, and set the Adapter to use jabc/DB2DS as connection information for easily deployment later.
    Then I deploy to Production. I configured Data-source.xml and oc4j-ra.xml rightly; I set DB connection point to production database. But the DBAdapter still write into developing Database.
    I checked the DBAdapter, the imported tables are something like this, TEST.table1, TEST.table2. And there are a lot "TEST" located in DB2Writer_toplink_mapping.xml, DB2Writer.xml, TEST.schema, DB2Writer.table1.ClassDescriptor.xml.
    This TEST is refrer to the TEST in connect String jdbc:as400://server01/TEST.
    I think this might be the reason cause the problem. As to production database, "TEST" should replaced by "PROD". If I changed it manually, I have to change every time when switch between TEST and PROD. And I also don't know if it is safe to do it? (I tried, and bring some toplink mapping problem)
    By the way, for Oracle Database, because we use 2 instances for testing and production with same schema name, and do not have this issue.
    Anyone could help and many thanks.
    Kerr
    Message was edited by:
    Kerr

    Hi Kerr,
    The idea is to set up all connections in the BPEL or ESB services with logical names, e.g. typically of the form eis/DB/MyFinancialSystem or eis/DB/MyLogisticsSystem. This way, you do not have to modify code when deploying it onto different environments that serve different purposes.
    When moving your services through their lifecyle, on every environment you deploy these to you will have the same logical connections configured on each instance, e.g. for DEV, QA, SIT, UAT and PROD. Only, in case of QA the actual physical connection is configured to point to the QA instance of the systems that your services interact with whereas in case of UAT it points to the UAT instance of the same system.
    Maybe your problem is caused by connecting as user "SomeUser" when running the DB Adapter wizard during development and actually selecting objects from a different schema than you used to connect with, e.g. "Test" in your case.
    Hth,
    Sjoerd

  • DBAdapter insert only operation issue

    Hi Gurus,
    I'm trying to create the BPEL SOA composite which is receive the input using File Adapter (file only containt 2 rows) and insert into database table using DBAdapter with Insert only operation using mediator.
    The data will be inserted to seeded employees table in hr schema.
    1st try, i got error constraint violated because i did not provide the last name (NOT NULL constraint).
    I updated last name of the same data and try again, but i got error constraint violated for email (UNIQUE constraint).
    Mar 27, 2015 2:13:15 AMMessageError during invoking 2-way operation "insert" on target service "FdyWriteEmpToDB"
    Exception occured when binding was invoked. Exception occured during invocation of JCA binding: "JCA Binding execute of Reference operation 'insert' failed due to: DBWriteInteractionSpec Execute Failed Exception. insert failed. Descriptor name: [FdyWriteEmpToDB.Employees]. Caused by java.sql.BatchUpdateException: ORA-00001: unique constraint (HR.EMP_EMAIL_UK) violated . Please see the logs for the full DBAdapter logging output prior to this exception. This exception is considered not retriable, likely due to a modelling mistake. To classify it as retriable instead add property nonRetriableErrorCodes with value "-1" to your deployment descriptor (i.e. weblogic-ra.xml). To auto retry a retriable fault set these composite.xml properties for this invoke: jca.retry.interval, jca.retry.count, and jca.retry.backoff. All properties are integers. ". The invoked JCA adapter raised a resource exception. Please examine the above error message carefully to determine a resolution.
    If i disable the EMP_EMAIL_UK constraint, it is working fine, but the 1st row is inserted twice and 2nd row is not inserted.
    Following is the mediator transformation mapping.
    Anything am doing wrong here? Appreciate any help.
    Regards,
    Fendy

    Hi Fendy,
    could you look inside the audit trail in the enterprise manager to see if the transformations is really working?  For what I see, I think there is an error in your xslt. It should be like this:
    <top:EmployeesCollection>
        <xml:for-each select="/imp:Employees/imp:EmpDetail">
        <top:firstName>
          <xsl:value-of select ="/impl:FirstName" />
        </top:firstName>
        <top:LastName>
          <xsl:value-of select ="/impl:LastName" />
        </top:LastName>
    <top:email>
          <xsl:value-of select ="/impl:Email" />
        </top:email>
        </xml:for-each>
    </top:EmployeesCollection>
    best regards, Nicolas

  • DBAdapter procedure call issue (dev and test env have seperate schema)

    Hi All
    We are facing an issue with DBAdapter (even after commenting the schema name from JCA file). The procedure is using SQL objects and collections. The DBAdapter is trying to find these objects in the old schema (the one used in dev) but they are compiled on a diff schema in INT and hence it is throwing an exception.
    How can i get this to work. Please help.
    CREATE OR REPLACE
    TYPE QUERY_INVENTORY AS OBJECT (
    requestingstoreid VARCHAR2 (20),
    simuserid VARCHAR2 (60),
    storeidlist vfuk_store_id_list,
    itemidlist vfuk_item_id_list,
    flexfield1 VARCHAR2 (200),
    flexfield2 VARCHAR2 (200),
    flexfield3 VARCHAR2 (200)
    CREATE OR REPLACE
    TYPE QUERY_INVENTORY_LIST AS TABLE OF QUERY_INVENTORY;
    CREATE OR REPLACE PACKAGE abcd
    AS
    PROCEDURE def (
    i_queryrequest IN QUERY_INVENTORY_LIST,
    o_errormsg OUT VARCHAR2,
    o_errorcode OUT VARCHAR2
    END abcd;
    /

    Hi Arik
    Thanks for the reply. A DB procedure with normal arguments (VARCHAR, DATE etc) is working fine after commenting the schema name in JCA file (It is taking the schema name from data source).
    But if you use SQL objects and SQL collections as IN\OUT parameters, it generates the XSD with complex types that have the schema prefix attached to them. So, even after commenting in JCA it is still looking for those SQL objects in the OLD schema.
    Do i need to change the prefixes in the XSD as well? This would not be a feasible option as i would have to do it for all the environments.
    Somebody pls help....

  • Issue with DBadapter - Getting Multiple records from DB

    Hi,
    i am facing issues when i am trying to take out data from database and populate it in my Dataobject...
    I ll gv an example...
    I have table A & B where A - B is 1:M mapping...
    Now suppose, A is having one records and B is having 2 records in DB...
    The output which my DBadapter brings is one records of A & 2 Records of B but both records are same...(the first records of table B comes two times)

    Can this be the problem?
    http://www.evita.no/ikbViewer/soa-bloggen/artikkel/59046/soa-suite:-duplicate-rows-from-db-adapter-?

  • ESB-DBAdapter issue

    Hi all,
    I have DBAdapter to insert records into oracle XE DB from my ESB process.
    Though the record gets successfully inserted,the ESB instance is itself
    marked as errored.
    The following is the stacktrace
    oracle.tip.esb.server.common.exceptions.BusinessEventRetriableException:
    An unhandled exception has been thrown in the ESB system.
    The exception reported is: "oracle.tip.esb.server.common.exceptions.BusinessEventRejectionException:
    An unhandled exception has been thrown in the ESB system.
    The exception reported is:
    "org.collaxa.thirdparty.apache.wsif.WSIFException:
    esb:///ESB_Projects/SOAOrchestration_FulfillmentESB/FedexShipment.wsdl
    [ FedexShipment_ptt::insert(FedexshipmentCollection) ] - WSIF JCA Execute of
    operation 'insert' failed due to:
    DBWriteInteractionSpec Execute Failed Exception. unknown failed.
    Descriptor name: [unknown]. ; nested exception is:
    ORABPEL-11616 DBWriteInteractionSpec Execute Failed Exception.
    unknown failed. Descriptor name: [unknown]. Caused by Exception [TOPLINK-2004] (Oracle TopLink - 10g Release 3 (10.1.3.1.0) (Build 061004))
    : oracle.toplink.exceptions.ConcurrencyException Exception Description:
    A signal was attempted before wait() on ConcurrencyManager.
    This normally means that an attempt was made to commit or
    rollback a transaction before it was started, or to rollback a transaction twice..
    at oracle.tip.adapter.fw.wsif.jca.WSIFOperation_JCA.executeRequestResponseOperation(WSIFOperation_JCA.java:623)
    at oracle.tip.adapter.fw.wsif.jca.WSIFOperation_JCA.executeInputOnlyOperation(WSIFOperation_JCA.java:726)
    at oracle.tip.esb.server.common.wsif.WSIFInvoker.executeOperation(Unknown Source) ...
    Any help/insight will be very helpful.
    Regards,
    Manu

    We have same issue as yours.
    But worst for us, we need logical delete the record in Source database. And if this Exception happen, the transaction will roll back.
    A oracle guy told me this is an internal bug:5519509 only in 10.1.3.1. I don't know when it will be fixed.

  • DBAdapter polling for new or changed records not issuing callback?

    I have a process which includes a partner link with a database adapter.
    The database adapter is to poll a table for new records using an external database server.
    I have no relationships setup, it's a single-table query.
    The adapter is configured to delete rows after they are read.
    I have the receive process of that partner link tied to a receive activity and its own input variable assigned.
    My process compiles and deploys successfully. When I initiate the process through the BPEL console, the instance of the process waits at the receive activity and nothing happens, even after I manually add records to the table being polled. (which do get deleted, apparently by the partner link.)
    I have other dbadapter partner links in the same process using the same connection that work fine, specifically using procedure execution and custom sql queries.
    I can't find any errors or warnings about this, and the interactions manager in the BPEL Console allows me to manually send a message to the instance, allowing it to continue.
    The application server is 10.1.3.1.0 and I am using JDeveloper 10.1.3.2.0.4066
    Message was edited by:
    Paul.Dunbar
    Follow-up:
    When I set activation logging to debug, I get the following in domain.log
    <2007-04-03 08:15:28,591> <DEBUG> <default.collaxa.cube.activation> <Database Adapter::Inbound> <oracle.tip.adapter.db.TopLinkLogger log> client acquired
    <2007-04-03 08:15:28,591> <DEBUG> <default.collaxa.cube.activation> <Database Adapter::Inbound> <oracle.tip.adapter.db.TopLinkLogger log> SELECT SOME_ID, SOME_VALUE FROM PAULD.SOME_TABLE ORDER BY SOME_ID ASC
    <2007-04-03 08:15:28,592> <DEBUG> <default.collaxa.cube.activation> <Database Adapter::Inbound> <oracle.tip.adapter.db.TopLinkLogger log> client released
    From looking at this it may be that the callback to the receive activity is not occurring?
    Message was edited by:
    Paul.Dunbar
    Second follow-up:
    I'm still having this issue but must give up on troubleshooting.
    Documentation on polling adapter says nothing about handling callbacks, I've been trying to use correlations here with no luck. I'm also not seeing any documentation about setting up correlations for use with the database adapter.
    now the issue I'm having is that the inbound database adapter is still polling my table and deleting records, even though I've undeployed my process.

    I did not. Currently the manual recovery area is empty. I've tried re-deploying my process and am now getting the following in my logs (all debugging on):
    <2007-04-05 08:01:36,671> <DEBUG> <default.collaxa.cube.engine.deployment> <LockManager::acquire> Acquired read lock for SendEventNotice-1.0
    <2007-04-05 08:01:36,671> <DEBUG> <default.collaxa.cube.engine.deployment> <LockManager::release> Released lock for SendEventNotice-1.0
    <2007-04-05 08:01:36,672> <DEBUG> <default.collaxa.cube.engine.deployment> <LockManager::acquire> Acquired read lock for SendEventNotice-1.0
    <2007-04-05 08:01:36,672> <DEBUG> <default.collaxa.cube.engine.deployment> <LockManager::release> Released lock for SendEventNotice-1.0
    <2007-04-05 08:01:36,678> <DEBUG> <default.collaxa.cube.engine.data> <ConnectionFactory::getConnection> GOT CONNECTION 1 Autocommit = false
    <2007-04-05 08:01:36,681> <DEBUG> <default.collaxa.cube.engine.data> <ConnectionFactory::closeConnection> CLOSE CONNECTION 0
    <2007-04-05 08:01:36,681> <DEBUG> <default.collaxa.cube.engine.data> <ConnectionFactory::getConnection> GOT CONNECTION 1 Autocommit = false
    <2007-04-05 08:01:36,682> <DEBUG> <default.collaxa.cube.engine.data> <ConnectionFactory::closeConnection> CLOSE CONNECTION 0
    <2007-04-05 08:01:36,686> <DEBUG> <default.collaxa.cube.engine.deployment> <LockManager::acquire> Acquired read lock for SendEventNotice-1.0
    <2007-04-05 08:01:36,687> <DEBUG> <default.collaxa.cube.engine.deployment> <LockManager::release> Released lock for SendEventNotice-1.0
    <2007-04-05 08:01:36,688> <DEBUG> <default.collaxa.cube.engine.deployment> <LockManager::acquire> Acquired read lock for SendEventNotice-1.0
    <2007-04-05 08:01:36,688> <DEBUG> <default.collaxa.cube.engine.deployment> <LockManager::release> Released lock for SendEventNotice-1.0
    <2007-04-05 08:01:36,688> <DEBUG> <default.collaxa.cube.engine.deployment> <LockManager::acquire> Acquired write lock for SendEventNotice-1.0
    <2007-04-05 08:01:36,688> <DEBUG> <default.collaxa.cube.engine.data> <BaseProcessPersistenceAdaptor::updateMetaData> Updating process metadata [ domain = default, process = SendEventNotice, revision = 1.0, state = 0, lifecycle = 0 ]
    <2007-04-05 08:01:36,688> <DEBUG> <default.collaxa.cube.engine.data> <ConnectionFactory::getConnection> GOT TX CONNECTION 1 Autocommit = false
    <2007-04-05 08:01:36,691> <DEBUG> <default.collaxa.cube.engine.dispatch> <BaseDispatchSet::receive> Receiving message log process event message 61b55bd8c71ae1e3:-3d66bcb1:111c1b2d4aa:-7f9c for set system
    <2007-04-05 08:01:36,691> <DEBUG> <default.collaxa.cube.engine.dispatch> <Dispatcher::adjustThreadPool> Allocating 1 thread(s); pending threads: 1, active threads: 0, total: 84
    <2007-04-05 08:01:36,693> <DEBUG> <default.collaxa.cube.engine.dispatch> <DispatcherBean::send> Sent message to queue
    <2007-04-05 08:01:36,693> <DEBUG> <default.collaxa.cube.engine> <DomainObserverRegistry::notify> Notifying observer class oracle.bpel.services.rules.DeploymentListener with aspect class com.collaxa.cube.engine.observer.ProcessStateChangeAspect for domain default
    <2007-04-05 08:01:36,693> <DEBUG> <default.collaxa.cube.engine> <DomainObserverRegistry::notify> Notifying observer class com.collaxa.cube.engine.test.driver.deployment.BPELTestDeployer with aspect class com.collaxa.cube.engine.observer.ProcessStateChangeAspect for domain default
    <2007-04-05 08:01:36,693> <DEBUG> <default.collaxa.cube.engine> <DomainObserverRegistry::notify> Notifying observer class oracle.bpel.services.workflow.task.PurgeTask with aspect class com.collaxa.cube.engine.observer.ProcessStateChangeAspect for domain default
    <2007-04-05 08:01:36,693> <DEBUG> <default.collaxa.cube.services> <oracle.bpel.services.workflow.task.PurgeTask::update(ICubeAspect> Called for aspect com.collaxa.cube.engine.observer.ProcessStateChangeAspect
    <2007-04-05 08:01:36,693> <DEBUG> <default.collaxa.cube.engine> <DomainObserverRegistry::notify> Notifying observer class oracle.tip.esb.configuration.deployment.bpel.BPELSvcDeploymentManager with aspect class com.collaxa.cube.engine.observer.ProcessStateChangeAspect for domain default
    <2007-04-05 08:01:36,693> <DEBUG> <default.collaxa.cube.engine.dispatch> <SystemDispatchSet::fetchScheduled> Fetched message log process event message 61b55bd8c71ae1e3:-3d66bcb1:111c1b2d4aa:-7f9c from system queue for processing
    <2007-04-05 08:01:36,693> <DEBUG> <default.collaxa.cube.engine.dispatch> <LogProcessEventMessageHandler::handle> Processing log process event message 61b55bd8c71ae1e3:-3d66bcb1:111c1b2d4aa:-7f9c
    <2007-04-05 08:01:36,693> <DEBUG> <default.collaxa.cube.engine> <DomainObserverRegistry::notify> Notifying observer class com.collaxa.cube.engine.data.CubeInstanceCache with aspect class com.collaxa.cube.engine.observer.ProcessStateChangeAspect for domain default
    <2007-04-05 08:01:36,693> <DEBUG> <default.collaxa.cube.engine> <DomainObserverRegistry::notify> Notifying observer class oracle.bpel.services.workflow.DeploymentListener with aspect class com.collaxa.cube.engine.observer.ProcessStateChangeAspect for domain default
    <2007-04-05 08:01:36,693> <DEBUG> <default.collaxa.cube.services> <oracle.bpel.services.workflow.DeploymentListener::update(ICubeAspect> Called for aspect com.collaxa.cube.engine.observer.ProcessStateChangeAspect
    <2007-04-05 08:01:36,693> <DEBUG> <default.collaxa.cube.engine> <DomainObserverRegistry::notify> Notifying observer class com.collaxa.cube.engine.core.BaseCubeProcess$ActivationObserver with aspect class com.collaxa.cube.engine.observer.ProcessStateChangeAspect for domain default
    <2007-04-05 08:01:36,693> <INFO> <default.collaxa.cube.activation> <AdapterFramework::Inbound> JCAActivationAgent::onStateChanged State is changed for process 'bpel://localhost/default/SendEventNotice~1.0/', state=ON
    <2007-04-05 08:01:36,693> <INFO> <default.collaxa.cube.activation> <AdapterFramework::Inbound> Adapter Framework instance: OraBPEL - endpointActivation for portType=initialCoordination_ptt, operation=receive
    <2007-04-05 08:01:36,693> <DEBUG> <default.collaxa.cube.activation> <AdapterFramework::Inbound> Looking up jca:address...
    <2007-04-05 08:01:36,693> <DEBUG> <default.collaxa.cube.activation> <AdapterFramework::Inbound> Looking up WSDL Service jca:address for portType=initialCoordination_ptt and operation=receive
    <2007-04-05 08:01:36,693> <DEBUG> <default.collaxa.cube.activation> <AdapterFramework::Inbound> Locating Resource Adapter for jca:address.. {http://xmlns.oracle.com/pcbpel/wsdl/jca/}address: location='eis/DB/TST2' ManagedConnectionFactory='oracle.tip.adapter.db.DBManagedConnectionFactory' (properties: {Password=E466676A7A458FA6EBCFF72E13C04843, PlatformClassName=oracle.toplink.platform.database.oracle.Oracle10Platform, ConnectionString=jdbc:oracle:thin:@//lxdb2:1521/TST2, DriverClassName=oracle.jdbc.OracleDriver, UserName=SONRIS_DBA})
    <2007-04-05 08:01:36,693> <DEBUG> <default.collaxa.cube.activation> <AdapterFramework::Inbound> Setting up Input Header Message QName: null
    <2007-04-05 08:01:36,693> <DEBUG> <default.collaxa.cube.activation> <AdapterFramework::Inbound> Setting up Input Header Part Name: null
    <2007-04-05 08:01:36,694> <DEBUG> <default.collaxa.cube.engine.data> <ConnectionFactory::getConnection> GOT TX CONNECTION 2 Autocommit = false
    <2007-04-05 08:01:36,694> <DEBUG> <default.collaxa.cube.activation> <AdapterFramework::Inbound> Setting Adapter Name: Database Adapter
    <2007-04-05 08:01:36,694> <DEBUG> <default.collaxa.cube.activation> <AdapterFramework::Inbound> Determining Input and Output WSDL Message elements
    <2007-04-05 08:01:36,695> <DEBUG> <default.collaxa.cube.activation> <AdapterFramework::Inbound> Creating ActivationSpec...
    <2007-04-05 08:01:36,695> <DEBUG> <default.collaxa.cube.activation> <AdapterFramework::Inbound> Instantiating ActivationSpec oracle.tip.adapter.db.DBActivationSpec
    <2007-04-05 08:01:36,695> <DEBUG> <default.collaxa.cube.activation> <AdapterFramework::Inbound> Populating ActivationSpec oracle.tip.adapter.db.DBActivationSpec with properties: {MaxRaiseSize=1, MarkReadFieldName=DONE_READING, UseBatchDestroy=false, MarkUnreadValue=UNREAD, ReturnSingleResultSet=false, QueryName=initialCoordination, MarkReadValue=READ, MarkReservedValue=RESERVED, DescriptorName=initialCoordination.AnotherTable, NumberOfThreads=1, MappingsMetaDataURL=initialCoordination_toplink_mappings.xml, PollingStrategyName=LogicalDeletePollingStrategy, PollingInterval=5, SequencingFieldName=AN_ID, MaxTransactionSize=unlimited}
    <2007-04-05 08:01:36,697> <DEBUG> <default.collaxa.cube.engine.data> <ConnectionFactory::closeConnection> CLOSE TX CONNECTION 1
    <2007-04-05 08:01:36,700> <DEBUG> <default.collaxa.cube.activation> <AdapterFramework::Inbound> Preparing ActivationSpec for Translation Service
    <2007-04-05 08:01:36,701> <DEBUG> <default.collaxa.cube.engine.dispatch> <BaseDispatchSet::acknowledge> Acknowledged message log process event message 61b55bd8c71ae1e3:-3d66bcb1:111c1b2d4aa:-7f9c
    <2007-04-05 08:01:36,705> <DEBUG> <default.collaxa.cube.activation> <AdapterFramework::Inbound> Preparing ActivationSpec for Connection Factory and Properties
    <2007-04-05 08:01:36,705> <DEBUG> <default.collaxa.cube.activation> <AdapterFramework::Inbound> Invoking endpointActivation() on Resource Adapter
    <2007-04-05 08:01:36,708> <INFO> <default.collaxa.cube.activation> <Database Adapter::Inbound> <oracle.tip.adapter.db.DBResourceAdapter endpointActivation> Activating: oracle.tip.adapter.db.DBActivationSpec@4e7ed
    <2007-04-05 08:01:36,710> <DEBUG> <default.collaxa.cube.activation> <Database Adapter::Inbound> <oracle.tip.adapter.db.TopLinkLogger log> client acquired
    <2007-04-05 08:01:36,713> <DEBUG> <default.collaxa.cube.activation> <Database Adapter::Inbound> <oracle.tip.adapter.db.TopLinkLogger log> client released
    <2007-04-05 08:01:36,715> <DEBUG> <default.collaxa.cube.activation> <Database Adapter::Inbound> <oracle.tip.adapter.db.DBEndpoint start> About to schedule the inbound polling thread with the work manager. ActivationSpec: oracle.tip.adapter.db.DBActivationSpec@4e7ed
    <2007-04-05 08:01:36,716> <INFO> <default.collaxa.cube.activation> <Database Adapter::Inbound> <oracle.tip.adapter.db.DBEndpoint start> Kicked off 1 threads.
    <2007-04-05 08:01:36,717> <DEBUG> <default.collaxa.cube.activation> <Database Adapter::Inbound> <oracle.tip.adapter.db.TopLinkLogger log> client acquired
    <2007-04-05 08:01:36,719> <DEBUG> <default.collaxa.cube.activation> <Database Adapter::Inbound> <oracle.tip.adapter.db.TopLinkLogger log> begin transaction
    <2007-04-05 08:01:36,721> <DEBUG> <default.collaxa.cube.activation> <Database Adapter::Inbound> <oracle.tip.adapter.db.TopLinkLogger log> rollback transaction
    <2007-04-05 08:01:36,722> <ERROR> <default.collaxa.cube.activation> <Database Adapter::Inbound> <oracle.tip.adapter.db.InboundWork handleException> Non retriable exception during polling of the database ORABPEL-11624
    DBActivationSpec Polling Exception.
    Query name: [initialCoordination], Descriptor name: [initialCoordination.AnotherTable]. Polling the database for events failed on this iteration.
    If the cause is something like a database being down successful polling will resume once conditions change. Caused by Exception [TOPLINK-6024] (Oracle TopLink - 10g Release 3 (10.1.3.1.0) (Build 061004)): oracle.toplink.exceptions.QueryException
    Exception Description: Modify queries require an object to modify.
    Query: UpdateObjectQuery(null).
    <2007-04-05 08:01:36,722> <FATAL> <default.collaxa.cube.activation> <AdapterFramework::Inbound> [initialCoordination_ptt::receive(AnotherTableCollection)]Resource Adapter requested Process shutdown!
    <2007-04-05 08:01:36,723> <FATAL> <default.collaxa.cube.activation> <AdapterFramework::Inbound>
    ORABPEL-11624
    DBActivationSpec Polling Exception.
    Query name: [initialCoordination], Descriptor name: [initialCoordination.AnotherTable]. Polling the database for events failed on this iteration.
    If the cause is something like a database being down successful polling will resume once conditions change. Caused by Exception [TOPLINK-6024] (Oracle TopLink - 10g Release 3 (10.1.3.1.0) (Build 061004)): oracle.toplink.exceptions.QueryException
    Exception Description: Modify queries require an object to modify.
    Query: UpdateObjectQuery(null).
    As reflected in the log messages, the process is automatically turned off. Turning it back on is ineffective, the server turns it back off with the same exception.
    This is a separate issue, but I'm not seeing much reason for this to be happening either. I've scrapped the process and started over, using my own BPEL process that simulates what I would expect that the dbadapter is supposed to do when it's configured to poll for records.

  • Issue with PartnerLink invocation

    When i'm trying to invoke my partnerlink wsdl i have received the following error message. Can any one tell me how to resolve this issue.
    <messages><input><LN_SyncAssembliesAssemblySynchronizationAppReqMsg><part xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" name="payload"><UpdateAssemblyRequest xmlns:tns="http://services.lexisnexis.com/shared/xmlschema/entitlement/1" xmlns="http://services.lexisnexis.com/shared/xmlschema/entitlement/1">
    <tns:featureId>CC</tns:featureId>
    </UpdateAssemblyRequest>
    </part></LN_SyncAssembliesAssemblySynchronizationAppReqMsg></input><fault><bindingFault xmlns="http://schemas.oracle.com/bpel/extension"><part name="summary"><summary>Argument 'payload' is not compatible</summary>
    </part></bindingFault></fault></messages>

    A bindingFault is thrown inside an activity if the preparation of the invocation fails. You might be placing the wrong input variable or the wsdl definition might have changed after you developed the code. It it is ok, can you past your wsdl definition and input for which you have been getting above error.

  • SFTP Issue in OSB invocation resulted in an error: java.util.NoSuchElement

    I created a Proxy Service to do SFTP Poll to read the file from abcserver and its working fine .
    (OSB is on abc server).
    known_hosts file is present on OSB server.
    It has abcserverhostname,IP ssh-rsa AA................. ==
    I created a business service to do SFTP Write to xyz server (remote) - Its not working.
    Error : The invocation resulted in an error: java.util.NoSuchElementException.
    My Business Service
    End Point URI : sftp://xyzserverhostname:22/directorypath
    Authetication Mode : user name, password.I have created a Service Account for xyz server and imported in Business Service.
    Later, I created business service to do SFTP Write on abc server (same server) and it failed.*
    Error : The invocation resulted in an error: java.util.NoSuchElementException
    Do I need to give anything else in known_hosts file ?
    OSBServer.log
    *<Error> <SFTPTransport> <OSBServer> <[ACTIVE] ExecuteThread: '4' for queue: 'weblogic.kernel.Default (self-tuning)'> <<anonymous>> <> <db432d7c09c5a041:4295b211:1310705fe8e:-8000-000000000001f312> <1311176892037> <BEA-381801> <Error occured for endpoint java.util.NoSuchElementException*
    java.util.NoSuchElementException
    at java.util.StringTokenizer.nextToken(StringTokenizer.java:183)
    at java.util.StringTokenizer.nextElement(StringTokenizer.java:149)
    at com.bea.wli.sb.transports.sftp.client.KnownHostVerifier.validateKnownHosts(KnownHostVerifier.java:102)
    at com.bea.wli.sb.transports.sftp.client.SFTPClient.authenticate(SFTPClient.java:104)
    at com.bea.wli.sb.transports.sftp.connector.SFTPResource.<init>(SFTPResource.java:77)
    at com.bea.wli.sb.transports.sftp.resource.SFTPUtils.createSFTPResource(SFTPUtils.java:170)
    at com.bea.wli.sb.transports.sftp.resource.SFTPConnectionPool.getResource(SFTPConnectionPool.java:104)
    at com.bea.wli.sb.transports.sftp.connector.SFTPTransportProvider.getSFTPResource(SFTPTransportProvider.java:958)
    at com.bea.wli.sb.transports.sftp.connector.SFTPTransportProvider.sendMessage(SFTPTransportProvider.java:145)
    at com.bea.wli.sb.transports.sftp.connector.SFTPTransportProvider.sendMessageAsync(SFTPTransportProvider.java:110)
    at sun.reflect.GeneratedMethodAccessor4031.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:37)
    at java.lang.reflect.Method.invoke(Method.java:611)
    at com.bea.wli.sb.transports.Util$1.invoke(Util.java:83)
    at $Proxy142.sendMessageAsync(Unknown Source)
    at com.bea.wli.sb.transports.LoadBalanceFailoverListener.sendMessageAsync(LoadBalanceFailoverListener.java:148)
    at com.bea.wli.sb.transports.LoadBalanceFailoverListener.sendMessageToServiceAsync(LoadBalanceFailoverListener.java:603)
    at com.bea.wli.sb.transports.LoadBalanceFailoverListener.sendMessageToService(LoadBalanceFailoverListener.java:538)
    at com.bea.wli.sb.transports.TransportManagerImpl.sendMessageToService(TransportManagerImpl.java:558)
    at com.bea.wli.sb.transports.TransportManagerImpl.sendMessageAsync(TransportManagerImpl.java:426)
    at com.bea.wli.sb.test.service.ServiceMessageSender.send0(ServiceMessageSender.java:380)
    at com.bea.wli.sb.test.service.ServiceMessageSender.access$000(ServiceMessageSender.java:79)
    at com.bea.wli.sb.test.service.ServiceMessageSender$1.run(ServiceMessageSender.java:137)
    at com.bea.wli.sb.test.service.ServiceMessageSender$1.run(ServiceMessageSender.java:135)
    at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:363)
    at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:146)
    at com.bea.wli.sb.security.WLSSecurityContextService.runAs(WLSSecurityContextService.java:55)
    at com.bea.wli.sb.test.service.ServiceMessageSender.send(ServiceMessageSender.java:140)
    at com.bea.wli.sb.test.service.ServiceProcessor.invoke(ServiceProcessor.java:454)
    at com.bea.wli.sb.test.TestServiceImpl.invoke(TestServiceImpl.java:172)
    at com.bea.wli.sb.test.client.ejb.TestServiceEJBBean.invoke(TestServiceEJBBean.java:167)
    at com.bea.wli.sb.test.client.ejb.TestService_sqr59p_EOImpl.__WL_invoke(Unknown Source)
    at weblogic.ejb.container.internal.SessionRemoteMethodInvoker.invoke(SessionRemoteMethodInvoker.java:40)
    at com.bea.wli.sb.test.client.ejb.TestService_sqr59p_EOImpl.invoke(Unknown Source)
    at com.bea.wli.sb.test.client.ejb.TestService_sqr59p_EOImpl_WLSkel.invoke(Unknown Source)
    at weblogic.rmi.internal.BasicServerRef.invoke(BasicServerRef.java:667)
    at weblogic.rmi.cluster.ClusterableServerRef.invoke(ClusterableServerRef.java:230)
    at weblogic.rmi.internal.BasicServerRef$1.run(BasicServerRef.java:522)
    at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:363)
    at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:146)
    at weblogic.rmi.internal.BasicServerRef.handleRequest(BasicServerRef.java:518)
    at weblogic.rmi.internal.wls.WLSExecuteRequest.run(WLSExecuteRequest.java:118)
    at weblogic.work.ExecuteThread.execute(ExecuteThread.java:207)
    at weblogic.work.ExecuteThread.run(ExecuteThread.java:176)
    Thanks
    Edited by: soauser on Jul 25, 2011 3:22 PM

    Patrick,
    I apologize. polling was done by some other service, not my current OSB Service.
    OSB Proxy Service to poll/read data is not working.
    I enabled logging to Error in Proxy Service. and enable tracing
    If I test my Proxy Service from Console. I see this message
    <con:metadata      xmlns:con="http://www.bea.com/wli/sb/test/config">
         <tran:response-code      xmlns:tran="http://www.bea.com/wli/sb/transports">0</tran:response-code>
         </con:metadata>
    tail -f OSBServer.log
    <Error> <WliSbTransports> <OSBServer> <pool-20-thread-1> <weblogic> <> <db432d7c09c5a041:1f5dbb0e:1314411cf6c:-8000-000000000000213c> <1311178504443> <BEA-381602> <Error encountered while polling the resource for the service endpoint ProxyService$SFTPFileTesting$SFTPFilePoll: com.bea.wli.sb.transports.TransportException
    com.bea.wli.sb.transports.TransportException
    at com.bea.wli.sb.transports.sftp.connector.SFTPWorkPartitioningAgent.execute(SFTPWorkPartitioningAgent.java:125)
    at com.bea.wli.sb.transports.poller.TransportTimerListener.run(TransportTimerListener.java:74)
    at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:452)
    at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:314)
    at java.util.concurrent.FutureTask.run(FutureTask.java:149)
    at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$301(ScheduledThreadPoolExecutor.java:109)
    at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:215)
    at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:897)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:919)
    at java.lang.Thread.run(Thread.java:736)
    Caused By: java.util.NoSuchElementException
    at java.util.StringTokenizer.nextToken(StringTokenizer.java:183)
    at java.util.StringTokenizer.nextElement(StringTokenizer.java:149)
    at com.bea.wli.sb.transports.sftp.client.KnownHostVerifier.validateKnownHosts(KnownHostVerifier.java:102)
    at com.bea.wli.sb.transports.sftp.client.SFTPClient.authenticate(SFTPClient.java:104)
    at com.bea.wli.sb.transports.sftp.connector.SFTPResource.<init>(SFTPResource.java:77)
    at com.bea.wli.sb.transports.sftp.resource.SFTPUtils.createSFTPResource(SFTPUtils.java:170)
    at com.bea.wli.sb.transports.sftp.connector.SFTPWorkPartitioningAgent.getSftpResource(SFTPWorkPartitioningAgent.java:148)
    at com.bea.wli.sb.transports.sftp.connector.SFTPWorkPartitioningAgent.execute(SFTPWorkPartitioningAgent.java:58)
    at com.bea.wli.sb.transports.poller.TransportTimerListener.run(TransportTimerListener.java:74)
    at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:452)
    at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:314)
    at java.util.concurrent.FutureTask.run(FutureTask.java:149)
    at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$301(ScheduledThreadPoolExecutor.java:109)
    at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:215)
    at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:897)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:919)
    at java.lang.Thread.run(Thread.java:736)
    Edited by: soauser on Jul 20, 2011 9:36 AM
    Edited by: soauser on Jul 25, 2011 3:22 PM

Maybe you are looking for