Java Compatibility Kit 6b User's Guide

For Java Technology Licensees

August 2008
The Technology Compatibility Kit User's Guide for the Java Platform, Standard Edition provides detailed instructions for obtaining, installing, configuring, and using the Java Compatibility Kit 6b.
--

Document Information

Preface

1.  Introduction

1.1 Conformance Defined

1.2 Why Conformance Is Important

1.3 Learning Curve

1.4 About the Tests

1.5 Obtaining a Java Compatibility Kit

2.  Procedure for Java SE 6 Technology Certification

2.1 Certification Overview

2.2 Compatibility Requirements

2.2.1 Definitions

2.2.2 Rules for Java SE 6 Technology Products

2.2.3 Rules for Compiler Products

2.2.4 Rules for Products That Include a Development Kit

2.2.4.1 Rules for Products That Include a Schema Compiler and Generator

2.2.4.2 Rules for Products That Include Java-to-WSDL and WSDL-to-Java Tools

2.3 JCK Test Appeals Process

JCK Test Appeals Steps

2.3.1 Test Challenge Form

2.3.2 Test Challenge Response Form

2.4 Reference Compiler for Java SE 6 Technology

2.5 Reference Runtime for Java SE 6 Technology

2.6 Specifications for Java SE 6 Technology

2.7 Libraries for Java SE 6 Technology

2.7.1 Endorsed Standards for Java SE 6 Technology

3.  Installation

3.1 Delivery

3.2 Installing JCK Test Suites

Command Line Installation

Manual Installation

3.2.1 Directories and Files

3.3 Release Notes

3.4 Accessing User Documentation

4.  Running JCK 6b Tests

4.1 Starting the JavaTest Harness

4.1.1 Starting the JavaTest Harness GUI

4.1.2 Using the JavaTest Harness Command-Line Interface

4.1.3 Using the JavaTest Harness Quick Start Wizard

4.2 Generating a Configuration

4.2.1 Configuration Templates

4.2.1.1 Using a Template

4.2.2 Using Sample Test Suites

4.3 Running Tests

Using the JavaTest Harness GUI

4.3.1 Using the Command-Line Interface

4.3.2 Setting Configuration Values in the Command Line

4.4 Configuration Interview

4.4.1 Configuration Modes

4.4.1.1 Simple Mode Default Values

4.4.1.2 Specify Tests to Run

4.4.2 Test Environment Questions

4.4.2.1 JCK Runtime Test Suite

Multiple VMs Without an Agent

Multiple VMs With an Agent

Multiple VMs Group Without an Agent

Multiple VMs Group With an Agent

Single VM With an Agent

4.4.2.2 JCK Compiler Test Suite

Multiple VMs Without an Agent

Multiple VMs With an Agent

Multiple VMs Group Without an Agent

Multiple VMs Group With an Agent

Single VM With an Agent

4.4.2.3 JCK Devtools Test Suite

Multiple VMs Without an Agent

Multiple VMs With an Agent

Multiple VMs Group Without an Agent

Multiple VMs Group With an Agent

Single VM With an Agent

4.4.2.4 Using Agents

4.4.3 Test-Specific Questions

4.4.4 Test Run Questions

4.4.4.1 Exclude Lists

4.4.4.2 Keywords

4.4.5 Configuration Question Log

4.4.6 Configuration Checklist

4.5 Special Setup Instructions

4.6 Special Test Execution Requirements

4.7 JCK-devtools Test Suite Execution Requirements

5.  Test-Specific Information

5.1 How This Chapter Is Organized

5.2 Annotation Processing Tests

5.2.1 Setup

5.2.2 Configuration

5.2.3 Execution

5.2.4 Configuration Tab Name-Values Pairs

5.3 AWT and Swing Tests

5.3.1 Setup

5.3.2 Configuration

5.3.3 Execution

5.3.4 Configuration Tab Name-Value Pairs

5.4 Compiler Tests

5.4.1 Setup

5.4.2 Configuration

5.4.3 Execution

5.4.4 Configuration Tab Name-Value Pairs

5.5 CORBA Tests

5.5.1 Setup

Starting the Transient Name Service

Setting up the CORBA Distributed Test Run

5.5.2 Configuration

5.5.2.1 Distributed Tests

5.5.3 Execution

5.5.4 Configuration Tab Name-Value Pairs

5.6 Distributed Tests

5.6.1 Setup

Setting up the Distributed Tests Run

5.6.2 Configuration

5.6.3 Execution

5.6.4 Configuration Tab Name-Value Pairs

5.7 Extra-Attribute Tests

5.7.1 Setup

Building jckatr.dll for Win32 Systems

5.7.1.1 Command-Line Options for MSVC++ Compiler

Building libjckatr.so With C Compiler for Solaris Platform

5.7.1.2 Command-Line Options for the Solaris Platform C Compiler

Building libjckatr.so With Gnu C for Solaris Platform

5.7.1.3 Command-Line Options for the Gnu C Compiler for the Solaris Platform

5.7.2 Configuration

5.7.3 Execution

5.7.4 Configuration Tab Name-Value Pairs

5.8 Floating-Point Tests

5.8.1 Setup

5.8.2 Configuration

5.8.3 Execution

5.8.4 Configuration Tab Name-Value Pairs

5.9 ImageIO Tests

5.9.1 Setup

5.9.2 Configuration

5.9.3 Execution

5.9.4 Configuration Tab Name-Value Pairs

5.10 Interactive Tests

5.10.1 Setup

5.10.2 Configuration

5.10.3 Execution

5.10.4 Configuration Name-Pair Values

5.11 JAX-WS Mapping Tests

5.11.1 Setup

5.11.1.1 Running Java-to-WSDL Mapping in Multi-VM Mode

5.11.1.2 Running WSDL-to-Java Mapping in Multi-VM Mode

5.11.1.3 Running Java-to-WSDL Mapping in Single-VM Mode

5.11.1.4 Running WSDL-to-Java Mapping in Single-VM Mode

5.11.2 Configuration

5.11.3 Execution

5.11.4 Configuration Tab Name-Value Pairs

5.12 JDBC Technology RowSet Tests

5.12.1 Setup

5.12.2 Execution

5.12.3 Special Configuration Steps

5.12.4 Configuration Tab Name-Value Pairs

5.13 JDWP Tests

5.13.1 Setup

Setting up a Test System to Run JDWP Tests

5.13.2 Configuration

5.13.3 Execution

5.13.4 Configuration Tab Name-Value Pairs

5.14 JMX API Advanced Dynamic Loading Tests

5.14.1 Setup

Setting up JMX API Tests on a Platform

Copying Required HTML and JAR Files

Making systemInfo, jmxlibid, and genrandom Libraries

Compiling libsystemInfo.so, libjmxlibid.so, and libgenrandom.so for the Solaris Platform

5.14.1.1 Command-Line Options for Compiling Libraries on the Solaris Platform

Compiling libsystemInfo.so, libjmxlibid.so, and libgenrandom.so for the Solaris Platform Using Gnu C

5.14.1.2 Command-Line Options for Compiling Libraries With GNU C Compiler on the Solaris Platform

Compiling systemInfo.dll, jmxlibid.dll, and genrandom.dll for Win32 Systems Using Microsoft Visual C++

5.14.1.3 Command-Line Options for MSVC++ Compiler

Updating res-dest/archives/MBeanUseNativeLib.jar on the Solaris Platform

Updating res-dest/archives/MBeanUseNativeLib.jar on Win32 Systems

Creating res-dest/archives/OnlyLibs.jar on the Solaris Platform

Creating res-dest/archives/OnlyLibs.jar on Win32 Systems

5.14.2 Configuration

5.14.3 Execution

5.14.4 Configuration Tab Name-Value Pairs

5.15 JMX Remote API Tests

5.15.1 Setup

Starting the TNS on the Solaris Platform

Starting the TNS on a Win32 System

5.15.1.1 Setting Up a JMX Remote API Distributed Test Run

5.15.2 Configuration

5.15.3 Execution

5.15.4 Configuration Tab Name-Value Pairs

5.16 JNI Implementation Tests

5.16.1 Setup

Compiling jckjni.dll for Win32 Systems Using MSVC++

5.16.2 Command-Line Options for Compiling JNI Implementation Tests on Win32 Systems

Compiling libjckjni.so for the Solaris Platform

5.16.3 Command-Line Options for Compiling JNI Implementation Tests on the Solaris Platform

Compiling libjckjni.so for the Solaris Platform Using Gnu C

5.16.4 Command-Line Options for Compiling JNI Implementation Tests Using Gnu C

5.16.5 Configuration

5.16.6 Execution

5.16.7 Configuration Tab Name-Value Pairs

5.17 JVM TI Tests

5.17.1 Setup

5.17.1.1 Setting up a Test System to Run JVM TI Live Phase Tests

Compiling jckjvmti.dll for Win32 Systems

5.17.1.2 Command-Line Options for Compiling JVM TI Tests on Win32 Systems

Compiling libjckjvmti.so for the Solaris Platform

5.17.1.3 Command-Line Options for Compiling JVM TI Tests on the Solaris Platform

Compiling libjckjvmti.so for the Solaris Platform Using Gnu C

5.17.1.4 Available Gnu C Command-Line Options

5.17.2 Configuration

5.17.3 Execution

5.17.3.1 Execution of JVM TI Tests

5.17.3.2 Execution of JVM TI Live Phase Tests

5.17.4 Configuration Tab Name-Value Pairs

5.18 Java Authentication and Authorization Service Tests

5.18.1 Setup

5.18.2 Configuration

5.18.2.1 Authorization Policy File

5.18.2.2 Login Configuration Policy File

5.18.2.3 Specifying Policy Files Statically

Java Platform Policy File

Login Configuration File

Authorization Policy File

5.18.3 Execution

5.18.4 Configuration Tab Name-Value Pairs

5.19 Java Generic Security Service API Tests

5.19.1 Setup

5.19.2 Configuration

5.19.2.1 Specifying the KDC Host Name and Realm Statically

5.19.3 Execution

5.19.4 Configuration Tab Name-Value Pairs

5.20 Java Programming Language Instrumentation Services Tests

5.20.1 Setup

5.20.1.1 Setting up a Test System to Run Java PLIS Tests

5.20.1.2 Setting up a Test System to Run Java PLIS Live Phase Tests

5.20.2 Configuration

5.20.3 Execution

5.20.3.1 Execution of Java PLIS Tests

5.20.3.2 Execution of Java PLIS Live Phase Test

5.20.4 Configuration Tab Name-Value Pairs

5.20.4.1 Configuration Tab Name-Value Pairs for Java PLIS Tests

5.20.4.2 Configuration Tab Name-Value Pairs for Java PLIS Live Phase Test

5.21 Java Platform Scripting API Tests

5.21.1 Setup

5.21.2 Configuration

5.21.3 Execution

5.21.4 Configuration Tab Name-Value Pairs

5.22 Java RMI Compiler Tests

5.22.1 Setup

5.22.2 Configuration

5.22.3 Execution

5.22.4 Configuration Tab Name-Value Pairs

5.23 Java RMI Tests

5.23.1 Setup

Starting the RMI Daemon on the Solaris Platform

Starting the RMI Daemon on Win32 Systems

5.23.2 Configuration

5.23.3 Execution

5.23.4 Configuration Tab Name-Value Pairs

5.24 Java XML Digital Signature Tests

5.24.1 Setup

5.24.2 Configuration

5.24.3 Execution

5.24.3.1 Register Your XMLSignatureFactory Provider

Statically Registering Your XMLSignatureFactory Provider

Dynamically Registering Your XMLSignatureFactory Provider

5.24.4 Configuration Tab Name-Value Pairs

5.25 Network Tests

5.25.1 Setup

5.25.2 Configuration

5.25.3 Execution

5.25.4 Configuration Tab Name-Value Pairs

5.25.4.1 Basic Network Test Configuration Tab Name-Value Pairs

5.25.4.2 Network URL Test Configuration Tab Name-Value Pairs

5.26 Out-of-Memory Tests

5.26.1 Setup

5.26.2 Configuration

5.26.3 Execution

5.26.4 Configuration Tab Name-Value Pairs

5.27 Platform-Specific Values

5.27.1 Setup

5.27.2 Configuration

5.27.3 Execution

5.27.4 Configuration Tab Name-Value Pairs

5.28 Printing Tests

5.28.1 Setup

5.28.2 Configuration

5.28.3 Execution

5.28.4 Configuration Tab Name-Value Pairs

5.29 Schema Compiler

5.29.1 Setup

5.29.1.1 Running a Schema Compiler in Multi-VM Mode

Sample Scripts for Running the Reference Schema Compiler

5.29.1.2 Running a Schema Compiler in Single-VM Mode

Sample Class for Running the Reference Schema Compiler

5.29.2 Configuration

5.29.3 Execution

5.29.4 Configuration Tab Name-Value Pairs

5.30 Schema Generator

5.30.1 Setup

5.30.1.1 Running a Schema Generator in Multi-VM Mode

Sample Scripts for Running the Reference Schema Generator

5.30.1.2 Running a Schema Generator in Single-VM Mode

Sample Class for Running the Reference Schema Generator

5.30.2 Configuration

5.30.3 Execution

5.30.4 Configuration Tab Name-Value Pairs

5.31 Security Tests

5.31.1 Setup

5.31.1.1 Specifying the Security Policy File Dynamically

5.31.1.2 Configuring Security Permission for JCK

5.31.1.3 Specifying a Different Security Provider

5.31.2 Configuration

5.31.3 Execution

5.31.4 Configuration Tab Name-Value Pairs

5.32 Sound Tests

5.32.1 Setup

5.32.2 Configuration

5.32.3 Execution

5.32.4 Configuration Tab Name-Value Pairs

5.33 Static Initialization Tests

5.33.1 Setup

5.33.2 Configuration

5.33.3 Execution

5.33.4 Configuration Tab Name-Value Pairs

5.34 Optional Static Signature Test

5.34.1 Setup

5.34.2 Configuration

5.34.3 Execution

5.34.4 Configuration Tab Name-Value Pairs

5.35 VM Tests

5.35.1 Setup

5.35.2 Configuration

5.35.3 Execution

5.35.4 Configuration Tab Name-Value Pairs

6.  Debugging Test Problems

6.1 Test Manager Window

6.1.1 Test Tree

6.1.2 Folder View

6.1.3 Test View

6.1.4 Test Manager Properties

6.1.5 Test Suite Errors

6.2 JavaTest Harness ResultBrowser Servlet

6.3 Configuration Failures

6.4 Report Files

6.5 Debugging Agent Failures

6.5.1 Monitoring JavaTest Harness Agents

6.5.2 failed.html Report

6.5.3 -trace Option

7.  Workarounds

7.1 Running the Agent With Limited Resources

7.2 Testing Implementations That Require System.getProperties() API

A.  JCK Test Specification

A.1 Test Description

A.1.1 Test Comments

A.1.2 Test Description Table

A.1.3 Keywords

A.1.4 Context-Sensitive Properties

A.1.4.1 Network Resources

A.1.4.2 Remote Resources

A.1.4.3 Hardware Characteristics

A.1.4.4 Platform Characteristics

A.2 Test Selection and Execution

A.2.1 Test Results

A.2.2 Tests Selected for a Test Run

A.2.3 Compiler Test Execution

A.2.3.1 Java Compiler Tests

A.2.3.2 RMI Compiler Tests

A.2.4 Runtime Tests

Executing Runtime Tests

A.2.4.1 testExecuteArgs Variable

B.  Detailed Examples

B.1 Running JCK Tests Using Multiple VMs

Run JCK Runtime Tests Locally on a Windows System

Run JCK Runtime Tests Locally on a Solaris System

Run JCK Runtime Tests Remotely on a Windows System

Run JCK Runtime Tests Remotely on a Solaris System

B.2 Using a Browser to Run JCK Tests in a Single VM

Using a Single VM and an Active Agent to Run Tests on a Solaris System

Using a Single VM and an Agent to Run Tests on a Windows System

C.  Kerberos Key Distribution Center Example Setup

C.1 Setup

C.1.1 Obtaining the Kerberos Software

C.1.1.1 Kerberos Software on CD-ROM

C.1.1.2 Kerberos Software by Download

C.1.1.3 Kerberos Software From Other Vendors

C.1.2 Installing Kerberos Software on a Solaris Platform

To Install Kerberos Software on a Solaris Platform

C.1.3 Adding Kerberos Principals for JCK Testing

To Add Kerberos Principals for JCK Testing

D.  JavaTest Harness Tutorial

D.1 Starting the JavaTest Harness

To Start the JavaTest Harness

D.2 Using the Quick Start Wizard

To Use the Quick Start Wizard

D.3 Configuring Test Information

D.4 Running Tests

To Run the Tests

D.4.1 JavaTest Harness GUI -- Folder and Test Colors

D.5 Browsing Test Results

D.5.1 The Folder Pane

Using the Folder Pane

D.5.2 The Test Pane

Using the Test Pane

D.6 Excluding a Failed Test

To Exclude a Failed Test

D.7 Generating a Report

To Generate a Report

E.  Running a Single Test From Command Line

E.1 Running Scripts

E.1.1 Hints for Running Scripts on a Windows System

F.  JCK Tools

F.1 Quick Configuration Editor

F.1.1 Starting Quick Configuration Editor

To create a new configuration

To edit an existing configuration

F.1.2 Tips for Using Quick Configuration Editor

F.2 JCK Test Extractor Tool

Glossary

Index

Company Info Contact Terms of Use Privacy Copyright 1994-2008 Sun Microsystems, Inc.