OSB JCA Adapter performance issue

Hi,
We have to use OSB as an ESB at integration level which need to populate the result from local services e.g. from DB as well as from external services. Actually we need to use switch [split -join] and connector [individual proxy for individual services] features.
As for external services, we do not have questions but to access data from local system e.g. Database, whether it will be a performance issue in OSB, in case if we are using JCA Adapter and exposing it as a service? Because some one objected that accessing JCA layer in OSB will be a performance issue.
If some one can shed the light on it, it will be great.
Thanks & Regards,
V D

Hi,
Have a look at the Developer Guide for OSB... Oracle JCA Adapter for Database is supported... Have a look at the limitations, there's nothing mentioning performance...
http://docs.oracle.com/cd/E23943_01/dev.1111/e15866/jca.htm#i1110405
Also have a look at the following blogs... One of them even suggests that jca performs better than xquery with fn-bea:execute-sql...
http://victor-jan.blogspot.com.au/2012/06/osb-fn-beaexecute-sql-vs-jca-dbadapter.html
http://reallifeserviceorientedarchitecture.blogspot.com.au/2011/09/oracle-service-bus-osb-and-jca-adapters.html
If you are still in doubt open a SR with Oracle Support...
Hope this helps...
Cheers,
Vlad

Similar Messages

  • OSB DB Adapter Polling Issue

    Hello Everybody,
    Requirement
    I am doing DB Adapter polling in OSB.I have a db adapter which polls order table whenever there is a record with status='N'.The OSB component is on single node of Weblogic Server.
    1.The db adapter picks the order data with status='N' in the proxy service
    2.It transforms to webservice xsd
    3.Invokes a webservice.
    4.The webservice returns acknowledgement number.
    5.The order table should be updated with status 'Z' and attribute1=acknowledgement number
    OSB Service Design
    1.Proxy service calls business service to poll the order table
    2.Converts the payload to the xsd format required by target
    3.Invokes the webservice on target
    4.Receives acknowledgement number
    5.calls a plsql procedure which updates all the records within this batch with the acknowledgement number and status='Z'
    My configurations in db adapter
    Logical delete option in db adapter.
    Unread Value :'N'
    Read Value : 'A'
    Polling frequency : 300 seconds
    no of databse rows per XML document : 10
    Database rows per transaction : 10
    Issue
    1.My process after getting the acknowledgement number it updates the status with Z and attribute1=acknowledgement number.At the of this transaction I am seeing that the status is being updated by
    the adapter to 'A' based on read value.I want the read value only to be updated initially but as soon as my OSB process picks it for further processing it should not update again.How can i prevent
    the status from getting updated to 'A'.
    2.I have 40 records in order table.Per the database rows per transaction it should process 10 records at a time and for each batch of 10 i should get one acknowledgement number.Instead i see that
    all the 40 records are updated with the same acknowledgement number.Kindly help as to how I can resolve this situation.
    Thanks & Regards,
    Radha

    Hi Arik,
    I tried setting the property(idempotent) in jca file of the polling adapter and it gave me below error.Kindly help
    <adapter-config name="EBS_FETCHDATA" adapter="Database Adapter" wsdlLocation="EBS_FETCHDATA.wsdl" xmlns="http://platform.integration.oracle/blocks/adapter/fw/metadata">
    <connection-factory location="eis/DB/newebs" UIConnectionName="EBS" adapterRef=""/>
    <endpoint-activation portType="EBS_FETCHDATA_ptt" operation="receive">
    <activation-spec className="oracle.tip.adapter.db.DBActivationSpec">
    <property name="DescriptorName" value="EBS_FETCHDATA.XxcmfOtmOrderHdrIfaceTmp"/>
    <property name="QueryName" value="EBS_FETCHDATASelect"/>
    <property name="MappingsMetaDataURL" value="EBS_FETCHDATA-or-mappings.xml"/>
    <property name="PollingStrategy" value="LogicalDeletePollingStrategy"/>
    <property name="MarkReadColumn" value="OTM_INTERFACE_STATUS"/>
    <property name="MarkReadValue" value="A"/>
    <property name="MarkUnreadValue" value="N"/>
    <property name="PollingInterval" value="60"/>
    <property name="MaxRaiseSize" value="10"/>
    <property name="MaxTransactionSize" value="300"/>
    <property name="NumberOfThreads" value="1"/>
    <property name="ReturnSingleResultSet" value="false"/>
    <property name="idempotent" value="false"/>
    </activation-spec>
    </endpoint-activation>
    </adapter-config>
    ---------------------ERROR---------------
    Invalid JCA transport endpoint configuration, exception: javax.resource.ResourceException: BINDING.JCA-12532 Cannot set JCA WSDL Property. Error while setting JCA WSDL Property. Property setIdempotent is not defined for oracle.tip.adapter.db.DBActivationSpec Please verify the spelling of the property.
    Thanks,
    Radha

  • Osb jca adapter weird behaviour

    Hi gurus,
    Im running OSB 11.1.1.5 having a db adapter polling an MSSQL2000 table (SELECT WITH (UPDLOCK, NOWAIT)..)
    The table is being filled by a long running transaction.
    I observe in the JCA logging the following error on every polling iteration while the table is being filled:
    <Jan 10, 2012 2:00:45 PM CET> <Error> <JCA_FRAMEWORK_AND_ADAPTER> <BEA-000000> <<oracle.tip.adapter.db.InboundWork handleException> Encountered a fatal exception while polling. Will continue polling but with minimal logging. Please investigate the fault and manually stop polling from the console if in development and this appears to be a modeling mistake. BINDING.JCA-11624
    DBActivationSpec Polling Exception.
    Query name: [O_Boeking_I_PollerSelect], Descriptor name: [O_Boeking_I_Poller.OBoeking]. Polling the database for events failed on this iteration.
    Caused by java.sql.SQLException: [FMWGEN][SQLServer JDBC Driver][SQLServer]Lock request time out period exceeded..
    This exception is considered not retriable, likely due to a modelling mistake. To classify it as retriable instead add property nonRetriableErrorCodes with value "-1222" to your deployment descriptor (i.e. weblogic-ra.xml). This polling process will shut down, unless the fault is related to processing a particular row, in which case polling will continue but the row will be rejected (faulted).
    The issue I'm experiencing occurs after the long running transaction is done. What I see is that in the next polling sweep 2 XML documents are delivered by the db adapter engine...I cannot figure out why. I do not want this
    1 document contains only 1 record. The other document contains the rest of my records.
    Have tried both WebLogic and MS JDBC drivers.
    Some of mine properties:
    MaxRaiseSize = 0 (I want all the records in 1 XML document)
    MaxTransactionSize = unlimited
    Thanks alot

    Veejay,
    Have done so...I tried some different setting like test-connections-on-reserve (was off)...no successes here.
    I will give a try with another mssql driver version.
    Another interesting thing I have observed is when I do not commit the long running transaction, the next db adapter polling event results in this exception:
    <Jan 17, 2012 12:24:10 PM CET> <Error> <JCA_FRAMEWORK_AND_ADAPTER> <BEA-000000> <<oracle.tip.adapter.db.InboundWork handleException>
    Encountered a fatal exception while polling. Will continue polling but with minimal logging. Please investigate the fault and manually stop polling from the console if in development and this appears to be a modeling mistake. BINDING.JCA-11624 DBActivationSpec Polling Exception.
    Query name: [O_Boeking_I_PollerSelect], Descriptor name: [O_Boeking_I_Poller.OBoeking]. Polling the database for events failed on this iteration.
    Caused by java.lang.ArrayIndexOutOfBoundsException: Array index out of range: 0.
    This exception is considered not retriable, likely due to a modelling mistake. This polling process will shut down, unless the fault is related to processing a particular row, in which case polling will continue but the row will be rejected (faulted).
    at oracle.tip.adapter.db.exceptions.DBResourceException.createNonRetriableException(DBResourceException.java:682)
    at oracle.tip.adapter.db.exceptions.DBResourceException.createEISException(DBResourceException.java:648)
    at oracle.tip.adapter.db.exceptions.DBResourceException.inboundReadException(DBResourceException.java:483)
    at oracle.tip.adapter.db.InboundWork.handleException(InboundWork.java:922)
    at oracle.tip.adapter.db.InboundWork.runOnce(InboundWork.java:826)
    at oracle.tip.adapter.db.InboundWork.run(InboundWork.java:578)
    at oracle.tip.adapter.db.inbound.InboundWorkWrapper.run(InboundWorkWrapper.java:43)
    at weblogic.work.ContextWrap.run(ContextWrap.java:41)
    at weblogic.work.SelfTuningWorkManagerImpl$WorkAdapterImpl.run(SelfTuningWorkManagerImpl.java:528)
    at weblogic.work.ExecuteThread.execute(ExecuteThread.java:209)
    at weblogic.work.ExecuteThread.run(ExecuteThread.java:178)
    Caused by: java.lang.ArrayIndexOutOfBoundsException: Array index out of range: 0
    at java.util.Vector.get(Vector.java:694)
    at oracle.tip.adapter.db.InboundWork.vectorSubList(InboundWork.java:1860)
    at oracle.tip.adapter.db.InboundWork.runOnce(InboundWork.java:713)
    ... 6 more
    >
    This lets me think it could be a bug..

  • Apple DVI to Video Adapter performance issues in Lion

    I'm an active Apple DVI to Video Adapter user for a couple of years already and everything worked perfectly well until I've upgraded to Lion.
    Everything on my TV screen is lagging now, even mouse pointer, and there is no change to watch any movie like that.
    Does anyone have the same issue? Maybe someone could give me an advice of what could I do in order to improve graphics performance on TV screen using Apple DVI to Video Adapter? I'm using late 2007 MBP with 8600M GT video adapter.

    I am having the exact same problem.  I have a late 2007 MBP. I use it everyday where I teach.  I use the adapter to project on a large white screen using S-Video.  SInce the Lion update, it is very slow and has even completely crashed my computer a few times.  I realize the MBP is getting a bit dated, but the difference between Snow Leopard & Lion is remarkable.

  • OSB JCA Adapter - Enqueue - BLOB Oracle data type

    Hi,
    I am tring to enqueue a message into oracle advacned queue using JCA AQ adapter of OSB. The message in the Q has BLOB data type.
    I used AQ Adapter enqueue operation for this, and an opaqueue schema in the adapter wsdl. I created a business service out of the adapter service and tested it using
    OSB. I am able to enqueue, but then if i go and see in the data base payload the value of the BLOB column is JUNK... some funky values..
    Any help on this. Appreciate your suggestions.

    This has been resolved

  • OSB: WebLogic lo4j performance issue

    Hi
    I have configured log4j on WebLogic server 11g.
    Oracle Service Bus (OSB) uses this log4j file and writes log in AdminServer/logs/ApplicationLogs directory.
    Log level is 'DEBUG' and quite a lot data is being logged.
    lately i have noticed that server is running very slow.
    any guidelines/links?
    Thanks

    If you feel that that excessive logging is the issue, then you can start by tune the WLS logging and compare the performance.
    Go to WLS console > Servers > Servername > Logging > Advanced and set the following severity levels
    ‘Warning’ for “Log File” section;
    ‘Notice’ for “Standard out” section;
    ‘Warning’ for “Domain log broadcaster” section;
    ‘Error’ for “Memory buffer’’ section;
    Then click on ‘HTTP’ tab in ‘Logging’ section. Uncheck the box “HTTP access log file enabled” if it is checked.If you still face issues, then please give more details of the domain and the services deployed.
    Thanks,
    Patrick

  • BizTalk SAP-adapter performance issue

    We have 1 server BizTalk installation:
    Windows server 2012 R2 STD EN, BizTalk 2013 R2.
    4 cores, 8GB RAM, 100 HDD.
    We testing possibility of exchanging data between BizTalk (SAP adapter) and SAP using RFC procedures. For testing purposes in SAP was created custom RFC procedure, which takes list of IDOC types and total amount of IDOC’s as input parameters
    and gives IDOCS in table format as output. During the test’s we noticed low performance:
    Receiving of 100 IDOC (~22MB) takes about 7 minutes.
    Receiving of 10 IDOC (~2MB) - takes about 10 seconds.
    Process of getting data was tracked using Performance Monitor with counters:
    Memory page faults / second;
    CPU %Time usage (Total)
    Network interface total bytes / second
    During the process of receiving data from SAP, we saw:
    Network activity short leap
    (about 5% of total receive process duration).
    Activity of «page faults / second» showed the same behavior.
    After network activity and «page faults / second» decreased, CPU activity raised and was on that level until data receive process was finished (about 95% of total receive process duration).
    After that process of receiving was finished.
    Chart with counters described above for receiving 30 IDOC’s shown below:
    We tried same scenario on BizTalk server 2013 R2 and get same result.
    Also, we tested getting 10-100 IDOC's and noticed receive time dependency from total amount of row's in responce:
    Such performance is unacceptable for us.
    Getting same data through WCF-SQL is about 100 times faster.
    After deep trace analysis, we discovered that most time consuming operation during time is:
    [1]1108.0214::02/04/2015-10:24:39.975 [CSharp]:[Wcf] WcfMarshaller.CreateBizTalkMessageStream:
    UseBodyElement
    [0]1108.0214::02/04/2015-10:25:05.650 [CSharp]:[Wcf] BizTalkDeleteTxn.BizTalkDeleteTxn
    So, theoretically increasing batch treshold should help. But it didnt help (we increased it to 102400 KB).
    Anyone has same issue?
    Any ideas about fixing the problem?

    Such performance is unacceptable for us.
    Getting same data through WCF-SQL is about 100 times faster.
    After deep trace analysis, we discovered that most time consuming operation during time is:
    [1]1108.0214::02/04/2015-10:24:39.975 [CSharp]:[Wcf] WcfMarshaller.CreateBizTalkMessageStream:
    UseBodyElement
    [0]1108.0214::02/04/2015-10:25:05.650 [CSharp]:[Wcf] BizTalkDeleteTxn.BizTalkDeleteTxn
    So, theoretically increasing batch treshold should help. But it didnt help (we increased it to 102400 KB).
    Anyone has same issue?
    Any ideas about fixing the problem?
    HI,
    Thanks for sharing your experience with us.
    If you cannot determine your answer here or on your own, consider opening a support case with us. Visit this link to see the various support options that are available to better meet your needs: 
    http://support.microsoft.com/default.aspx?id=fh;en-us;offerprophone
    Best regards,
    Angie
    We are trying to better understand customer views on social support experience, so your participation in this interview project would be greatly appreciated if you have time. Thanks for helping make community forums a great place.
    Click
    HERE to participate the survey.

  • OSB Error using Database JCA Adapter

    I had a project working with a business service in OSB using JCA Adapter Service, after i inactivated the datasource to do unit case testing, the following error started appearing. I have recreated the datasource, the database adapter config and the have reinstalled the database adapter with no luck, the same error keeps showing: java.lang.IllegalStateException: Cause already initialized
    have changed the <java:alsb-jca-framework-adapter-debug>true</java:alsb-jca-framework-adapter-debug> in alsbdebug.xml file but the onlly trace shown in the log is:
    ####<May 11, 2011 6:38:22 PM GMT-04:30> <Error> <JCATransport> <sapl953> <osb_server1> <[ACTIVE] ExecuteThread: '5' for queue: 'weblogic.kernel.Default (self-tuning)'> <<anonymous>> <> <ac651b1b82eb3313:-2f05eee:12fe1116dce:-7fff-0000000000000128> <1305155302965> <BEA-381967> <Invoke JCA outbound service failed with application error, exception: com.bea.wli.sb.transports.jca.JCATransportException: oracle.tip.adapter.sa.api.JCABindingException: java.lang.IllegalStateException: Cause already initialized
    com.bea.wli.sb.transports.jca.JCATransportException: oracle.tip.adapter.sa.api.JCABindingException: java.lang.IllegalStateException: Cause already initialized
    at com.bea.wli.sb.transports.jca.binding.JCATransportOutboundOperationBindingServiceImpl.invoke(JCATransportOutboundOperationBindingServiceImpl.java:155)
    at com.bea.wli.sb.transports.jca.JCATransportEndpoint.sendRequestResponse(JCATransportEndpoint.java:209)
    at com.bea.wli.sb.transports.jca.JCATransportEndpoint.send(JCATransportEndpoint.java:170)
    at com.bea.wli.sb.transports.jca.JCATransportProvider.sendMessageAsync(JCATransportProvider.java:571)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:48)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:600)
    at com.bea.wli.sb.transports.Util$1.invoke(Util.java:83)
    at $Proxy133.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.pipeline.PipelineContextImpl.doDispatch(PipelineContextImpl.java:597)
    at com.bea.wli.sb.pipeline.PipelineContextImpl.dispatch(PipelineContextImpl.java:501)
    at stages.routing.runtime.RouteRuntimeStep.processMessage(RouteRuntimeStep.java:128)
    at com.bea.wli.sb.pipeline.debug.DebuggerRuntimeStep.processMessage(DebuggerRuntimeStep.java:74)
    at com.bea.wli.sb.stages.StageMetadataImpl$WrapperRuntimeStep.processMessage(StageMetadataImpl.java:346)
    at com.bea.wli.sb.pipeline.RouteNode.doRequest(RouteNode.java:106)
    at com.bea.wli.sb.pipeline.Node.processMessage(Node.java:67)
    at com.bea.wli.sb.pipeline.PipelineContextImpl.execute(PipelineContextImpl.java:922)
    at com.bea.wli.sb.pipeline.Router.processMessage(Router.java:214)
    at com.bea.wli.sb.pipeline.MessageProcessor.processRequest(MessageProcessor.java:99)
    at com.bea.wli.sb.pipeline.RouterManager$1.run(RouterManager.java:593)
    at com.bea.wli.sb.pipeline.RouterManager$1.run(RouterManager.java:591)
    at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:363)
    at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:147)
    at com.bea.wli.sb.security.WLSSecurityContextService.runAs(WLSSecurityContextService.java:55)
    at com.bea.wli.sb.pipeline.RouterManager.processMessage(RouterManager.java:590)
    at com.bea.wli.sb.test.service.ServiceMessageSender.send0(ServiceMessageSender.java:329)
    at com.bea.wli.sb.test.service.ServiceMessageSender.access$000(ServiceMessageSender.java:76)
    at com.bea.wli.sb.test.service.ServiceMessageSender$1.run(ServiceMessageSender.java:134)
    at com.bea.wli.sb.test.service.ServiceMessageSender$1.run(ServiceMessageSender.java:132)
    at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:363)
    at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:147)
    at com.bea.wli.sb.security.WLSSecurityContextService.runAs(WLSSecurityContextService.java:55)
    at com.bea.wli.sb.test.service.ServiceMessageSender.send(ServiceMessageSender.java:137)
    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.invoke(TestService_sqr59p_EOImpl.java:353)
    at com.bea.wli.sb.test.client.ejb.TestService_sqr59p_EOImpl_WLSkel.invoke(Unknown Source)
    at weblogic.rmi.internal.BasicServerRef.invoke(BasicServerRef.java:589)
    at weblogic.rmi.cluster.ClusterableServerRef.invoke(ClusterableServerRef.java:230)
    at weblogic.rmi.internal.BasicServerRef$1.run(BasicServerRef.java:477)
    at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:363)
    at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:147)
    at weblogic.rmi.internal.BasicServerRef.handleRequest(BasicServerRef.java:473)
    at weblogic.rmi.internal.wls.WLSExecuteRequest.run(WLSExecuteRequest.java:118)
    at weblogic.work.ExecuteThread.execute(ExecuteThread.java:201)
    at weblogic.work.ExecuteThread.run(ExecuteThread.java:173)
    Caused By: oracle.tip.adapter.sa.api.JCABindingException: java.lang.IllegalStateException: Cause already initialized
    at oracle.tip.adapter.sa.impl.JCABindingReferenceImpl.request(JCABindingReferenceImpl.java:263)
    at com.bea.wli.sb.transports.jca.binding.JCATransportOutboundOperationBindingServiceImpl.invoke(JCATransportOutboundOperationBindingServiceImpl.java:150)
    at com.bea.wli.sb.transports.jca.JCATransportEndpoint.sendRequestResponse(JCATransportEndpoint.java:209)
    at com.bea.wli.sb.transports.jca.JCATransportEndpoint.send(JCATransportEndpoint.java:170)
    at com.bea.wli.sb.transports.jca.JCATransportProvider.sendMessageAsync(JCATransportProvider.java:571)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:48)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:600)
    at com.bea.wli.sb.transports.Util$1.invoke(Util.java:83)
    at $Proxy133.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.pipeline.PipelineContextImpl.doDispatch(PipelineContextImpl.java:597)
    at com.bea.wli.sb.pipeline.PipelineContextImpl.dispatch(PipelineContextImpl.java:501)
    at stages.routing.runtime.RouteRuntimeStep.processMessage(RouteRuntimeStep.java:128)
    at com.bea.wli.sb.pipeline.debug.DebuggerRuntimeStep.processMessage(DebuggerRuntimeStep.java:74)
    at com.bea.wli.sb.stages.StageMetadataImpl$WrapperRuntimeStep.processMessage(StageMetadataImpl.java:346)
    at com.bea.wli.sb.pipeline.RouteNode.doRequest(RouteNode.java:106)
    at com.bea.wli.sb.pipeline.Node.processMessage(Node.java:67)
    at com.bea.wli.sb.pipeline.PipelineContextImpl.execute(PipelineContextImpl.java:922)
    at com.bea.wli.sb.pipeline.Router.processMessage(Router.java:214)
    at com.bea.wli.sb.pipeline.MessageProcessor.processRequest(MessageProcessor.java:99)
    at com.bea.wli.sb.pipeline.RouterManager$1.run(RouterManager.java:593)
    at com.bea.wli.sb.pipeline.RouterManager$1.run(RouterManager.java:591)
    at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:363)
    at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:147)
    at com.bea.wli.sb.security.WLSSecurityContextService.runAs(WLSSecurityContextService.java:55)
    at com.bea.wli.sb.pipeline.RouterManager.processMessage(RouterManager.java:590)
    at com.bea.wli.sb.test.service.ServiceMessageSender.send0(ServiceMessageSender.java:329)
    at com.bea.wli.sb.test.service.ServiceMessageSender.access$000(ServiceMessageSender.java:76)
    at com.bea.wli.sb.test.service.ServiceMessageSender$1.run(ServiceMessageSender.java:134)
    at com.bea.wli.sb.test.service.ServiceMessageSender$1.run(ServiceMessageSender.java:132)
    at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:363)
    at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:147)
    at com.bea.wli.sb.security.WLSSecurityContextService.runAs(WLSSecurityContextService.java:55)
    at com.bea.wli.sb.test.service.ServiceMessageSender.send(ServiceMessageSender.java:137)
    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.invoke(TestService_sqr59p_EOImpl.java:353)
    at com.bea.wli.sb.test.client.ejb.TestService_sqr59p_EOImpl_WLSkel.invoke(Unknown Source)
    at weblogic.rmi.internal.BasicServerRef.invoke(BasicServerRef.java:589)
    at weblogic.rmi.cluster.ClusterableServerRef.invoke(ClusterableServerRef.java:230)
    at weblogic.rmi.internal.BasicServerRef$1.run(BasicServerRef.java:477)
    at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:363)
    at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:147)
    at weblogic.rmi.internal.BasicServerRef.handleRequest(BasicServerRef.java:473)
    at weblogic.rmi.internal.wls.WLSExecuteRequest.run(WLSExecuteRequest.java:118)
    at weblogic.work.ExecuteThread.execute(ExecuteThread.java:201)
    at weblogic.work.ExecuteThread.run(ExecuteThread.java:173)
    Caused By: java.lang.IllegalStateException: Cause already initialized
    at java.lang.Throwable.<init>(Throwable.java:67)
    at java.lang.Throwable.initCause(Throwable.java:270)
    at oracle.tip.adapter.sa.impl.fw.wsif.jca.WSIFOperation_JCA.executeOperation(WSIFOperation_JCA.java:361)
    at oracle.tip.adapter.sa.impl.fw.wsif.jca.WSIFOperation_JCA.executeRequestResponseOperation(WSIFOperation_JCA.java:316)
    at oracle.tip.adapter.sa.impl.JCABindingReferenceImpl.invokeWsifProvider(JCABindingReferenceImpl.java:359)
    at oracle.tip.adapter.sa.impl.JCABindingReferenceImpl.request(JCABindingReferenceImpl.java:257)
    at com.bea.wli.sb.transports.jca.binding.JCATransportOutboundOperationBindingServiceImpl.invoke(JCATransportOutboundOperationBindingServiceImpl.java:150)
    at com.bea.wli.sb.transports.jca.JCATransportEndpoint.sendRequestResponse(JCATransportEndpoint.java:209)
    at com.bea.wli.sb.transports.jca.JCATransportEndpoint.send(JCATransportEndpoint.java:170)
    at com.bea.wli.sb.transports.jca.JCATransportProvider.sendMessageAsync(JCATransportProvider.java:571)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:48)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:600)
    at com.bea.wli.sb.transports.Util$1.invoke(Util.java:83)
    at $Proxy133.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.pipeline.PipelineContextImpl.doDispatch(PipelineContextImpl.java:597)
    at com.bea.wli.sb.pipeline.PipelineContextImpl.dispatch(PipelineContextImpl.java:501)
    at stages.routing.runtime.RouteRuntimeStep.processMessage(RouteRuntimeStep.java:128)
    at com.bea.wli.sb.pipeline.debug.DebuggerRuntimeStep.processMessage(DebuggerRuntimeStep.java:74)
    at com.bea.wli.sb.stages.StageMetadataImpl$WrapperRuntimeStep.processMessage(StageMetadataImpl.java:346)
    at com.bea.wli.sb.pipeline.RouteNode.doRequest(RouteNode.java:106)
    at com.bea.wli.sb.pipeline.Node.processMessage(Node.java:67)
    at com.bea.wli.sb.pipeline.PipelineContextImpl.execute(PipelineContextImpl.java:922)
    at com.bea.wli.sb.pipeline.Router.processMessage(Router.java:214)
    at com.bea.wli.sb.pipeline.MessageProcessor.processRequest(MessageProcessor.java:99)
    at com.bea.wli.sb.pipeline.RouterManager$1.run(RouterManager.java:593)
    at com.bea.wli.sb.pipeline.RouterManager$1.run(RouterManager.java:591)
    at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:363)
    at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:147)
    at com.bea.wli.sb.security.WLSSecurityContextService.runAs(WLSSecurityContextService.java:55)
    at com.bea.wli.sb.pipeline.RouterManager.processMessage(RouterManager.java:590)
    at com.bea.wli.sb.test.service.ServiceMessageSender.send0(ServiceMessageSender.java:329)
    at com.bea.wli.sb.test.service.ServiceMessageSender.access$000(ServiceMessageSender.java:76)
    at com.bea.wli.sb.test.service.ServiceMessageSender$1.run(ServiceMessageSender.java:134)
    at com.bea.wli.sb.test.service.ServiceMessageSender$1.run(ServiceMessageSender.java:132)
    at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:363)
    at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:147)
    at com.bea.wli.sb.security.WLSSecurityContextService.runAs(WLSSecurityContextService.java:55)
    at com.bea.wli.sb.test.service.ServiceMessageSender.send(ServiceMessageSender.java:137)
    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.invoke(TestService_sqr59p_EOImpl.java:353)
    at com.bea.wli.sb.test.client.ejb.TestService_sqr59p_EOImpl_WLSkel.invoke(Unknown Source)
    at weblogic.rmi.internal.BasicServerRef.invoke(BasicServerRef.java:589)
    at weblogic.rmi.cluster.ClusterableServerRef.invoke(ClusterableServerRef.java:230)
    at weblogic.rmi.internal.BasicServerRef$1.run(BasicServerRef.java:477)
    at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:363)
    at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:147)
    at weblogic.rmi.internal.BasicServerRef.handleRequest(BasicServerRef.java:473)
    at weblogic.rmi.internal.wls.WLSExecuteRequest.run(WLSExecuteRequest.java:118)
    at weblogic.work.ExecuteThread.execute(ExecuteThread.java:201)
    at weblogic.work.ExecuteThread.run(ExecuteThread.java:173)

    Generally when you delete the data source, you will need to restart the server. I ran into a similar issue (but not the exact error) when I deleted a data source and was trying to create another with the same name without a restart. The issues got resolved once I restarted the server after the deletion of the data source and then recreated the data source after restart .
    The com.bea.wli.sb.transports.jca.JCATransportException: oracle.tip.adapter.sa.api.JCABindingException: java.lang.IllegalStateException: Cause already initialized might be due to the same reason.
    Can you do this and see it resolves your issue?
    Thanks,
    Patrick

  • XA Trasaction issue with SAP JCA Adapter

    Using OSB 10gR3
    We have a proxy picking messages from a JMX queue using an XA enabled connection factory (the default weblogic XA connection factory). Proxy service calls a business service which is based on the SAP JCA WSDL and posts an IDOC to SAP system. A Route to node with Routing option Quality of service set as Exactly Once is used to ensure a rollback in case of errors on SAP processing. (Also tried with a service callout in request pipeline to achieve the same result).
    Here are the issues we are facing
    1. If the the SAP Outbound connection on iwafjca resource adapter is set as Local Transaction
    When testing from console the service runs fine. When message is sent from JMS queue we get an error "Transaction already exists". This seems correct as SAP Adapter will try to create a new transaction which will be possible while running from console while when Global transaction is created by JMS queue (when Proxy picked up message from XA enabled queue) SAP Adapter will not be able to create a separate transaction being not a part of XA.
    2. If SAP Outbound connection on iwafjca resource adapter is set as XA Transaction
    Even the business service when tested directly from console fails in this scenario. The error we get is "XA transaction not supported by JCA adapter".
    Any idea how to make the SAP JCA Adapter call a part of global transaction so that failed messages can roll back to the JMS queue?
    Sorry for the long description but I thought it will make it easier :)

    2. If SAP Outbound connection on iwafjca resource adapter is set as XA Transaction
    Even the business service when tested directly from console fails in this scenario. The error we get is "XA transaction not supported by JCA adapter".
    Any idea how to make the SAP JCA Adapter call a part of global transaction so that failed messages can roll back to the JMS queue?The interface provided by SAP (SAP JCO) doesn't support JTA transactions.So there is no way adapter/Connection factory can enlist in global transaction.
    1. If the the SAP Outbound connection on iwafjca resource adapter is set as Local Transaction
    When testing from console the service runs fine. When message is sent from JMS queue we get an error "Transaction already exists". This seems correct as >SAP Adapter will try to create a new transaction which will be possible while running from console while when Global transaction is created by JMS queue >(when Proxy picked up message from XA enabled queue) SAP Adapter will not be able to create a separate transaction being not a part of XA. This is known behavior and If I remember correct there is Bug raised but closed as Work as Designed (I still don't have clear explanation why adapter starts local transaction when underlying connection doesn't even participate ). Solution for this is to Make QOS=Best Effort.This makes sure that the local transaction required by adapter will not conflict with global transaction.
    So if you expecting adapter to participate in global JTA currently it is not supported.
    Thanks
    Manoj

  • Performance issues with the Tuxedo MQ Adapter

    We are experimenting some performance issues with the MQ Adapter. For example, we are seeing that the MQ Adapter takes from 10 to 100 ms in reading a single message from the queue and sending to the Tuxedo service. The Tuxedo service takes 80 ms in its execution so there is a considerable waste of time in the MQ adapter that we cannot explain.
    Also, we have looked a lot of rollback transactions on the MQ adapter, for example we got 980 rollback transactions for 15736 transactions sent and only the MQ adapter is involved in the rollback. However, the operations are executed properly. The error we got is
    135027.122.hqtux101!MQI_QMTESX01.7636.1.0: gtrid x0 x4ec1491f x25b59: LIBTUX_CAT:376: ERROR: tpabort: xa_rollback returned XA_RBROLLBACK.
    I am looking for information at Oracle site, but I have not found nothing. Could you or someone from your team help me?

    Hi Todd,
    We have 6 MQI adapters reading from 5 different queues, but in this case we are writing in only one queue.
    Someone from Oracle told us that the XA_RBROLLBACK occurs because we have 6 MQ adapters that are reading from the same queues and when one adapter finds a message and try to get that message, it can occurs that other MQ Adapter gets it before. In this case, the MQ adapter rollbacks the transaction. Even when we got some XA_RBROLLBACK errors, we don´t lose message. Also, I read something about that when XA sends a xa_end call to MQ adapter, it actually does the rollback, so when the MQ adapter receives the xa_rollback call, it answers with XA_RBROLLBACK. Is that true?
    However, I am more worried about the performance. We are putting a request message in a MQ queue and waiting for the reply. In some cases, it takes 150ms and in other cases it takes much more longer (more than 400ms). The average is 300ms. MQ adapter calls a service (txgralms0) which lasts 110ms in average.
    This is our configuration:
    "MQI_QMTESX01" SRVGRP="g03000" SRVID=3000
    CLOPT="-- -C /tuxedo/qt/txqgral00/control/src/MQI_QMTESX01.cfg"
    RQPERM=0600 REPLYQ=N RPPERM=0600 MIN=6 MAX=6 CONV=N
    SYSTEM_ACCESS=FASTPATH
    MAXGEN=1 GRACE=86400 RESTART=N
    MINDISPATCHTHREADS=0 MAXDISPATCHTHREADS=1 THREADSTACKSIZE=0
    SICACHEENTRIESMAX="500"
    /tuxedo/qt/txqgral00/control/src/MQI_QMTESX01.cfg:
    *SERVER
    MINMSGLEVEL=0
    MAXMSGLEVEL=0
    DEFMAXMSGLEN=4096
    TPESVCFAILDATA=Y
    *QUEUE_MANAGER
    LQMID=QMTESX01
    NAME=QMTESX01
    *SERVICE
    NAME=txgralms0
    FORMAT=MQSTR
    TRAN=N
    *QUEUE
    LQMID=QMTESX01
    MQNAME=QAT.Q.NACAR.TO.TUX.KGCRQ01
    *QUEUE
    LQMID=QMTESX01
    MQNAME=QAT.Q.NACAR.TO.TUX.KGCPQ01
    *QUEUE
    LQMID=QMTESX01
    MQNAME=QAT.Q.NACAR.TO.TUX.KPSAQ01
    *QUEUE
    LQMID=QMTESX01
    MQNAME=QAT.Q.NACAR.TO.TUX.KPINQ01
    *QUEUE
    LQMID=QMTESX01
    MQNAME=QAT.Q.NACAR.TO.TUX.KDECQ01
    Thanks in advance,
    Marling

  • OSB 10gR3 Performance Issue

    Hi Guys,
    I having some performance issue in OSB but i not sure where to tune the setting kindly provide me some ideas. Current project having 3 proxy services, 2 jms proxy, 4 business services and 2 jms business services.
    Scenario
    when one of the proxy having high loads, others request did not get the responses in other proxy as well. Why will this happens? Is it because the threads is occupied? the proxy that having high load is a asynchronous process. Proxy>>JMS Business (input Q) || (pickup Q)JMS proxy>>business service.
    Behavior
    1. When having lots of incoming request others services cannot be accessed.
    2. Server did not shows out of memory.
    3. When browsing the sbconsole and admin console, navigation is very slow it might time out as well.

    Hi there, before going to the workmanager, can anyone explain about the socket listner? It seems like my socket listner is fully occupied when load comming in.
    Basically it seems like not releasing the socket. Can i know by defult how the socket works in WLS? I am lost, because from my understanding, each socket is base on one connection means when it reach the JMS it will ends the process and close the listner. Then when JMS proxy picking the message in the queue will perform one by one means consume the socket one by one.
    For e.g:
    1. JMS proxy pick up message>"one socket consumed">send to business service > wait for respone > respone return >"socket close"
    2. JMS proxy pick up message>"one socket consumed">send to business service > wait for respone > respone return >"socket close"
    so each time will used only one socket per transaction am i rite?
    and i received below message from the domain log
    ####<Jul 20, 2010 3:50:25 PM SGT> <Warning> <Socket> <selbgixb50ut002> <CGISOSB_MS1> <[ACTIVE] ExecuteThread: '21' for queue: 'weblogic.kernel.Default (self-tuning)'> <<WLS Kernel>> <> <> <1279612225183> <BEA-000449> <Closing socket as no data read from it during the configured idle timeout of 5 secs>
    ####<Jul 20, 2010 3:50:25 PM SGT> <Warning> <Socket> <selbgixb50ut002> <CGISOSB_MS1> <[ACTIVE] ExecuteThread: '21' for queue: 'weblogic.kernel.Default (self-tuning)'> <<WLS Kernel>> <> <> <1279612225183> <BEA-000449> <Closing socket as no data read from it during the configured idle timeout of 5 secs>
    I am really lost. Recommanded setting for basic Ascync process needed, and i am using the default connection factory, will this cause the problem?

  • JCA Adapter Less than Symbol in OSB 11.1.1.5

    Hey everyone,
    When trying to create a Business Service based off of a JCA Adapter created in JDeveloper for a custom query database call, I am having issues if the query has the less than symbol in it.
    When generating the service, it gives me the following error:
    WSDL and Service Resources can not be generated at this time, please try again.
    Reason: error: Unexpected character encountered (lex state 9):
    The less than symbol is properly escaped as & l t ;
    Im using 11.1.15
    Replace & with $amp; is not working...

    When generating the service, it gives me the following errorWhat do you mean by "generating the service"? Where do you see the error? OEPE? Is that compilation time, deployment time or run time?
    Database data should be escaped finely... Can you give us more details about your case?
    Cheers,
    Vlad

  • JCA Adapter Postprocessing with OSB

    Hi,
    I am using JCA file adapter with OSB to generate flatfile output from xml (nxsd). I would like to know if it is possible to use JCA adapter post processing with OSB. (JCA pipeline and valves). Please let me know if you have tried this.
    Thank you
    Matt

    Pre and post processing is not supporting in JCA Adapter for File/FTP certified on OSB. Check section 25.2.2.3 Oracle JCA Adapters for Files/FTP Limitations in below link.
    http://docs.oracle.com/cd/E23943_01/dev.1111/e15866/jca.htm#OSBDV910
    However, according to below link it does work nonetheless. I havnt tried it, may be you can try it out as given in the link below and let us know.
    Jca adapter Valves in OSB
    Edited by: AbhishekJ on Feb 26, 2013 10:26 PM

  • Jca adapter Valves in OSB

    Hi,
    I have a requirement to move files between two file system using two OSB services configured with jca ftp adapters.
    The first service will read a zip file containing one .txt file and in OSB I need to extract the text file for writing to the target ftp server.
    In the reverse flow I need to read a text file and zip the file in OSB before writing to the target system.
    Can this be achieved using jca adapter valves? Does OSB support adapter valves?
    Thanks,
    Sai.

    Thanks Prabu. I was able to configure it. The below link also helped.
    http://download.oracle.com/docs/cd/E17904_01/integration.1111/e10231/adptr_file.htm#TKADP2160

  • OSB - Third Party JCA Adapter Deployment

    Hi everyone,
    I would like to know if OSB 11 supports third party JCA adapter besides Oracle JCA adapter.
    If it does, I would like to know how I can generate wsdl and jca files for the thrid party adapter in order to deploy it to OSB. Thanks in advance.
    Regards,
    K.Hein

    The JCA transport of OSB works in conjunction with a built-in JCA adapter framework and JCA-compliant adapters to interact with EIS systems. You may need to develope a custom transport (similar to JCA transport in OSB), to use your custom/third party JCA adapters with it.
    http://download.oracle.com/docs/cd/E14571_01/doc.1111/e15866/part_tsdk.htm#sthref962
    Better option would be to raise an ER with support and if product development approves the same then a new feature can be introduced in OSB to support third party JCA adapters as part of existing JCA transport/as part of a new transport.
    Regards,
    Anuj

Maybe you are looking for

  • Error after transport of Virtual Cube with Services

    Hi All, would any body can suggest me how we can change the source system assignment in QA or Production client for virtual Cube with Services. A virtual cube is created with Services using the settings for RFC and using the logical source system. ho

  • How do I read/receive messages that were sent to me while my phone was on airplane mode?

    I recently went away camping and turned my phone on airplane mode so I wouldn't receive any charges. But when I take my phone off airplane mode it shows I have no new messages showing. I was wondering how I can receive and read those messages once I

  • Firefox does not load web pages but gives no error message

    Hi guys, I have been having this problem occasionaly for the past few weeks and can't remember making any changes to my computer or firefox that would have prompted it. Basically what happens is that when I try to load a web page, it says "loading...

  • IDoc HRMD_A

    Hi, In order to send employee maseter data like infotypes like IT0000, IT0001, IT0002, IT0105 (Sty 0001/0010), HRP1000 and HRP1001 , which are the fields on which filtering should be used for the iDoc HRMD_A. Points will be rewarded. Thanks & Regards

  • Is it possible to use the af:query component with programmatic VOs?

    My understanding is that the view criteria in a normal SQL-based VO are used to add WHERE clauses to the VO. Since programmatic VOs do no have this capability, is there something I need to override in the view object implementation class to support t