Monday, October 19, 2015

WebCenter Enterprise Capture Console or Client, Error 404

After installing capture 11.1.1.9 on a windows machine, after installing i get 404 error when i access url or rather try to login.

Solution was from a oracle document, but seems like we need to retarget capture application.

Un-target and re-target the Capture deployment to the Capture Server:

1. Log into the Weblogic Server Console.
2. Click Deployments in the Domain Structure list.
3. Select Capture.
4. Check Capture.
5. Click Change Deployments.
6. Uncheck the Capture_Server (or cluster) check box.
7. Click Yes. This will save the un-target for the Capture deployment to the Capture Server.
8. Check Capture from the list of deployments again.
9. Select Change Targets.
10. Check the Capture_Server (or cluster) check box
11. Click Yes.

Tuesday, September 22, 2015

Oracle Impdp Failed on RAC with ORA-31640, ORA-19505, ORA-27037, Linux-x86_64 Error: 2: No such file or directory

We were doing a import on 3 node RAC (exadata)using IMPDP.We obviously used prallelism, but faced below error.First look indicated that its related to OS/Filesystem. But its related to how impdp worked on a RAC node.

Additional information: 3
ORA-31693: Table data object "ORACLE_ORASDPM"."MESSAGE" failed to load/unload and is being skipped due to error:
ORA-31640: unable to open dump file "/oracle/oracle_soa_schemas_exp.dmp" for read
ORA-19505: failed to identify file "/oracle/oracle_soa_schemas_exp.dmp"
ORA-27037: unable to obtain file status
Linux-x86_64 Error: 2: No such file or directory

Cause:
When you are using a cluster database, it is possible for datapump workers to start on any of the available nodes when using parallelism. In our case dump file was local to node1, so node2 and 3 were unable to access it. If the nodes that start the workers do not have access to the datapump directory they will be unable to process the files.

Solution:
Impdp seems to have option "Cluster=N" .
This will remove the other nodes from the impdp process.


Friday, May 29, 2015

OIM 11g quartz scheduler logging

 We had some issues in OIM quartz scheduler.So, we had to enable logging for it.The process for it is slightly different.

Solution:
- Go to  OIM_ORACLE_HOME/server/config
- Create a logging.properties with content,

handlers=java.util.logging.FileHandler, java.util.logging.ConsoleHandler
# default log level
.level=INFO
# Quartz logger level
org.quartz.level=FINEST
# log file name for the quartz log
java.util.logging.FileHandler.pattern=quartz%u.log
# formatter
java.util.logging.FileHandler.formatter=java.util.logging.SimpleFormatter
# limit the size of the file
java.util.logging.FileHandler.limit=1000000
# recycle
java.util.logging.FileHandler.count=10

In the setDomainenv.sh add to the JAVA_OPTIONS,

-Djava.util.logging.config.file=%OIM_ORACLE_HOME%/server/config/logging.properties

This will need the OIM managed server restart and the log file will get created in domain home with name quartzX.log

Oracle Directory Integration Platform(DIP)

   I had encountered Oracle directory integration platform in 2008, when i was working to integrate EBS HR module with OID 10g.It had some complex profile setup and i did many tests on it and found lot of issues and worked with oracle support/dev almost for a year !!Finally it worked !

   Nowadays, I manage a team which works on Fusion middleware products.The IDM suite specifically is getting complex day by day with addition of products or each version having architecture changes.But one thing which remains almost same is the OID.

   Though there are some changes ofcourse which can be read here. In 10g where dip was a process, in 11g its a j2ee application.It can be used to develop repository integration solution with other ldap directories.Oracle Directory Integration Platform  provides Synchronization Service and Provisioning Services.

       



EBS to OID bidirectional integration

I had a query from an internal team , they had setup EBS 12.2 to oid 11g integration.A user created in EBS was populating to oid ,but user created in oid was not syncing up in EBS.

So, the above problem statement makes veteran Fusion experts know where to look, let me crack a simple to do list for dummies.

Came across a superb blog ,
https://blogs.oracle.com/stevenChan/entry/password_management_with_oracl


1)Issue in EBS to OID sync, Look in the EBS profile options.

Applications SSO Enable OID Identity Add Event
  • When profile 'Applications SSO Enable OID Identity Add Event' value is 'Enabled', users created in OID are automatically created in E-Business and subscribed to the E-Business instance.
  • When profile 'Applications SSO Enable OID Identity Add Event' value is 'Disabled', users created in OID will not be automatically created in E-Business. They can be created in E-Business (and subscribed to it) only after provsubtool or OIDDAS Edit Service Recipient page is used to subscribe existing users to the particular E-Business instance. 
  • Application SSO LDAP Synchronization must be ENABLED regardless of provisioning type
2)Issue with oid user to sync with EBS , there are dip profiles which are created by default and are bidirectional by default.
  • Log in to Oracle Enterprise Manager Fusion Middleware Control.
  • In the navigation panel on the left, click or expand the Identity and Access entry and then select the DIP component that contains the profile you want to edit.
  • Click the DIP Server menu, point to Administration, and then click Synchronization Profiles. The Manage Synchronization Profiles appears displaying a list of the existing profiles.
  • Here it turned to be simple case of misconfiguration of OID details on em, i.e worng port on server properties of DIP application.This can be changed via command line or in the em console.
This is very very basic way to troubleshoot, there can be lot many things wrong.


Wednesday, May 20, 2015

OIM error (org.jgroups.protocols.UDP._send)

  We found this error in logs when customer reported it.

[APP: oim#11.1.2.0.0] failed sending message to null (58 bytes)[[
java.lang.Exception: dest=/19.19.19.19:45566 (61 bytes)
at org.jgroups.protocols.UDP._send(UDP.java:212)
at org.jgroups.protocols.UDP.sendToAllMembers(UDP.java:167)
at org.jgroups.protocols.TP.doSend(TP.java:1102)
at org.jgroups.protocols.TP.send(TP.java:1088)
at org.jgroups.protocols.TP.down(TP.java:907)
at org.jgroups.protocols.PING.sendMcastDiscoveryRequest(PING.java:276)
at org.jgroups.protocols.PING.sendGetMembersRequest(PING.java:256)
at org.jgroups.protocols.Discovery$PingSenderTask$1.run(Discovery.java:396)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:304)

This is known bug and we fixed this by following a workaround given by Oracle.

We just  added below parameter in OIM startup argument.Based on you are starting from console or backend you need to make this change.   -Djava.net.preferIPv4Stack=true