Wednesday, March 18, 2015

Problem with access SOA EM


Problem with access SOA EM






[ERROR] [J2EE JMX-46335] [] [tid: oracle.dfw.impl.incident.DiagnosticsDataExtractorImpl - Incident Dump Executor (created: Wed Mar 18 08:53:24 CET 2015)] [userId: ] [ecid: d490ace35472fb51:-7e89a104:14c214f7eba:-8000-00000000000a2aea,0] [APP: soa-infra] MBean attribute access denied. [[
  MBean: EMDomain:Name=soa-infra,EMTargetType=oracle_soainfra,type=EMIntegration,Application=soa-infra
  Getter for attribute EMInstanceProperties
  Detail: Access denied. Required roles: Admin, Operator, Monitor, executing subject: principals=[] java.lang.SecurityException: Access denied. Required roles: Admin, Operator, Monitor, executing subject: principals=[]


This can be happened on SOA cluster distributed on different physical servers. Only one server which is running on the same server as Admin Server is able to authenticate the users for SOA application & the other servers are not able to authenticate the users.


Solution:


- login into WLS console
- select the domain -> security -> Embedded LDAP
-  enable Refresh Replica At Starup ( default value is disable)
- save changes & restart all servers




Tuesday, March 17, 2015

Weblogic Stuck Threads



Weblogic Stuck Threads  (BEA-000337)








WLS generate the following errors;





<[STUCK] ExecuteThread: '7' for queue: 'weblogic.kernel.Default (self-tuning)' has been busy for "622" seconds working on the request "Workmanager: default, Version
: 0, Scheduled=true, Started=true, Started time: 622750 ms
[
POST /soa-infra/services/xxxxxxxxxxx/HTTP/1.1
Content-Type: text/xml; charset=utf-8
SOAPAction: ""
Transfer-Encoding: chunked
User-Agent: Java1.6.0_81
Accept: text/html, image/gif, image/jpeg, */*; q=.2
Connection: Keep-Alive



]", which is more than the configured time (StuckThreadMaxTime) of "600" seconds. Stack trace:
Thread-200 "[STUCK] ExecuteThread: '7' for queue: 'weblogic.kernel.Default (self-tuning)'" {
    jrockit.net.SocketNativeIO.readBytesPinned(SocketNativeIO.java:???)
    jrockit.net.SocketNativeIO.socketRead(SocketNativeIO.java:32)




In SOA environment most of Stuck Threads are generated by de applications self (services).


The first thing you need to contact the developers to check there service


As a workaround


Make the following modifications:
  1. Login to Weblogic Server Administration Console.  Default: http://localhost:7001/console
  2. Select 'Lock and Edit' (if WebLogic server is a Production Mode implementation)
  3. Go to  Home > Summary of Servers > AdminServer, Tuning tab.
  4. Change the Stuck Thread Max Time from 600 to 900.
  5. Change the Stuck Thread Timer Interval from 60 to 100
  6. Go to Overload tab
  7. Change the Max Stuck Thread Time from 600 to 900.
  8. Change the Stuck Thread Count 0 to 16.
  9. Save and Activate Changes.
  10. Restart the WebLogic server.

WebCenter (ADF) & Weblogic

WebCenter (ADF) & Weblogic





One of the challenge which I met by one of our customer was the problem with ADF application & Weblogic. 


Different types of errors like JBO-25009 can not create an object of type .... & JBO-26041: failed to post data during insert or


JBO-29114 ADFContext is not setup to process messages for this exception. Use the exception stack trace and error code to investigate the root cause of this exception. Root cause error code is JBO-29000. Error message parameters are


{0=java.sql.SQLException, 1=Protocol violation: [0]}
 This a well known error in Weblogic. WLS has a feature enabled by default in its JDBC Data SOurce That Wraps JDBC data types and which interferes with some LOB type handling in ADF; some issues in passivation for 10g ADF and other LOB interaction from the Entity Objects .


Solution:


Only from WLS 10.3.4 & late you can enable & disable this feature.


 login on WL console -> Services -> Data Sources-> (data Source Name)-> Connection Pool->


Advanced.
under Advanced check out Wrap Data Types.
By checking out Wrap Data Types this feature will be disabled.
Restart of the data source is needed but I prefer to restart Managed Server