hi udo, #2-#4 are ok for me. +1 for #3
we have a plug-in concept (which is great) and we shouldn't start with introducing exceptions. we can host such a plug-in for java 1.5 at apache-extras and we can release it in an apache-extras maven repository. furthermore, most google code projects don't have a maven repository and we would have source-code which isn't testable because the ci-server wouldn't find the dependency and users have to check out the external project and have to build it manually. moreover, if the repository disappears, we also have a problem. regards, gerhard 2011/6/8, Udo Schnurpfeil <[email protected]>: > I like a solution, when the same artifact (of app or lib) will work in > both environments. > > Regards, > > Udo > > > Am 08.06.11 13:28, schrieb Arne Limburg: >> +1 for the Java-5-Webbeans-Plugin >> -- >> >> Arne Limburg - Enterprise Developer >> open knowledge GmbH, Oldenburg >> Bismarckstraße 13, 26122 Oldenburg >> Mobil: +49 (0) 151 108 22 942 >> Tel: +49 (0) 441 - 4082-0 >> Fax: +49 (0) 441 - 4082-111 >> [email protected] >> http://www.openknowledge.de >> >> Registergericht: Amtsgericht Oldenburg, HRB 4670 >> Geschäftsführer: Lars Röwekamp, Jens Schumann >> ________________________________________ >> Von: Udo Schnurpfeil [[email protected]] >> Gesendet: Mittwoch, 8. Juni 2011 13:23 >> An: [email protected] >> Betreff: Re: OWB with Java 1.5 and Servlet 2.4 >> >> Hi Gerhard, >> >> I don't know what the problem is, with the direct dependency. I've >> marked it as optional in the pom.xml. A Java 1.6 application will run >> without changes (and not having googlecode in the jar). But I can >> understand, that there are reasons on principal to have no dependencies >> to other project. >> >> Did I understand you correctly in your first solution approach? >> Compile the Sources of java.util.ServiceLoader with Java 1.5 and put it >> into a single JAR File. >> This might be also not very nice, as a general solution: OWB works with >> Java 1.5, when you compile some JDK classes. >> >> Sadly I don't know the plugin mechanism of OWB, so I can't write an easy >> patch for that solution. >> >> An other solution might be implementing a >> org.apache.webbeans.util.ServiceLoader and using this instead of the >> com.googlecode one. This might be the cleanest solution. >> >> So we have 4 possibilities: >> 1) googlecode >> 2) jdk 1.6 code self compiled in the project >> 3) plugin >> 4) writing own service-loader >> >> Regards, >> >> Udo >> >> >> Am 08.06.11 11:25, schrieb Gerhard Petracek: >>> hi udo, >>> >>> @OWB-582: >>> using com.googlecode.* directly in owb is imo no good idea. >>> since the service-loader isn't available in a java 1.5 environment, >>> you can repackage the service-loader in your project. so we don't have >>> to change owb itself - you just have an additional jar in your >>> project. if there is any issue with such an approach, we could create >>> an owb-plugin for it and you write your own plugin-implementation. >>> >>> @OWB-583: >>> looks fine to me (just had a quick look). >>> >>> regards, >>> gerhard >>> >>> 2011/6/8, Udo Schnurpfeil<[email protected]>: >>>> Hi, >>>> >>>> I would like to use OWB on WebSphere 6.1 (similar to Tomcat 5.5) which >>>> requires Java 1.5 and supports Servlet API 2.4. >>>> OWB needs Java 1.6 and Servlet API 2.5. >>>> >>>> Part 1: Java 1.6 >>>> >>>> After a close look into the sources I see, there is one basic dependency >>>> to Java 1.6: java.util.ServiceLoader >>>> To solve this problem, I've added a utility class in my local copy and >>>> delegate calls to ServiceLoader to this utility. >>>> >>>> The utility class itself calls ServiceLoader, if the class is available >>>> (Java 1.6) or uses com.googlecode.bspi.ServiceLoader (Java 1.5). >>>> So the application needs one new dependency (only in the case of Java >>>> 1.5). >>>> >>>> I've also changed the maven-compiler-plugin to generate Java 1.5 >>>> compatible byte code. >>>> >>>> Jira: https://issues.apache.org/jira/browse/OWB-582 >>>> >>>> Part 2: Servet API 2.5 >>>> >>>> Some classes uses the new function ServletContext.getContextPath() for >>>> logging and giving a thread a useful name. >>>> >>>> Here, I also added a utility class, and call >>>> servletContext.getServletContextName() in the case of Servlet API 2.4 >>>> >>>> Jira: https://issues.apache.org/jira/browse/OWB-583 >>>> >>>> Conclusion: >>>> >>>> There are not many dependencies to the new APIs and there are simple >>>> workarounds. With this changes (and a similar patch for the >>>> ServiceLoader in CODI) I'm able to run OWB on WebSpere 6.1 and Tomcat >>>> 5.5 with Java 1.5. >>>> >>>> Any suggestions? >>>> >>>> Regards, >>>> >>>> Udo >>>> >>>> > -- http://www.irian.at Your JSF powerhouse - JSF Consulting, Development and Courses in English and German Professional Support for Apache MyFaces
