* IDEMPIERE-5448 Can't launch unit test with Eclipse 2022-09
- upgrade to tycho 3.1.0-SNAPSHOT
- set maven compiler source and target level to 11
- upgrade to junit 5.9.1
* IDEMPIERE-5448 Can't launch unit test with Eclipse 2022-09
- Change tycho version to 3.0.3
* IDEMPIERE-5448 2023 June Platform Update
* IDEMPIERE-5448 2023 June Platform Update
- Explicitly set target, source and release level to JavaSE 11
* IDEMPIERE-5448 2023 June Platform Update
- Use 3.0.5-SNAPSHOT to fix stack overflow error.
* IDEMPIERE-5448 2023 June Platform Update
- Change source, target and release level to JDK 17
- Update target platform name to idempiere-230620
* IDEMPIERE-5448 2023 June Platform Update
- Fix LogFactory ClassNotFound exception with Eclipse 2023-06
* IDEMPIERE-5050 Service startup freeze
Switched all annotation-based factories to asynchronous class scan.
* Deferred MIssue record creation
Log errors on the database after all model factories are initialized.
* Moved webservice model classes over to its own package
Model factories WS_ModelFactory and AnnotationBasedModelFactory were
overlapping on the org.compiere.model package. This produced class
loading problems since the base bundle has no visibility over the
webservices bundle (e.g.: MWebservice).
* Minor changes
* IDEMPIERE-4492 update jetty to 9.4.33.v20201020 update atmosphere to 2.5.15
* IDEMPIERE-4492 update jetty to 9.4.33.v20201020 (update configuration)
update to default jetty configuration
delete unused configuration (alpn, http2,..)
* IDEMPIERE-4492 update orbit eclipse repository to 4.17
* IDEMPIERE-4492 update orbit eclipse repository to 4.17 (on parent pom)
* IDEMPIERE-4492 update jasper to 6.15.0
* IDEMPIERE-4492 update jasper to 6.15.0 (IDEMPIERE-4504)
get rid of bundle "org.w3c.dom.events version 3.0.0" by use old version of org.w3c.dom.smil
note: on target platform a bundle has multi version then tycho can pickup correct version define on feature (tab included plugins, field version)
but on eclipse when sync launching from .product it don't respect that value, always set highest version to bundle
workaround: on target platform manual un-select bundle org.w3c.dom.smil 1.0.1
* IDEMPIERE-4492 update atmosphere to 2.6.4
* IDEMPIERE-4492 refine target platform
use targetplatform-dsl to generate target platform https://github.com/eclipse-cbi/targetplatform-dsl
+ don't need to care update bundle version when update repository
+ at moment org.idempiere.eclipse.platform-feature include some feature form eclipse repository
so target has to include that feature so target platform will include all bundler request by feature and bundle request by plugins of that feature and so on (ever optional
so it make target content has more plugins than what we use on project
next step will convert include feature to include plugins to define only what we used
* IDEMPIERE-4492 refine target platform (continue)
don't include framework feature, use include plugins to void load transitive dependency so minimize target flatform
remove some unused feature from idempiere product
* IDEMPIERE-4492 update c3p0 and database jdbc (patch from Carlos)
* IDEMPIERE-4492 improve target platform (continue)
provide test bundle require to repository for use on offline
remove some unused bundle
also fix for IDEMPIERE-4475
* IDEMPIERE-4492 improve target platform (continue IDEMPIERE-4475)
add launch for unittest
add more require bundle for unit test
* IDEMPIERE-4492 fix for rest api
refer:https://github.com/eclipse-ee4j/jersey/issues/3588#issuecomment-720033467
* IDEMPIERE-4492 fix for rest api
refer:https://github.com/eclipse-ee4j/jersey/issues/3588#issuecomment-720033467
* IDEMPIERE-4492 update jetty to 9.4.33.v20201020 update atmosphere to 2.5.15
* IDEMPIERE-4492 update jetty to 9.4.33.v20201020 (update configuration)
update to default jetty configuration
delete unused configuration (alpn, http2,..)
* IDEMPIERE-4492 update orbit eclipse repository to 4.17
* IDEMPIERE-4492 update orbit eclipse repository to 4.17 (on parent pom)
* IDEMPIERE-4492 update jasper to 6.15.0
* IDEMPIERE-4492 update jasper to 6.15.0 (IDEMPIERE-4504)
get rid of bundle "org.w3c.dom.events version 3.0.0" by use old version of org.w3c.dom.smil
note: on target platform a bundle has multi version then tycho can pickup correct version define on feature (tab included plugins, field version)
but on eclipse when sync launching from .product it don't respect that value, always set highest version to bundle
workaround: on target platform manual un-select bundle org.w3c.dom.smil 1.0.1
* IDEMPIERE-4492 update atmosphere to 2.6.4
* IDEMPIERE-4492 refine target platform
use targetplatform-dsl to generate target platform https://github.com/eclipse-cbi/targetplatform-dsl
+ don't need to care update bundle version when update repository
+ at moment org.idempiere.eclipse.platform-feature include some feature form eclipse repository
so target has to include that feature so target platform will include all bundler request by feature and bundle request by plugins of that feature and so on (ever optional
so it make target content has more plugins than what we use on project
next step will convert include feature to include plugins to define only what we used
* IDEMPIERE-4492 refine target platform (continue)
don't include framework feature, use include plugins to void load transitive dependency so minimize target flatform
remove some unused feature from idempiere product
* IDEMPIERE-4492 update c3p0 and database jdbc (patch from Carlos)
* IDEMPIERE-4298: remove Bundle-RequiredExecutionEnvironment
when build by tycho value of Bundle-RequiredExecutionEnvironment and jdt need to compatibility
in case we use Bundle-RequiredExecutionEnvironment = 11 then can't build by jdk != 11
so stick on fix value isn't good
eclipse now also support Require-Capability, so don't need Bundle-RequiredExecutionEnvironment anymore
* IDEMPIERE-4298:support update jdk (jdk 12 13 14)
default environment still jdk-11 but you can build for any jdk by below command
export JAVA_HOME=path to jdk
mvn verify -Djdk.version=11
in case on JAVA_HOME is jdk 14 then can set jdk.version for 11, 12, 13, 14 and same for other jdk
at moment java 14 just support on eclipse 2020-03 with install plugin
Java 14 Support for Eclipse 2020-03 (4.15)
1. new version of cxf need new version of spring so get osgi version from org.apache.servicemix but spring of cxf limit to 4.0 so take 4.3.19.RELEASE_1
http://cxf.apache.org/docs/30-migration-guide.html
2. eclipse auto add --add-modules=ALL-SYSTEM when run eclipse launcher, so when run idempiere server from eclipse encounter bellow condition
javax.activity, javax.xml.ws is depricate package to remove on jdk11
that why this module is exclusive from build class path (but by --add-modules=ALL-SYSTEM it appear at runtime)
we use some replace jar for that package (com.sun.activation for javax.activation)
jaxws-api look same javax.xml.ws but when build with tycho it said about access restriction on package javax.xml.ws,..
(i guess jaxws-api is new and it follow jdk mudule)
javax.xml.ws is special package, it's marked for remove on next jdk release.
it can't resolve ever i use <arg>-warn:+discouraged,forbidden</arg>
https://bugs.eclipse.org/bugs/show_bug.cgihttps://bugs.eclipse.org/bugs/show_bug.cgi?id=537016
1. use latest jdt for support jdk10
2. tycho resolve dependency to javax.activation, javax.xml.bind from jdk, but jdk don't public it.
eclipse resolve by get highest version from com.sun.activation.javax.activation, jaxb-api
so need use Require-Bundle to force tycho choose com.sun.activation.javax.activation
2.1 if keep both import javax.activation and Require-Bundle com.sun.activation.javax.activation with get bellow exception on tycho but org.adempiere.base don't have this issue
[ERROR] /home/hieplq/1Dev/project/native/idempiere-dev-11/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/factory/DefaultFeedbackService.java:[16]
[ERROR] import javax.activation.DataSource;
[ERROR] ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[ERROR] Access restriction: The type 'DataSource' is not API (restriction on classpath entry '/home/hieplq/.m2/repository/p2/osgi/bundle/com.sun.activation.javax.activation/1.2.0/com.sun.activation.javax.activation-1.2.0.jar')
3. pass --add-exports for org.adempiere.base, install, server and swing
update jetty to 12
update almost library to latest version
change org.eclipse.jdt.core.compiler.batch to org.eclipse.jdt.core
change javax.management.j2ee-api to org.apache.geronimo.specs.geronimo-j2ee-management_1.1_spec, reduce dependency and correct dependency of activeMQ
javax.activation to com.sun.activation.javax.activation
lib for service will take from library instea of jdk
groovy to date