Upgrade JiBX (and BCEL) towards support of 1.8 bytecode level

Issue: SPR-10423
This commit is contained in:
Juergen Hoeller
2016-07-25 13:08:46 +02:00
parent 64595597f3
commit da3e8611e1
4 changed files with 17 additions and 31 deletions

View File

@@ -556,13 +556,6 @@ project("spring-oxm") {
description = "Spring Object/XML Marshalling"
apply from: "oxm.gradle"
compileTestJava {
// necessary to avoid java.lang.VerifyError on jibx compilation
// see http://jira.codehaus.org/browse/JIBX-465
sourceCompatibility = 1.6
targetCompatibility = 1.6
}
dependencies {
compile(project(":spring-beans"))
compile(project(":spring-core"))
@@ -584,11 +577,9 @@ project("spring-oxm") {
testCompile("org.codehaus.jettison:jettison:1.3.7") {
exclude group: 'stax', module: 'stax-api'
}
if (compileTestJava.enabled) {
testCompile(files(genCastor.classesDir).builtBy(genCastor))
testCompile(files(genJaxb.classesDir).builtBy(genJaxb))
testCompile(files(genXmlbeans.classesDir).builtBy(genXmlbeans))
}
testCompile(files(genCastor.classesDir).builtBy(genCastor))
testCompile(files(genJaxb.classesDir).builtBy(genJaxb))
testCompile(files(genXmlbeans.classesDir).builtBy(genXmlbeans))
}
}

View File

@@ -7,6 +7,7 @@ configurations {
dependencies {
castor "org.codehaus.castor:castor-anttasks:1.4.1"
jibx "org.jibx:jibx-bind:1.2.6"
jibx "org.apache.bcel:bcel:6.0"
xjc "com.sun.xml.bind:jaxb-xjc:2.1.17"
xmlbeans "org.apache.xmlbeans:xmlbeans:2.6.0"
}
@@ -108,23 +109,18 @@ task genXmlbeans {
}
}
// add jibx binding to the normal test compilation process
// INCOMPATIBLE WITH OPENJDK 8 b89+
def jibxEnabled = project.properties.get("testGroups")?.toLowerCase()?.split(",")?.contains("custom_compilation")
if (jibxEnabled) {
compileTestJava {
def bindingXml = "${projectDir}/src/test/resources/org/springframework/oxm/jibx/binding.xml"
compileTestJava {
def bindingXml = "${projectDir}/src/test/resources/org/springframework/oxm/jibx/binding.xml"
doLast() {
project.ant {
taskdef(name: "jibx",
classname: "org.jibx.binding.ant.CompileTask",
classpath: configurations.jibx.asPath)
doLast() {
project.ant {
taskdef(name: "jibx",
classname: "org.jibx.binding.ant.CompileTask",
classpath: configurations.jibx.asPath)
jibx(verbose: true, load: true, binding: bindingXml) {
classpathset(dir: sourceSets.test.output.classesDir) {
include(name: "**/jibx/**/*")
}
jibx(verbose: true, load: true, binding: bindingXml) {
classpathset(dir: sourceSets.test.output.classesDir) {
include(name: "**/jibx/**/*")
}
}
}

View File

@@ -17,11 +17,10 @@
package org.springframework.oxm.jibx;
import java.util.ArrayList;
import java.util.List;
public class Flights {
protected List<FlightType> flightList = new ArrayList<FlightType>();
protected ArrayList<FlightType> flightList = new ArrayList<FlightType>();
public void addFlight(FlightType flight) {
flightList.add(flight);

View File

@@ -1,13 +1,13 @@
<?xml version="1.0" encoding="UTF-8"?>
<binding>
<mapping name="flights" class="org.springframework.oxm.jibx.Flights">
<namespace uri="http://samples.springframework.org/flight" default="elements"/>
<namespace uri="http://www.springframework.org/flight" default="elements"/>
<collection field="flightList">
<structure map-as="org.springframework.oxm.jibx.FlightType"/>
</collection>
</mapping>
<mapping name="flight" class="org.springframework.oxm.jibx.FlightType">
<namespace uri="http://samples.springframework.org/flight" default="elements"/>
<namespace uri="http://www.springframework.org/flight" default="elements"/>
<value name="airline" field="airline" usage="optional"/>
<value name="number" field="number" usage="required"/>
</mapping>