Skip to main content

Oracle SOA server11g start issue,Invalid value -1 passed to setTransactionTimeout

Hi All,
While working with some JTA time configuration over weblogic server for oracle SOA11g i found an issue and after some discussion i found that it is an  weblogic bug till 12c.
For producing this error, follow the use case and it's configuration.
1.Start the weblogic server
2. Weblogic JTA time configuration to maximum value.
3.Restart the weblogic server and SOA sever, When server will be in starting mode it will start throwing error for "Transaction could not begin:Invalid value -1 passed to setTransactionTimeout(int)".
Error Logs:
Unable to refresh the driver locator cache, due to the following error: EJBerror: : javax.transaction.InvalidTransactionException: Transaction could not begin:
Invalid value -1 passed to setTransactionTimeout(int)
at weblogic.ejb.container.internal.MethodDescriptor.startTransaction(MethodDescriptor.java:306)
at weblogic.ejb.container.internal.MethodDescriptor.getInvokeTx(MethodDescriptor.java:422)
at weblogic.ejb.container.internal.MethodDescriptor.getInvokeTxForCom(MethodDescriptor.java:468)
at 71)
at com.bea.core.repackaged.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:89)
at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
at com.bea.core.repackaged.springframework.aop.support.DelegatingIntroductionInterceptor.doProceed(DelegatingIntroductionInterceptor.java:131)
at com.bea.core.repackaged.springframework.aop.support.DelegatingIntroductionInterceptor.invoke(DelegatingIntroductionInterceptor.java:119)
at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
at com.bea.core.repackaged.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
at com.sun.proxy.$Proxy409.ejbTimeout(Unknown Source)
at weblogic.ejb.container.timer.TimerImpl.timerExpired(TimerImpl.java:301)
at weblogic.timers.internal.TimerImpl.run(TimerImpl.java:273)
at weblogic.work.SelfTuningWorkManagerImpl$WorkAdapterImpl.run(SelfTuningWorkManagerImpl.java:545)
at weblogic.work.ExecuteThread.execute(ExecuteThread.java:256)
at weblogic.work.ExecuteThread.run(ExecuteThread.java:221)
; nested exception is: javax.transaction.InvalidTransactionException: Transaction could not begin:
Invalid value -1 passed to setTransactionTimeout(int)>>
4.As we made the JTA time to it's maximum value and weblogic SOA server started it's configuration with that JTA time which is not at all supported in weblogic. With this error we need to re-configure the JTA time with such configuration "Ideally the JTA timeout should be an integer value with the maximum positive value ( 2 ^ 31 - 1   => 2147483647. )  . Check to see if trying to set a value greater than this range. (Set it to 2 ^ 30 => 1073741824  and hopefully it should work)"
This is a known bug in weblogic versions prior to 12c and the workaround is to set the JTA timeout to 1073741824. If you set this property to the above mentioned value and the issue still exists, then suggest to raise a case with oracle support.
Restart both weblogic and SOA server, it will work.
Hope it will save any developer among us with this error case.

Comments

Popular posts from this blog

Oracle SOA 12C rest adapter with Custom HTTP headers

Most existing web applications are connected through web services, which are commonly known as SOAP services. More and more users are relying on mobile devices for communication, and they’re looking for lighter ways to access enterprise information on the go. REST services are the answer for the mobile device platform, because they get rapid responses and fast access to data. Oracle SOA Suite 12 c  provides a complete set of service infrastructure components for designing, deploying, and managing composite applications. Oracle SOA Suite 12 c  enables services to be created, managed, and orchestrated into composite applications and business processes. Some time we have need to send HTTP headers in REST service, In OSB we use header component and add what ever is needed but in oracle SOA 12C it's little bit different. Let see how we can do it. Create one SOA Application. Create one SOA Sample project inside SOA Application. Go to composite and drag drop REST ...

Solution for BPM standard dashboard & activity guide not working in Oracle SOA 12.2.1.0 C

As earlier i publish a post about different issue of Oracle BPM, After some oracle support i got to fixed them. Issue Blog Here... Issue 3:BPM 12.2.1 process workspace activity guide not working. if you have a normal BPM Process, then this is the issue. In order to have data populated in "Activity Guide" firstly you should create a BPMN Guided Business Process. Below you can find the documentation about activity guide and how to create a Guided Business Process: https://docs.oracle.com/middleware/1221/bpm/bpm-develop/GUID-F765955D-90A5-48D4-8D2A-2F01FBB539E3.htm#BPMPD901 And here is specified: " A Guided Business Process is modeled as an activity guide that is based on a business process. The Activity Guide includes a set of Milestones. A milestone is a contained set of tasks that the end user has to complete. A milestone is complete when the user successfully runs a specific set of tasks in the milestone. " And in the below chapters you will find the ...

Swagger API document from Any WADL & Schema in Oracle SOA

Hi everyone, Hope everyone is doing well these days, Recently i started a project work over how to generate swagger API document for your any REST API, In case if you don't know what is swagger please go and check " https://swagger.io/tools/swagger-editor/ ". It's a great and easy to use tool which will help to create user friendly, human readable form API documentation with extension for generating API client in different languages with capability of testing your API from same. What is swagger editor, Design, describe, and document your API on the first open source editor fully dedicated to OpenAPI-based APIs. The Swagger Editor is great for quickly getting started with the OpenAPI (formerly known as the Swagger Specification) specification, with support for Swagger 2.0 and OpenAPI 3.0.  What benefits you will get by using swagger, Runs Anywhere, The Editor works in any development environment, be it locally or in the web. Smart Feedback, Validate you...