1 Reply Latest reply on Apr 12, 2018 12:29 PM by gonzaloandes

    Oracle ADF application crashes under JBoss...

    nickjob

      Hi!

       

      I have been asked to make an application that was developed with Oracle JDeveloper 10.1.3.2.0 run on a JBoss EAP 6.4.16 server.

       

      Now I know neither of these tools are still supported or with full support but this is academic right now, I have to get it to work regardless..

      .

      A migration to something (fully) supported will have to be done later but can't right now...

       

      It was attempted years ago to make it work under JBoss and that had failed. Since then the application had been running under WebSphere 7.x...

       

      WebSphere support on that version is coming to an end and it is unknown if the application would work on a more recent version of WebSphere...

       

      I have been told that the best they could do in the past to make it work on something other than WebSphere was to have it work with Tomcat. I unfortunately do not know with which version.

       

      The application in question is an Oracle ADF application (a flavour of JSF and from what I can tell, it's JSF 1.0...).

       

      If I take an EAR that would work under WebSphere nothing works on JBoss...

       

      The EAR in question contains all the JARs needed for the application and a WAR file. The WAR file contains two JARs in its WEBINF/lib directory which are actually duplicates of JARS in the EAR...

       

      The JARs in the EAR appear to have been put there by the original developers without bothering to check if they are actually needed, they appear to have just put there almost every JARs provided in some directories of JDeveloper without bothering to check if they are actually needed...

       

      (There are a lot of things which should never have been put there like POP3 support and both the normal and debug version of the same JAR...).

       

      Now, if I reorganize things and put all those JARs in the WAR file WEBINF/lib directory the application attempts to start but eats up every database connection in our test environment...

       

      I am told that, under WebSphere, this happens when the class loader is set to PARENT_FIRST, it has to be set to PARENT_LAST for the application to behave.

       

      Now, from what I understand, this changes the order in which JARs are loaded, most likely giving more priority in the classpath to libraries provided in the EAR instead of the ones provided by the server.

       

      Now, JBoss as far as I can tell wants to load the application PARENT_FIRST with catastrophic results...

       

      I have tried to set it to PARENT_LAST using loader-repository-config with java2ParentDelegation set to false in a jboss-app.xml file but I get a warning message telling me that this is deprecated and the configuration has been discarded.

       

      Now I already added a jboss-deployment-structure.xml file because that Oracle ADF JSF implementation is JSF 1.x (I think 1.0) so I used the recipe to move JSF 2 out of the way and use JSF 1.2...

       

      For now, I am trying to use the JSF jars provided with the server, not the original 1.0 ones...

       

      I thought, possibly mistakenly, that by listing my JARs as well in there as "resource-root" I could get better control over the class loading but it does not seem to make much different...

       

      The only way to have all JARs seen by the application is to put them in the WAR WEBINF/lib but if I do that, things crash database wise as before, the application still tries to allocate all databases connection it can...

       

      (By the way, the Oracle ADF framework bypasses JBoss connection pool, at least for all practical purposes...)

       

      If I put every JAR in the root of the EAR like they were before or it does not work, it cannot resolves all libraries and fails with classloading exceptions...

       

      If I split the JARs between the root of the EAR (for all third party libraries) and the WAR WEBINF/lib (for the applcations own JARs, I get similar results...

       

      I have seen that modules are, apparently, the way to go but as I cannot explain why I have classloading problems I have currently and has this would take a lot of time without the promise of results, I am not sure if I should attempt doing my own modules...

       

      I need help gals and guys and please no "update your systems", I don't have a say in this, even my immediate boss has no say in this, we have to make do with what we have currently...

       

      Thank you and have a nice day!

       

      Nick

        • 1. Re: Oracle ADF application crashes under JBoss...
          gonzaloandes

          Hi nickjob,

           

          Have had some news about this issue?

          I am facing the same challenge. I have to migrate ADF framework to another standard framework in order to run these applications on either JBoss EAP 6.X or 7.x. But I hadn't thought in this approach. Apparently, there are more colleagues trying to deploy the ADF framework on Jboss, so maybe it could be possible this.

          any tips would be helpful!

           

          regards.