Welcome! |
Tag: jck.prolog
Welcome to the Configuration Editor for JAXB TCK testsuite! |
None |
Configuration Name |
Tag: jck.env.envName
Provide a short identifier that names the configuration you are creating. |
This is a short string that identifies this particular configuration.
Select a name that describes the configuration.
Example: jaxb_win32
The name must begin with a letter, followed by letters, digits, or an
underscore, and must not contain a white space or punctuation
characters. |
Description |
Tag: jck.env.description
Provide a short description that identifies the configuration you are creating. |
JavaTest uses this short description to
provide more detail about the configuration,
for example, in reports. This information
might be useful to an auditor looking at the
test run reports, and could include the
version number of the product and the name
of the tester.
Example: John Smith x86 Java Architecture for XML Binding 2.3 |
Execution Mode |
Tag: jck.env.testPlatform.multiJVM
Specify whether you want to run the tests in SingleJVM or MultiJVM
mode. Depending on the selected mode, you can configure to run the
compiler either from the command line, or via the Java Compiler API,
or via a custom class accessed by the core reflection API. |
Answer MultiJVM Mode if the JavaTest harness can directly start your
product, for example, from a command line in an MSDOS window or UNIX
shell; this is the required mode for the JAXB TCK.
Typically, applications that do not support such actions run in
point-and-click environments or in browsers. For example, the JavaTest
harness cannot start a new instance of a Java virtual machine inside a
browser.
If you answer MultiJVM Mode , then you need to answer additional
interview questions to specify whether you plan to run the tests
locally. In addition, you need to specify the details about the Java
Virtual Machine in which the tests will run (the questions in the
Runtime Other JVM section of this interview) and the details about
the Java launcher. |
Execute Locally |
Tag: jck.env.testPlatform.local
Will you run the TCK tests on the system that hosts the JavaTest harness? |
If you plan to run the tests on the system on which you are running
this interview, then the editor gathers configuration information
directly from the system. For example, you will be able to browse the
local file system to point to the required files. |
Agent Type |
Tag: jck.env.jaxb.agent.agentType
The JavaTest Agent can be run in two modes: active and passive.
Which mode do you wish to use? |
Select the agent type you wish to use. If you want to use the passive
agent, then two additional questions will appear asking you to specify
the passive agent host and default agent port. |
Passive Host |
Tag: jck.env.jaxb.agent.agentPassiveHost
What is the of the host on which you run the tests? |
This is the name of the system on which the passive agent runs and
executes tests. The name of the system must be accessible from the
system on which JavaTest runs. Since the JavaTest agent is passive,
you can only change the machine you specify here by running this
interview again and changing the name of the passive host. |
Default Agent Port |
Tag: jck.env.jaxb.agent.useAgentPortDefault
Do you wish to use the default port for the JavaTest harness to contact
the JavaTest Agent? |
By default, the JavaTest harness communicates with a passive agent
using port 1908. You must change only the default if you are running
more than one passive agent on a system; this might be the case if you
have set up batch runs.
If you answer No , then you will need to specify the default port
number in the next interview question. |
Passive Port |
Tag: jck.env.jaxb.agent.agentPassivePort
Which port does the JavaTest harness use to contact the JavaTest Agent? |
Specify the port you want to use to communicate with the JavaTest agent. |
Test Platform File Separator |
Tag: jck.env.jaxb.agent.fileSeparator
Which file separator character is used on the test platform? |
Specify the appropriate file separator for your operating system.
For example, for Windows, use the back slash (\) character. For Solaris
OS or Linux operation system, use the forward slash (/) character. |
Test Platform Path Separator |
Tag: jck.env.jaxb.agent.pathSeparator
Which path separator character is used on the test platform?. |
Specify the appropriate path separator for your operating system.
For example, on Windows systems, specify the ; character, on Unix
systems specify the : character. Other platforms may differ. |
Agent Map File |
Tag: jck.env.jaxb.agent.mapArgs |
Because JavaTest and the JavaTest agent run on different systems,
values such as path names and variable names may differ on each system.
For example, if a file is accessed over a network, it might be mounted
as H:\tests\lib on the JavaTest system and as F:\tests\lib on the
system running the JavaTest agent. The map file is used to associate
values used on the JavaTest agent with those used by JavaTest. The map
file is specified on the JavaTest agent, but the use of the map must be
enabled here. For more information about map files, refer to the
JavaTest User’s Guide or to the JavaTest online help. |
Java Launcher |
Tag: jck.env.jaxb.testExecute.cmdAsFile
Enter the full path name of the Java launcher that runs the tests through
the Java Compiler API interface. |
This interview question appears only if you answered Yes to the Test Platform
MultiJVM question of this interview.
This is the command used on the reference system to invoke the Oracle
reference Java.
NOTE: Use the java command in JDK (not JRE).
* On Solaris or Linux platforms, type:$JAVA_HOME/bin/java
For example: /usr/java/bin/java
* On Win32 systems, type: %JAVA_HOME%\bin\java.exe
For example: “C:\Java\jdk–9\bin\java.exe”
Ensure that you supply the full file name, including the file extension. |
Other Options |
Tag: jck.env.jaxb.testExecute.otherOpts
Specify any additional commandline options that must be set. |
Specify any command-line options that JavaTest should set for your
compiler when it runs the tests on your system. Specify the options
using name=value pairs. For example you may want to specify:
-Xmx256m -Xms128m to change the default maximum and initial Java heap
size.
NOTE: If you use Java Launcher from JCK 8 to run the tests, specify the
-Djava.endorsed.dirs=<JAXB_HOME>/lib option. |
Other Environment Variables |
Tag: jck.env.jaxb.testExecute.otherEnvVars
Except for CLASSPATH, if there are any other environment variables
that must be set for the reference Java launcher, enter them here. |
Specify any environment variables that the JavaTest harness should use
in the environment created to run the tests on your system. Specify the
variables using the name=value pairs.
For example, on Solaris systems: special_path=/home/env/config
NOTE: You must specify both variables: JAVA_HOME and JAXB_HOME.
For example, on Solaris: JAVA_HOME=/jdk-8/solarissparcv9 JAXB_HOME=/jaxb-2.3
on Windows: JAVA_HOME=d:\jdk-8\windows-i586 JAXB_HOME=d:\jaxb-2.3
Where the path to the directory of J2SE on Solaris should be specified
in JAVA_HOME, JAXB_HOME points to the directory under which the bin/,
docs/, examples/, and lib/ directories reside.
The JavaTest cannot inherit environment variables from your operating
system environment. If you find that your tests run correctly outside
of the JavaTest harness, but do not run correctly using the JavaTest
harness, then the reason might be that a value set in your operating
system environment is not available to the test. If you check your
operating system environment and determine that this is the case, then
set the missing values here. |
Need Extra JAXB Classes |
Tag: jck.env.jaxb.classes.needJaxbClasses
Do you need to specify extra JAXB classes for the Java launcher to
execute tests? |
The JAXB classes must be available (that is, can be found and loaded)
during test execution. This means that JAXB JAR
archives or directories which contain the JAXB classes
must be in the test executing Java class path.
Answer No if the JAXB JAR archives are in the Java
default class path, for example, all jar files are stored in the
jdk_install_dir/jre/lib/ext directory.
Answer Yes if some directories or archives are located not in the
Java default class path.
If you answer Yes , then you will be asked to specify necessary class
paths or JAXB archives. |
Schema Compiler Questions |
Tag: jck.env.jaxb.xsd_compiler.intro
The following questions collect information about how to compile the
source schema on your platform. |
None. |
Schema Compiler Operation Mode |
Tag: jck.env.jaxb.xsd_compiler.defaultOperationMode
Would you like to run your schema compiler in default operation mode? |
A JAXB compatible implementation must
support a default operating mode in which
all the required XML Schema to Java
bindings that are described in the JAXB
specification must be implemented. Errors
must be reported when alternative or
extension non-required features are
encountered.
A JAXB compatible implementation may
support non-default operating modes. These
modes must support all the XML Schema to
Java bindings that are described in JAXB
specification, but may also generate
alternative or extension bindings for XML
Schema constructs, which are not required
by this specification.
If you select Yes , then the schema compiler
is supposed to run in default operation
mode and the tests for non-required
features must be passed (as negative tests
with expected error messages).
If you select No , then the schema compiler
is supposed to run in non-default operation
mode and the tests for non-required
features will not be run. For more
information on default operation mode
requirements, see the Compatibility section
of the JAXB specification. |
Optional XML Validation Tests |
Tag: jck.env.jaxb.xsd_compiler.skipValidationOptional
Is Schema Validation implemented via mechanism different from JAXP? |
XML validation can be implemented from
JAXP or from some other mechanism. If the
validation is implemented from JAXP, then
validation checking tests can be skipped by
deselecting them in the test interview. If you
use some other tools for schema validation,
then XML validation tests are mandatory. |
Schema Compiler Run Command |
Tag: jck.env.jaxb.xsd_compiler.testCompile. xjcCmd
The remaining questions ask which tests you want to run and how you
want them to be run. |
This is the command used to invoke your
schema compiler. For example, for the
Oracle JAXB implementation on Solaris we
provide a script TCKDIR/solaris/bin/
xjc.sh , which compiles schemas into class
files. The command is as follows:
/bin/ksh solaris/bin/xjc.sh
For the Oracle JAXB implementation on
Windows, we provide a script TCKDIR
\win32\bin\xjc.bat , which compiles
schemas into class files.
The command is as follows:
win32\bin\xjc.bat
The xjc script supports the following
mandatory command-line options:
xjc -p <pkg> -d <dir> <schema files>
where:
• -p <pkg> specifies the target package
• -d <dir> specifies the directory to
store generated files. |
Schema Compiler Class |
Tag: jaxb.xsd_compiler.run.compilerWrapperClass
You must provide a custom class to invoke your compiler. This class
should implement the com.sun.jaxb_tck.lib.SchemaCompilerTool interface. |
When you run schema compilation through
the JavaTest agent, your schema compiler
will be executed in the agent’s JVM. Your
implementation must provide a custom class
to invoke your schema compilation tool. This
class should implement the
SchemaCompilerTool interface:
package com.sun.jaxb_tck.lib;
public interface SchemaCompilerTool {
/**
* @param xsdFiles – array of strings
containing schema files
* @param packageName – the target
package
* @param outDir – output directory
where java file(s) will be generated
* @param out - output stream for
logging
* @param err - error stream for logging
* @return 0 if java file(s) generated
successfully
*/
int compile(String[] xsdFiles, String
packageName, File outDir, PrintStream
out, PrintStream err);
}
Schema compilation should be
accomplished during invocation of compile
method.
The JAXB TCK includes the following class
that is fully compatible with Oracle’s
reference implementation and that can be
used for schema compilation:
com.sun.jaxb_tck.lib.SchemaCompiler.
The realization of the
method compile(String[] xsdFiles,
String packageName, File outDir,
PrintStream out, PrintStream err)
compiles a schema into java sources.
If your implementation doesn’t provide such
a class, then create it and specify it here. |
Schema Generator Questions |
Tag: jck.env.jaxb.schemagen.intro
The following questions collect information about how to generate xml schema
from java sources on your platform. |
None. |
Schema Generator Presence |
Tag: jck.env.jaxb.schemagen.skipJ2XOptional
Does your implementation provide schema generator which is able to
generate schemas from Java sources? |
Java Architecture for XML Binding 2.3
specification does not require any
implementation, which provides a possibility
to generate the schemas from the java
sources. If they are provided, then all
specification requirements should be met. |
Schema Generator Run Command |
Tag: jck.env.jaxb.schemagen.run.jxcCmd
Enter the command to run the schema generator. |
This is the command used to invoke your
schema generator. For example, for the
Oracle JAXB implementation on Solaris we
provide a script TCKDIR/
solaris/bin/schemagen.sh , which
generates the schemas from the java files.
The command is:
/bin/ksh solaris/bin/schemagen.sh
For the Oracle JAXB implementation on
Windows, we provide a script TCKDIR
\win32\bin\schemagen.bat , which
compiles the schemas into class files. The
command is:
win32\bin\schemagen.bat
The schemagen script supports the following
mandatory command-line options:
schemagen -d <dir> <java files> , where,
-d <dir> specifies the directory to store the
generated files. |
Schema Generator Class |
Tag: jck.env.jaxb.schemagen.run.schemagenWrapperClass
You must provide a custom class to invoke your schema generator. This
class should implement the com.sun.jaxb_tck.lib.SchemaGenTool interface. |
When you run schema generation through
JavaTest agent, your schema generator will
be executed in the agent’s JVM. Your
implementation must provide a custom class
to invoke your schema generation tool. This
class should implement the SchemaGenTool
interface:
package com.sun.jaxb_tck.lib;
public interface SchemaGenTool {
/**
* @param javaFiles - array of strings
containing java files
* @param outDir - output directory
where schema file(s) will be generated
* @param out – output stream for
logging
* @param err – error stream for logging
* @return 0 if schema file(s)
generated successfully
*/
int generate(String[] javaFiles, File
outDir, PrintStream out, PrintStream
err);
}
Schema generations should be complete
during the invocation of the generate
method.
The JAXB TCK includes the following class
that is fully compatible with Oracle’s
reference implementation and that can be
used for schema generation:
com.sun.jaxb_tck.lib.SchemaGen . The
realization of the method
generate(String[] javaFiles, File
outDir, PrintStream out, PrintStream
err) generates the XML schemas from the
java files.
If your implementation doesn’t provide such
a class, then create it and specify it here.
|
Schema Compiler Questions |
Tag: jck.env.jaxb.xsd_compiler.intro
The following questions collect information about how to compile the
source schema on your platform. |
None. |
Standard Values |
Tag: jck.parameters
The remaining questions ask which tests you want to run and how you
want them to be run. |
None. |
Specify an Exclude List? |
Tag: jck.excludeList.needExcludeList
Do you wish to specify an exclude list? |
Answer Yes if you want to specify an
exclude list for the test run. If you select
Yes, then select the location of the exclude
list to use.
Answer No if you want to run all tests that
are not filtered out by other run filters. |
Which Exclude List? |
Tag: jck.excludeList.excludeListType
Which exclude list do you wish to
use? |
This question appears only if you answered
Yes to the previous configuration interview
question.
Select either the Initial option to use the
exclude list provided with the test suite or
the Specify option to specify the exclude list
you wish to use. |
Specify Exclude List Files |
Tag: jck.excludeList.customFiles
Specify the files that make up the
exclude list you wish to use. |
Click Add to activate a file chooser with
which you select an exclude list file. Exclude
list files conventionally use the
extension ``.jtx`. |
Specify Keywords? |
Tag: jck.keywords.needKeywords
Do you wish to specify a keyword
expression to select/reject tests
based on keywords contained in
each test description? |
Keywords are tokens associated with
specific tests.
Answer Yes to run tests based on the
keyword and the other run filter settings. If
you select Yes, then you are asked to
specify the keyword to use.
Answer No to run all tests that are not
filtered out by other run filters. |
Specify Status? |
Tag: jck.priorStatus.needStatus
Do you wish to select tests to run
based on their result in a previous
run? |
Answer Yes to run tests based on the
status from the previous test run and the
other run filter settings. If you select Yes,
then you are asked for the status or
statuses.
Answer No to run all tests that are not
filtered out by other run filters. |
Concurrency |
Tag:
jck.concurrency.concurrency
The JavaTest harness can run tests
concurrently. Specify the maximum
number of tests that should be run
concurrently: |
The JavaTest harness can run tests
concurrently. If you are running the tests on
a multiprocessor computer, then the
concurrency can accelerate your test runs.
The default range of values that the
JavaTest harness uses is from 1 to 50.
For the first test run, keep this value set to
1. |
Time Factor |
Tag: jck.timeout.timeout
Specify a time factor that is applied
to each test’s default timeout. For
example, specifying 2 doubles the
time for each test (the default is 1): |
The default 1.0 corresponds to 10 minutes.
Use the floating point format specific to your
locale.
NOTE: Setting a
proper time
factor value
requires
consideration
of such
technical
factors as the
network
connector
speed. |
Completed! |
Tag: jck.end
Congratulations! This completes the
configuration. Click Done to save
your answers and close the editor.
To run the test suite, choose Run
Tests→Start. |
None. |