Wednesday 23 March 2016

readDomain() on Unpacked Weblogic 12C Domain Not Working

We have observed the below issue on 12.1.3 version of weblogic server.

As a part of pack-unpack to create a managed server we have performed the below steps :

--> Created a domain
--> Created a jar file of the domain using the pack utility :

./pack.sh -managed=true -domain=<User_Project_Dir> /domains/<Domain_Name> -template=<User_Project_Dir>/domains/<Domain_Name>.jar -template_name="<Domain_name>"

This will create the jar file at the location.

--> We have tried to unpack the same at the managed server location. Unpack was successfull.

After completion of unpack, we were unable to read the domain.

Connect to WLST :

After connecting to the WLST :
--> readDomain(<Original Domain Directory Location>)

This worked fine

--> readDomain(<domainDirecotry of the unpacked domain>)
This did not work with the below error :

com.oracle.cie.domain.script.jython.WLSTException: com.oracle.cie.domain.script.ScriptException: com.oracle.cie.common.CommonException: fail to load domain from directory
Root Cause: java.lang.reflect.InvocationTargetException

Caused by: com.oracle.cie.domain.script.ScriptException: com.oracle.cie.common.CommonException: fail to load domain from directory
Root Cause: java.lang.reflect.InvocationTargetException
        at com.oracle.cie.domain.script.ScriptExecutor.readTemplate(ScriptExecutor.java:542)
        at com.oracle.cie.domain.script.jython.WLScriptContext.readDomain(WLScriptContext.java:746)
        ... 30 more
Caused by: com.oracle.cie.common.CommonException: fail to load domain from directory
Root Cause: java.lang.reflect.InvocationTargetException


This error was not observed in the 10.3.6 version of weblogic server. This has been reported as a bug with Oracle and currently ( as on 23rd March 2016 ), Oracle is working on resolving the issue.

We will keep this post updated once the issue is resolved.


However, as a temporary work around, please use the pack command with the syntax "managed=false"

This is only a temporary work around and not a permanent solution.