JDK-8066067 : xml_schema/msData/element/jaxb/elemZ020.html (10 more) Test case fails with javax.xml.bind.UnmarshalException
  • Type: Bug
  • Component: xml
  • Sub-Component: javax.xml.validation
  • Affected Version: 9
  • Priority: P2
  • Status: Closed
  • Resolution: Duplicate
  • OS: generic
  • CPU: generic
  • Submitted: 2014-11-27
  • Updated: 2015-12-01
  • Resolved: 2015-12-01
Related Reports
Duplicate :  
Relates :  
Description
Testsuite name:JCK devtools
Test name: xml_schema/msData/element/jaxb/elemZ020.html\#elemZ020.v
(Complete list mentioned in the comment section as rule)

Product tested:JDK 9 b40 (Jigsaw m2)
OS/architecture:Linux x64 (Issue on all platform)
   
Error log file (if present): In the attachment.

Reproducible: Always  

Is it a Regression:Yes 
([If Regression]) Regression introduced in release/build: JDK 9 b29. 

Test result on the last GAed release for this train: Not Applicable.
([if Fail] Test result on FCS

Is it a platform specific issue:NO 
Is it a new (previously unsupported) OS/browser/mode testing: 
[If new configuration testing] Issue specific to execution mode or OS/browser version: 

Steps to reproduce: 

{JDK}/bin/java -Djava.security.policy={JCK-devtools-9}
/lib/jck.policy -Xss1m -Xms32m -Xmx256m  com.sun.jck.lib.ExecJCKTestSameJVMCmd -loadDir {JCK-devtools-9}/classes -loadImpl /export/home/gtee/jck/workDir/classes/element/elemz020 javasoft.sqe.tests.api.javax.xml.bind.JAXBTest -TestURL {JCK-devtools-9}/tests/xml_schema/msData/element/jaxb/elemZ020.html#elemZ020.v -package javasoft.sqe.tests.element.elemz020 -out :ref -document ../elemZ020.xml -pcontent elemz020-elemZ020.jbx -schema ../elemZ020.xsd


Exception:

java version "1.9.0-ea"
Java(TM) SE Runtime Environment (build 1.9.0-ea-jigsaw-nightly-h1764-20141121-b40)
Java HotSpot(TM) Client VM (build 1.9.0-ea-jigsaw-nightly-h1764-20141121-b40, mixed mode)

javax.xml.bind.UnmarshalException
 - with linked exception:
[org.xml.sax.SAXParseException; systemId:{JCK-9-Devtools}/tests/xml_schema/msData/element/elemZ020.xml; lineNumber: 6; columnNumber: 22; cvc-complex-type.2.4.d: Invalid content was found starting with element 'foo:foo'. No child element is expected at this point.]
	at javax.xml.bind.helpers.AbstractUnmarshallerImpl.createUnmarshalException(AbstractUnmarshallerImpl.java:335)
	at com.sun.xml.internal.bind.v2.runtime.unmarshaller.UnmarshallerImpl.createUnmarshalException(UnmarshallerImpl.java:563)
	at com.sun.xml.internal.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal0(UnmarshallerImpl.java:249)
	at com.sun.xml.internal.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal(UnmarshallerImpl.java:214)
	at javax.xml.bind.helpers.AbstractUnmarshallerImpl.unmarshal(AbstractUnmarshallerImpl.java:157)
	at javax.xml.bind.helpers.AbstractUnmarshallerImpl.unmarshal(AbstractUnmarshallerImpl.java:162)
	at javax.xml.bind.helpers.AbstractUnmarshallerImpl.unmarshal(AbstractUnmarshallerImpl.java:171)
	at javasoft.sqe.tests.api.javax.xml.bind.JAXBTest.unmarshal(JAXBTest.java:167)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:498)
	at javasoft.sqe.javatest.lib.MultiTest.invokeTestCase(MultiTest.java:405)
	at javasoft.sqe.javatest.lib.MultiTest.run(MultiTest.java:194)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:498)
	at com.sun.jck.lib.ExecJCKTestSameJVMCmd$Version2Test.execute(ExecJCKTestSameJVMCmd.java:461)
	at com.sun.jck.lib.ExecJCKTestSameJVMCmd$StandardTest.run(ExecJCKTestSameJVMCmd.java:419)
	at com.sun.jck.lib.ExecJCKTestSameJVMCmd.execute(ExecJCKTestSameJVMCmd.java:305)
	at com.sun.jck.lib.ExecJCKTestSameJVMCmd.run(ExecJCKTestSameJVMCmd.java:225)
	at com.sun.javatest.agent.Agent$Task.executeCommand(Agent.java:845)
	at com.sun.javatest.agent.Agent$Task.execute(Agent.java:789)
	at com.sun.javatest.agent.Agent$Task.handleRequest(Agent.java:645)
	at com.sun.javatest.agent.Agent.handleRequestsUntilClosed(Agent.java:416)
	at com.sun.javatest.agent.Agent.access$000(Agent.java:60)
	at com.sun.javatest.agent.Agent$1.run(Agent.java:282)
	at java.lang.Thread.run(Thread.java:745)
Caused by: org.xml.sax.SAXParseException; systemId: {JCK-9-Devtools}//tests/xml_schema/msData/element/elemZ020.xml; lineNumber: 6; columnNumber: 22; cvc-complex-type.2.4.d: Invalid content was found starting with element 'foo:foo'. No child element is expected at this point.
	at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.createSAXParseException(ErrorHandlerWrapper.java:203)
	at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.error(ErrorHandlerWrapper.java:134)
	at com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(XMLErrorReporter.java:396)
	at com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(XMLErrorReporter.java:327)
	at com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(XMLErrorReporter.java:284)
	at com.sun.org.apache.xerces.internal.impl.xs.XMLSchemaValidator$XSIErrorReporter.reportError(XMLSchemaValidator.java:497)
	at com.sun.org.apache.xerces.internal.impl.xs.XMLSchemaValidator.reportSchemaError(XMLSchemaValidator.java:3574)
	at com.sun.org.apache.xerces.internal.impl.xs.XMLSchemaValidator.handleStartElement(XMLSchemaValidator.java:1974)
	at com.sun.org.apache.xerces.internal.impl.xs.XMLSchemaValidator.startElement(XMLSchemaValidator.java:815)
	at com.sun.org.apache.xerces.internal.jaxp.validation.ValidatorHandlerImpl.startElement(ValidatorHandlerImpl.java:569)
	at com.sun.xml.internal.bind.v2.runtime.unmarshaller.ValidatingUnmarshaller.startElement(ValidatingUnmarshaller.java:86)
	at com.sun.xml.internal.bind.v2.runtime.unmarshaller.SAXConnector.startElement(SAXConnector.java:153)
	at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.startElement(AbstractSAXParser.java:508)
	at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.scanStartElement(XMLNSDocumentScannerImpl.java:378)
	at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:2790)
	at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:605)
	at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.next(XMLNSDocumentScannerImpl.java:116)
	at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:511)
	at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:876)
	at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:805)
	at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:140)
	at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1212)
	at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:648)
	at com.sun.xml.internal.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal0(UnmarshallerImpl.java:243)
	... 26 more
Event 0: FATAL_ERROR at (6, 22): cvc-complex-type.2.4.d: Invalid content was found starting with element 'foo:foo'. No child element is expected at this point.
<?xml version="1.0" encoding="UTF-8" standalone="yes"?><ns2:root xmlns:ns2="foo"><ns2:foo>true</ns2:foo><foo>123</foo><ns2:foo>true</ns2:foo><foo>123</foo></ns2:root>
result: Failed. test cases: 3; passed: 2; failed: 1; first test case failure: unmarshal


test result: Failed. test cases: 3; passed: 2; failed: 1; first test case failure: unmarshal
   

Comments
It appears the test (xsd and xml that Vaibhav provided) is the same as the one in JDK-8142463. This issue is now fixed through JDK-8142463. Thanks.
01-12-2015

In the method XMLSchemaValidator.handleStartElement: occurenceInfo value is NULL. if (occurenceInfo != null) { final int maxOccurs = occurenceInfo[1]; final int count = occurenceInfo[2]; // Check if this is a violation of maxOccurs if (count >= maxOccurs && maxOccurs != SchemaSymbols.OCCURRENCE_UNBOUNDED) { reportSchemaError("cvc-complex-type.2.4.f", new Object[] { fCurrentCM.getTermName(occurenceInfo[3]), Integer.toString(maxOccurs) }); } else { reportSchemaError("cvc-complex-type.2.4.d", new Object[] { element.rawname }); } } else { reportSchemaError("cvc-complex-type.2.4.d", new Object[] { element.rawname }); }
27-11-2014

Regression established in JDK 9 b29 with the fix : https://bugs.openjdk.java.net/browse/JDK-8037819
27-11-2014