Uploaded image for project: 'Isis'
  1. Isis
  2. ISIS-1767

[Duplicate] JEE 7+ Support

    XMLWordPrintableJSON

    Details

    • Type: Improvement
    • Status: Closed
    • Priority: Major
    • Resolution: Duplicate
    • Affects Version/s: None
    • Fix Version/s: 2.0.0
    • Component/s: Core
    • Labels:
      None

      Description

      Collective tasks for Java EE 7+ support.

      Designated branch ...

      dev/2.0.0/ISIS-1767-jee-7

      Tests

      • Server: JEE 7+ implementation (or similar), launched with JDK8 (Version 1.8.0_152); for deployment we use the HelloWorld artifact 1.15.1 with minor modifications
      • fat-war: deploy all dependencies with single war (hsqldb in memory)
      • skinny-war: prepare container with shared libraries and shared domain objects, deploy only a subset of domain classes with single war (hsqldb in memory)
      • restEasy: check whether restEasy responds
      • managed connection pool (con.pool): use mysql db connection pool managed by the JEE container and provided via JNDI
      • domain events (dom.events): test whether domain events are emitted and handled using AxonFramework's SimpleEventBus
      • swagger-ui: test whether the static index.html from swagger-ui is served and verify that a request for '/<app-context>/restful/swagger/private' returns a JSON, that has the 'basePath' set to '/<app-context>/restful'
      • redeploy: test whether all previous tests succeed if we do a deploy-undeploy-deploy process
      Server fat-war skinny-war restEasy con.pool dom.events swagger-ui redeploy
      Payara (full 4.1.2.173) OK OK OK OK OK OK OK(6)
      Payara (web 4.1.2.173) OK OK OK OK OK OK OK(6)
      Glassfish (full 4.1.2) OK(1) OK(1) OK todo OK OK OK(6)
      Glassfish (web 5.0.1 beta) OK OK OK(5) todo OK OK todo
      Glassfish (full 5.0) FAILED(2) todo todo todo todo todo todo
      Wildfly (full 11.0.0) FAILED(3) todo todo todo todo todo todo
      TomEE (plume 7.0.4) OK(4) todo OK todo todo todo todo

      Notes:

      (1)
      Guava version conflict: GF 4.2.1 has Guava-13, Isis has Guava-19;
      WORKAROUND modify your glassfish installation ...

      • in glassfish/modules/ replace guava.jar with that which comes packaged with Payara-4.1.2.173 (Guava-19)
      • you need to clear the OSGI cache: delete the folder glassfish/domains/domainXXX/osgi-cache/felix

      (2)
      ON-HOLD waiting for GF 5.0.1 release!
      class-loading issues with Hibernate Validator, though library is included in war ... java.lang.ClassNotFoundException: org.joda.time.ReadableInstant;
      using patch https://github.com/hibernate/hibernate-validator/pull/857/files does not help: introduces new class-loading issues;

      (3)
      class-loading issues, though library is included in war ... javax.persistence.PersistenceException: WFLYJPA0057: PersistenceProvider 'org.apache.isis.core.webapp.jee.PersistenceUnitNoopProvider' not found;

      (4)
      requires CXF to be disabled, see https://stackoverflow.com/questions/41496204/tomee-7-0-2-how-to-disable-cxf-rs
      throws exceptions on undeploy

      (5)
      JAX-RS API version clash
      requires <resteasy-jaxrs.version>4.0.0.Beta1</resteasy-jaxrs.version>
      see https://issues.apache.org/jira/browse/ISIS-1779

      (6)
      successfully tested against DN-5.1.5-SNAPSHOT (dedicated issue https://issues.apache.org/jira/browse/ISIS-1754)

        Attachments

          Issue Links

            Activity

              People

              • Assignee:
                hobrom Andi Huber
                Reporter:
                hobrom Andi Huber
              • Votes:
                1 Vote for this issue
                Watchers:
                3 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: