Weblogic 12 tips
Installing extension: javax.crypto #
On the very beginning of portal startup, there might be the following warning in the log:
Unresolved optional package references (in META-INF/MANIFEST.MF): [Extension-Name: javax.crypto, referenced from: C:\Oracle\Middleware12\user_projects\domains\liferay\servers\AdminServer\tmp\_WL_user\liferay-portal-6.2.0\kt5z84\war\WEB-INF\lib\_wl_cls_gen.jar]. Ensure that the referenced optional package has been deployed as a library.>
The solution is to install the: %WEBLOGIC_HOME%/jdk160_29/jre/lib/ext/sunjce_provider.jar as a library. Just install the jar in administration console. Weblogic will warn that module type of deployment is assumed, just ignore that as that is what we need.
Warning is caused by Extension-List defined in MANIFEST.MF; needed for jboss as 7.
Documentation for weblogic.xml Descriptor #
Of particular usefulness is making it easier to debug jsp issues (since weblogic is so pedantic when it comes to JSPs). You can specify where to store the jsp output in an easy to find location by editing the weblogic.xml descriptor and adding the following element under the
Debug weblogic #
export DEBUG_PORT=8000 debugFlag=true JAVA_OPTIONS="-Dexternal-properties=my.properties"; ./startWebLogic.sh
Java Assertions #
Weblogic (at least 12.1.1) has java assertions enabled by default.
This means that any library which uses assertions internally may suddenly start to complain about those, where in other environments those didn't appear (like developing in tomcat, and later deploying to weblogic). You may find you get
java.lang.AssertionErrorin the logs and the portal doesn't work. In that case it may be required to amend the
JAVA_OPTIONSused to start the app server, since assertion configuration is global and not classloader aware. At least it is java package aware so it's suggested to disable assertions for the affected packages. For instance, in the default deploy scripts Liferay uses to setup a weblogic bundle, it adds the following assertion configuration:
The ellipsis symbol (
...) is used to indicate this and any sub-packages.