WebLogic

WebLogic is supported also out-of-box but there is special trick which is necessary to be used. You must ensure that your servlet initializer directly implements WebApplicationInitializer (even if you extend from a base class that already implements it). But this solves OpenHub via OpenHubApplication.class.

Correct configuration defined in weblogic-application.xml is expected (it is located in src/main/application/META-INF directory of maven module with ear packaging).

<?xml version="1.0" encoding="UTF-8"?>
<wls:weblogic-application
   xmlns:wls="http://xmlns.oracle.com/weblogic/weblogic-application"
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xsi:schemaLocation="http://xmlns.oracle.com/weblogic/weblogic-application http://xmlns.oracle.com/weblogic/weblogic-application/1.5/weblogic-application.xsd">

   <wls:session-descriptor>
      <wls:cookie-secure>true</wls:cookie-secure>
      <wls:url-rewriting-enabled>false</wls:url-rewriting-enabled>
   </wls:session-descriptor>

   <wls:prefer-application-packages>

      <wls:package-name>javax.validation.*</wls:package-name>
      <wls:package-name>org.apache.logging.*</wls:package-name>
      <wls:package-name>com.google.common.*</wls:package-name>
      <wls:package-name>org.apache.log4j.*</wls:package-name>
      <wls:package-name>org.apache.commons.logging.*</wls:package-name>
      <wls:package-name>org.slf4j.*</wls:package-name>
      <wls:package-name>javax.faces.api.*</wls:package-name>
      <wls:package-name>javaee.api.*</wls:package-name>
      <wls:package-name>javax.validation.api.*</wls:package-name>
      <wls:package-name>javax.persistence.*</wls:package-name>
      <wls:package-name>javax.persistence.api.*</wls:package-name>
      <wls:package-name>org.hibernate.*</wls:package-name>
      <wls:package-name>org.hibernate.validator.*</wls:package-name>
      <wls:package-name>com.google.guava.*</wls:package-name>
      <wls:package-name>org.joda.time.*</wls:package-name>
      <wls:package-name>javassist.*</wls:package-name>
      <!--
         WebLogic contains bcprov-jdk16-1.45.jar, so if we use specific implementation, default implementation should be excluded.
      -->
      <wls:package-name>org.bouncycastle.crypto.*</wls:package-name>

   </wls:prefer-application-packages>

   <wls:prefer-application-resources>
      <wls:resource-name>javax.persistence.*</wls:resource-name>
      <wls:resource-name>org.slf4j.impl.StaticLoggerBinder</wls:resource-name>
   </wls:prefer-application-resources>

</wls:weblogic-application>

That is all. From project point of view all other needs are solved in project side.

There is known issue on WebLogic 12c with wrong order of filter initialization. Oracle released patches, but it is possible to solve it with inversion order of filter registration.