diff --git a/appclient/pom.xml b/appclient/pom.xml index fa2399afbb..9cd0ef3435 100644 --- a/appclient/pom.xml +++ b/appclient/pom.xml @@ -32,6 +32,13 @@ APPCLIENT APPCLIENT + + 1.9.1.Final + 11.0.0-SNAPSHOT + 5.9.1 + 17 + + ${project.groupId} @@ -69,6 +76,84 @@ jakarta.persistence jakarta.persistence-api + + ${project.groupId} + libutil + ${jakarta.ee.version} + + + ${project.groupId} + common + ${jakarta.ee.version} + + + jakarta.ejb + jakarta.ejb-api + + + ${project.groupId}.arquillian + arquillian-protocol-common + ${arquillian.jakarta.tck.version} + + + ${project.groupId}.arquillian + arquillian-protocol-javatest + ${arquillian.jakarta.tck.version} + + + jakarta.mail + jakarta.mail-api + + + jakarta.activation + jakarta.activation-api + + + org.jboss.shrinkwrap + shrinkwrap-api + 1.2.6 + + + org.jboss.shrinkwrap.resolver + shrinkwrap-resolver-depchain + 3.1.4 + pom + + + org.jboss.arquillian.junit5 + arquillian-junit5-container + ${arquillian.junit} + + + org.jboss.arquillian.junit5 + arquillian-junit5-core + ${arquillian.junit} + + + jakarta.tck.arquillian + arquillian-protocol-appclient + ${arquillian.jakarta.tck.version} + + + jakarta.tck.arquillian + arquillian-protocol-javatest + ${arquillian.jakarta.tck.version} + + + jakarta.tck.arquillian + tck-porting-lib + ${arquillian.jakarta.tck.version} + + + + + org.junit.jupiter + junit-jupiter + + + org.junit.jupiter + junit-jupiter-engine + diff --git a/appclient/src/main/java/com/sun/ts/tests/appclient/deploy/compat9_10/Client.java b/appclient/src/main/java/com/sun/ts/tests/appclient/deploy/compat9_10/Client.java index bb3b663d05..f83c788050 100644 --- a/appclient/src/main/java/com/sun/ts/tests/appclient/deploy/compat9_10/Client.java +++ b/appclient/src/main/java/com/sun/ts/tests/appclient/deploy/compat9_10/Client.java @@ -22,11 +22,16 @@ import java.util.Properties; -import com.sun.ts.lib.harness.Status; +import org.jboss.arquillian.junit5.ArquillianExtension; +import org.junit.jupiter.api.Test; +import org.junit.jupiter.api.extension.ExtendWith; + import com.sun.ts.lib.harness.EETest; +import com.sun.ts.lib.harness.Status; import com.sun.ts.lib.util.TSNamingContext; import com.sun.ts.lib.util.TestUtil; +@ExtendWith(ArquillianExtension.class) public class Client extends EETest { private static final String prefix = "java:comp/env/ejb/"; @@ -48,7 +53,6 @@ public static void main(String[] args) { * @class.setup_props: org.omg.CORBA.ORBClass; java.naming.factory.initial; */ public void setup(String[] args, Properties props) throws Exception { - try { this.props = props; nctx = new TSNamingContext(); @@ -76,6 +80,7 @@ public void setup(String[] args, Properties props) throws Exception { * Run the client and check we can call a business method on * the referenced bean at runtime. */ + @Test public void test910DD() throws Exception { TestBean bean = null; String beanName; diff --git a/appclient/src/main/java/com/sun/ts/tests/appclient/deploy/ejblink/casesens/Client.java b/appclient/src/main/java/com/sun/ts/tests/appclient/deploy/ejblink/casesens/Client.java index 494debeac0..697cd1386c 100644 --- a/appclient/src/main/java/com/sun/ts/tests/appclient/deploy/ejblink/casesens/Client.java +++ b/appclient/src/main/java/com/sun/ts/tests/appclient/deploy/ejblink/casesens/Client.java @@ -20,13 +20,37 @@ package com.sun.ts.tests.appclient.deploy.ejblink.casesens; +import java.io.File; +import java.io.IOException; +import java.net.URL; import java.util.Properties; -import com.sun.ts.lib.harness.Status; +import javax.naming.Context; + +import org.jboss.arquillian.container.test.api.Deployment; +import org.jboss.arquillian.container.test.api.OverProtocol; +import org.jboss.arquillian.container.test.api.TargetsContainer; +import org.jboss.arquillian.junit5.ArquillianExtension; +import org.jboss.arquillian.test.api.ArquillianResource; +import org.jboss.shrinkwrap.api.ShrinkWrap; +import org.jboss.shrinkwrap.api.asset.StringAsset; +import org.jboss.shrinkwrap.api.exporter.ZipExporter; +import org.jboss.shrinkwrap.api.spec.EnterpriseArchive; +import org.jboss.shrinkwrap.api.spec.JavaArchive; +import org.junit.jupiter.api.Test; +import org.junit.jupiter.api.extension.ExtendWith; + import com.sun.ts.lib.harness.EETest; +import com.sun.ts.lib.harness.Status; import com.sun.ts.lib.util.TSNamingContext; import com.sun.ts.lib.util.TestUtil; +import tck.arquillian.porting.lib.spi.TestArchiveProcessor; +import tck.arquillian.protocol.common.TargetVehicle; + + + +@ExtendWith(ArquillianExtension.class) public class Client extends EETest { private static final String prefix = "java:comp/env/ejb/"; @@ -50,6 +74,67 @@ public static void main(String[] args) { Status s = theTests.run(args, System.out, System.err); s.exit(); } + + + @TargetsContainer("javatest") + @Deployment(testable = false) + public static EnterpriseArchive createDeployment(@ArquillianResource TestArchiveProcessor archiveProcessor) + throws IOException { + JavaArchive ejbClient = ShrinkWrap.create(JavaArchive.class, "appclient_dep_ejblink_casesens_client.jar"); + ejbClient.addPackages(true, Client.class.getPackage()); + ejbClient.addPackages(true, "com.sun.ts.lib.harness"); + + // The appclient-client descriptor + URL appClientUrl = Client.class.getResource( + "/com/sun/ts/tests/appclient/deploy/ejblink/casesens/appclient_dep_ejblink_casesens_client.xml"); + if (appClientUrl != null) { + ejbClient.addAsManifestResource(appClientUrl, "application-client.xml"); + } + // The sun appclient-client descriptor + URL sunAppClientUrl = Client.class.getResource( + "/com/sun/ts/tests/appclient/deploy/ejblink/casesens/appclient_dep_ejblink_casesens_client.jar.sun-application-client.xml"); + if (sunAppClientUrl != null) { + ejbClient.addAsManifestResource(sunAppClientUrl, "sun-application-client.xml"); + } + + ejbClient.addAsManifestResource( + new StringAsset("Main-Class: " + "com.sun.ts.tests.appclient.deploy.ejblink.casesens.Client" + "\n"), + "MANIFEST.MF"); + + + System.out.println(ejbClient.toString(true)); + JavaArchive ejb = ShrinkWrap.create(JavaArchive.class, "appclient_dep_ejblink_casesens_ejb.jar"); + ejb.addClasses(CaseBean.class, CaseBeanEJB.class); + ejb.addPackages(true, "com.sun.ts.tests.assembly.util.shared.ejbref.common"); + ejb.addPackages(true, "com.sun.ts.tests.common.ejb.wrappers"); + + URL resURL = Client.class.getResource( + "/com/sun/ts/tests/appclient/deploy/ejblink/casesens/appclient_dep_ejblink_casesens_ejb.jar.sun-ejb-jar.xml"); + + if (resURL != null) { + ejb.addAsManifestResource(resURL, "sun-ejb-jar.xml"); + } + + resURL = Client.class.getResource( + "/com/sun/ts/tests/appclient/deploy/ejblink/casesens/appclient_dep_ejblink_casesens_ejb.xml"); + + if (resURL != null) { + ejb.addAsManifestResource(resURL, "ejb-jar.xml"); + } + + System.out.println("##################################"); + + System.out.println(ejb.toString(true)); + + + EnterpriseArchive ear = ShrinkWrap.create(EnterpriseArchive.class, "appclient_dep_ejblink_casesens.ear"); + ear.addAsModule(ejbClient); + ear.addAsModule(ejb); + ear.as(ZipExporter.class).exportTo( + new File("/tmp/ejb.ear"), true); + + return ear; + }; /* * @class.setup_props: org.omg.CORBA.ORBClass; java.naming.factory.initial; @@ -58,16 +143,15 @@ public static void main(String[] args) { * @class.testArgs: -ap tssql.stmt * */ - public void setup(String[] args, Properties props) throws Exception { - this.props = props; - - try { - nctx = new TSNamingContext(); - logMsg("[Client] Setup succeed (got naming context)."); - } catch (Exception e) { - throw new Exception("[Client] Setup failed:", e); - } - } + public void setup(String[] args, Properties props) throws Exception { + this.props = props; + try { + nctx = new TSNamingContext(); + logMsg("[Client] Setup succeed (got naming context)."); + } catch (Exception e) { + throw new Exception("[Client] Setup failed:", e); + } + } /** * @testName: testCaseSensitivity @@ -85,13 +169,14 @@ public void setup(String[] args, Properties props) throws Exception { * match the references specified in the DD (validates that * the EJB references were resolved correctly). */ + @Test public void testCaseSensitivity() throws Exception { CaseBean bean1 = null; CaseBean bean2 = null; String bean1Name; String bean2Name; boolean pass = false; - + try { TestUtil.logTrace("[Client] Looking up '" + bean1Lookup + "'..."); bean1 = (CaseBean) nctx.lookup(bean1Lookup, CaseBean.class); diff --git a/appclient/src/main/java/com/sun/ts/tests/appclient/deploy/ejblink/path/Client.java b/appclient/src/main/java/com/sun/ts/tests/appclient/deploy/ejblink/path/Client.java index ccb6397b4f..4a78f77822 100644 --- a/appclient/src/main/java/com/sun/ts/tests/appclient/deploy/ejblink/path/Client.java +++ b/appclient/src/main/java/com/sun/ts/tests/appclient/deploy/ejblink/path/Client.java @@ -20,13 +20,32 @@ package com.sun.ts.tests.appclient.deploy.ejblink.path; +import java.io.IOException; +import java.net.URL; import java.util.Properties; -import com.sun.ts.lib.harness.Status; +import org.jboss.arquillian.container.test.api.Deployment; +import org.jboss.arquillian.container.test.api.OverProtocol; +import org.jboss.arquillian.container.test.api.TargetsContainer; +import org.jboss.arquillian.junit5.ArquillianExtension; +import org.jboss.arquillian.test.api.ArquillianResource; +import org.jboss.shrinkwrap.api.ShrinkWrap; +import org.jboss.shrinkwrap.api.asset.StringAsset; +import org.jboss.shrinkwrap.api.spec.EnterpriseArchive; +import org.jboss.shrinkwrap.api.spec.JavaArchive; +import org.junit.jupiter.api.Test; +import org.junit.jupiter.api.extension.ExtendWith; + import com.sun.ts.lib.harness.EETest; +import com.sun.ts.lib.harness.Status; import com.sun.ts.lib.util.TSNamingContext; import com.sun.ts.lib.util.TestUtil; +import tck.arquillian.porting.lib.spi.TestArchiveProcessor; + + + +@ExtendWith(ArquillianExtension.class) public class Client extends EETest { private static final String prefix = "java:comp/env/ejb/"; @@ -50,6 +69,87 @@ public static void main(String[] args) { Status s = theTests.run(args, System.out, System.err); s.exit(); } + + @TargetsContainer("tck-javatest") + @OverProtocol("javatest") + + @Deployment(testable = false) + public static EnterpriseArchive createDeployment(@ArquillianResource TestArchiveProcessor archiveProcessor) + throws IOException { + + EnterpriseArchive ear = null; + try { + JavaArchive ejbClient = ShrinkWrap.create(JavaArchive.class, "appclient_dep_ejblink_path_client.jar"); + ejbClient.addPackages(true, "com.sun.ts.tests.appclient.deploy.ejblink.path"); + ejbClient.addPackages(true, "com.sun.ts.lib.harness"); + + // The appclient-client descriptor + URL appClientUrl = Client.class.getResource( + "/com/sun/ts/tests/appclient/deploy/ejblink/casesens/appclient_dep_ejblink_path_client.xml"); + if (appClientUrl != null) { + ejbClient.addAsManifestResource(appClientUrl, "application-client.xml"); + } + // The sun appclient-client descriptor + URL sunAppClientUrl = Client.class.getResource( + "/com/sun/ts/tests/appclient/deploy/ejblink/casesens/appclient_dep_ejblink_path_client.jar.sun-application-client.xml"); + if (sunAppClientUrl != null) { + ejbClient.addAsManifestResource(sunAppClientUrl, "sun-application-client.xml"); + } + + ejbClient.addAsManifestResource( + new StringAsset("Main-Class: " + "com.sun.ts.tests.appclient.deploy.ejblink.path.Client" + "\n"), + "MANIFEST.MF"); + + + JavaArchive ejb1 = ShrinkWrap.create(JavaArchive.class, "appclient_dep_ejblink_path_jar1_ejb.jar"); + ejb1.addPackages(true, Client.class.getPackage()); + ejb1.addPackages(true, "com.sun.ts.tests.common.ejb.wrappers"); + + URL resURL = Client.class.getResource( + "/com/sun/ts/tests/appclient/deploy/ejblink/path/appclient_dep_ejblink_path_jar1_ejb.jar.sun-ejb-jar.xml"); + + if (resURL != null) { + ejb1.addAsManifestResource(resURL, "sun-ejb-jar.xml"); + } + + resURL = Client.class.getResource( + "/com/sun/ts/tests/appclient/deploy/ejblink/path/appclient_dep_ejblink_path_jar1_ejb.xml"); + + if (resURL != null) { + ejb1.addAsManifestResource(resURL, "ejb-jar.xml"); + } + + + + JavaArchive ejb2 = ShrinkWrap.create(JavaArchive.class, "appclient_dep_ejblink_path_jar2_ejb.jar"); + ejb2.addPackages(true, Client.class.getPackage()); + ejb2.addPackages(true, "com.sun.ts.tests.common.ejb.wrappers"); + + resURL = Client.class.getResource( + "/com/sun/ts/tests/appclient/deploy/ejblink/path/appclient_dep_ejblink_path_jar2_ejb.jar.sun-ejb-jar.xml"); + + if (resURL != null) { + ejb2.addAsManifestResource(resURL, "sun-ejb-jar.xml"); + } + + resURL = Client.class.getResource( + "/com/sun/ts/tests/appclient/deploy/ejblink/path/appclient_dep_ejblink_path_jar2_ejb.xml"); + + if (resURL != null) { + ejb2.addAsManifestResource(resURL, "ejb-jar.xml"); + } + + + ear = ShrinkWrap.create(EnterpriseArchive.class, "appclient_dep_ejblink_path.ear"); + ear.addAsModule(ejbClient); + ear.addAsModule(ejb1); + ear.addAsModule(ejb2); + }catch(Exception e) { + e.printStackTrace(); + } + return ear; + }; + /* * @class.setup_props: org.omg.CORBA.ORBClass; java.naming.factory.initial; @@ -58,16 +158,15 @@ public static void main(String[] args) { * @class.testArgs: -ap tssql.stmt * */ - public void setup(String[] args, Properties props) throws Exception { - this.props = props; - - try { - nctx = new TSNamingContext(); - logMsg("[Client] Setup succeed (got naming context)."); - } catch (Exception e) { - throw new Exception("Setup failed:", e); - } - } + public void setup(String[] args, Properties props) throws Exception { + this.props = props; + try { + nctx = new TSNamingContext(); + logMsg("[Client] Setup succeed (got naming context)."); + } catch (Exception e) { + throw new Exception("Setup failed:", e); + } + } /** * @testName: testScope @@ -87,6 +186,7 @@ public void setup(String[] args, Properties props) throws Exception { * identities (as reported by the String env. entry) match the * ones specified in the DD. */ + @Test public void testScope() throws Exception { ReferencedBean bean1 = null; ReferencedBean2 bean2 = null; diff --git a/appclient/src/main/java/com/sun/ts/tests/appclient/deploy/ejblink/single/Client.java b/appclient/src/main/java/com/sun/ts/tests/appclient/deploy/ejblink/single/Client.java index e1b4578d61..5a473bdb0e 100644 --- a/appclient/src/main/java/com/sun/ts/tests/appclient/deploy/ejblink/single/Client.java +++ b/appclient/src/main/java/com/sun/ts/tests/appclient/deploy/ejblink/single/Client.java @@ -20,14 +20,35 @@ package com.sun.ts.tests.appclient.deploy.ejblink.single; +import java.io.IOException; +import java.net.URL; +import java.util.Hashtable; import java.util.Properties; -import com.sun.ts.lib.harness.Status; +import javax.naming.Context; + +import org.jboss.arquillian.container.test.api.Deployment; +import org.jboss.arquillian.container.test.api.OverProtocol; +import org.jboss.arquillian.container.test.api.TargetsContainer; +import org.jboss.arquillian.junit5.ArquillianExtension; +import org.jboss.arquillian.test.api.ArquillianResource; +import org.jboss.shrinkwrap.api.ShrinkWrap; +import org.jboss.shrinkwrap.api.asset.StringAsset; +import org.jboss.shrinkwrap.api.spec.EnterpriseArchive; +import org.jboss.shrinkwrap.api.spec.JavaArchive; +import org.junit.jupiter.api.AfterEach; +import org.junit.jupiter.api.Test; +import org.junit.jupiter.api.extension.ExtendWith; + import com.sun.ts.lib.harness.EETest; +import com.sun.ts.lib.harness.Status; import com.sun.ts.lib.util.TSNamingContext; -import com.sun.ts.lib.util.TestUtil; import com.sun.ts.tests.assembly.util.shared.ejbref.single.TestCode; +import tck.arquillian.porting.lib.spi.TestArchiveProcessor; + + +@ExtendWith(ArquillianExtension.class) public class Client extends EETest { /* @@ -36,6 +57,69 @@ public class Client extends EETest { private TSNamingContext nctx = null; private Properties props = null; + + + @TargetsContainer("tck-javatest") + @OverProtocol("javatest") + + @Deployment(testable = false) + public static EnterpriseArchive createDeployment(@ArquillianResource TestArchiveProcessor archiveProcessor) + throws IOException { + JavaArchive ejbClient = ShrinkWrap.create(JavaArchive.class, "appclient_dep_ejblink_single_client.jar"); + ejbClient.addClass(Client.class); + ejbClient.addPackages(true, Client.class.getPackage()); + ejbClient.addPackages(true, "com.sun.ts.lib.harness"); + ejbClient.addPackages(true, "com.sun.ts.tests.assembly.util.refbean"); + ejbClient.addPackages(true, "com.sun.ts.tests.assembly.util.shared"); + ejbClient.addPackages(true, "com.sun.ts.tests.common.dao.coffee"); + + // The appclient-client descriptor + URL appClientUrl = Client.class.getResource( + "/com/sun/ts/tests/appclient/deploy/ejblink/single/appclient_dep_ejblink_singe_client.xml"); + if (appClientUrl != null) { + ejbClient.addAsManifestResource(appClientUrl, "application-client.xml"); + } + // The sun appclient-client descriptor + URL sunAppClientUrl = Client.class.getResource( + "/com/sun/ts/tests/appclient/deploy/ejblink/single/appclient_dep_ejblink_single_client.jar.sun-application-client.xml"); + if (sunAppClientUrl != null) { + ejbClient.addAsManifestResource(sunAppClientUrl, "sun-application-client.xml"); + } + + ejbClient.addAsManifestResource( + new StringAsset("Main-Class: " + "com.sun.ts.tests.appclient.deploy.ejblink.single.Client" + "\n"), + "MANIFEST.MF"); + + + JavaArchive ejb = ShrinkWrap.create(JavaArchive.class, "appclient_dep_ejblink_single_ejb.jar"); + ejb.addPackages(true, "com.sun.ts.tests.assembly.util.shared.ejbref.common"); + ejb.addPackages(true, "com.sun.ts.tests.assembly.util.refbean"); + ejb.addPackages(true, "com.sun.ts.tests.assembly.util.shared"); + ejb.addPackages(true, "com.sun.ts.tests.common.dao.coffee"); + + + + + URL resURL = Client.class.getResource( + "/com/sun/ts/tests/appclient/deploy/ejblink/single/appclient_dep_ejblink_single_ejb.jar.sun-ejb-jar.xml"); + + if (resURL != null) { + ejb.addAsManifestResource(resURL, "sun-ejb-jar.xml"); + } + + resURL = Client.class.getResource( + "/com/sun/ts/tests/appclient/deploy/ejblink/single/appclient_dep_ejblink_single_ejb.xml"); + + if (resURL != null) { + ejb.addAsManifestResource(resURL, "ejb-jar.xml"); + } + + EnterpriseArchive ear = ShrinkWrap.create(EnterpriseArchive.class, "appclient_dep_ejblink_single.ear"); + ear.addAsModule(ejbClient); + ear.addAsModule(ejb); + return ear; + }; + public static void main(String[] args) { Client theTests = new Client(); @@ -60,6 +144,7 @@ public void setup(String[] args, Properties props) throws Exception { logMsg("[Client] Setup succeed (got naming context)."); } catch (Exception e) { + e.printStackTrace(); throw new Exception("Setup failed:", e); } } @@ -77,9 +162,10 @@ public void setup(String[] args, Properties props) throws Exception { * that the EJB reference was resolved consistently with the * DD. */ + @Test public void testStateless() throws Exception { boolean pass; - + try { pass = TestCode.testStatelessExternal(nctx, props); if (!pass) { @@ -102,6 +188,7 @@ public void testStateless() throws Exception { * found only in this particular bean: This is to check that * the EJB reference was resolved consistently with the DD. */ + @Test public void testStateful() throws Exception { boolean pass; diff --git a/appclient/src/main/java/com/sun/ts/tests/appclient/deploy/ejbref/casesens/Client.java b/appclient/src/main/java/com/sun/ts/tests/appclient/deploy/ejbref/casesens/Client.java index 25dd32fd84..f50ef97406 100644 --- a/appclient/src/main/java/com/sun/ts/tests/appclient/deploy/ejbref/casesens/Client.java +++ b/appclient/src/main/java/com/sun/ts/tests/appclient/deploy/ejbref/casesens/Client.java @@ -20,13 +20,30 @@ package com.sun.ts.tests.appclient.deploy.ejbref.casesens; +import java.io.IOException; +import java.net.URL; import java.util.Properties; -import com.sun.ts.lib.harness.Status; +import org.jboss.arquillian.container.test.api.Deployment; +import org.jboss.arquillian.container.test.api.OverProtocol; +import org.jboss.arquillian.container.test.api.TargetsContainer; +import org.jboss.arquillian.junit5.ArquillianExtension; +import org.jboss.arquillian.test.api.ArquillianResource; +import org.jboss.shrinkwrap.api.ShrinkWrap; +import org.jboss.shrinkwrap.api.asset.StringAsset; +import org.jboss.shrinkwrap.api.spec.EnterpriseArchive; +import org.jboss.shrinkwrap.api.spec.JavaArchive; +import org.junit.jupiter.api.Test; +import org.junit.jupiter.api.extension.ExtendWith; + import com.sun.ts.lib.harness.EETest; +import com.sun.ts.lib.harness.Status; import com.sun.ts.lib.util.TSNamingContext; import com.sun.ts.lib.util.TestUtil; +import tck.arquillian.porting.lib.spi.TestArchiveProcessor; + +@ExtendWith(ArquillianExtension.class) public class Client extends EETest { private static final String prefix = "java:comp/env/ejb/"; @@ -50,6 +67,61 @@ public static void main(String[] args) { Status s = theTests.run(args, System.out, System.err); s.exit(); } + + @TargetsContainer("tck-javatest") + @OverProtocol("javatest") + + @Deployment(testable = true) + public static EnterpriseArchive createDeployment(@ArquillianResource TestArchiveProcessor archiveProcessor) + throws IOException { + JavaArchive ejbClient = ShrinkWrap.create(JavaArchive.class, "appclient_dep_ejbref_casesens_client.jar"); + ejbClient.addPackages(true, Client.class.getPackage()); + ejbClient.addPackages(true, "com.sun.ts.lib.harness"); + + + // The appclient-client descriptor + URL appClientUrl = Client.class.getResource( + "com/sun/ts/tests/appclient/deploy/ejbref/scope/appclient_dep_ejbref_casesens_client.xml"); + if (appClientUrl != null) { + ejbClient.addAsManifestResource(appClientUrl, "application-client.xml"); + } + // The sun appclient-client descriptor + URL sunAppClientUrl = Client.class.getResource( + "/com/sun/ts/tests/appclient/deploy/ejbref/single/appclient_dep_ejbref_casesens_client.jar.sun-application-client.xml"); + if (sunAppClientUrl != null) { + ejbClient.addAsManifestResource(sunAppClientUrl, "sun-application-client.xml"); + } + + ejbClient.addAsManifestResource( + new StringAsset("Main-Class: " + "com.sun.ts.tests.appclient.deploy.ejbref.casesens.Client" + "\n"), + "MANIFEST.MF"); + + JavaArchive ejb = ShrinkWrap.create(JavaArchive.class, "appclient_dep_ejbref_casesens_ejb.jar"); + ejb.addPackages(false, "com.sun.ts.tests.assembly.util.refbean"); + ejb.addPackages(false, "com.sun.ts.tests.assembly.util.shared.ejbref.common"); + ejb.addPackages(true, Client.class.getPackage()); + + + URL resURL = Client.class.getResource( + "/com/sun/ts/tests/appclient/deploy/ejbref/scope/appclient_dep_ejbref_casesens_ejb.jar.sun-ejb-jar.xml"); + + if (resURL != null) { + ejb.addAsManifestResource(resURL, "sun-ejb-jar.xml"); + } + + resURL = Client.class.getResource( + "/com/sun/ts/tests/appclient/deploy/ejbref/scope/appclient_dep_ejbref_casesens_ejb.xml"); + + if (resURL != null) { + ejb.addAsManifestResource(resURL, "ejb-jar.xml"); + } + + EnterpriseArchive ear = ShrinkWrap.create(EnterpriseArchive.class, "appclient_dep_ejbref_scope.ear"); + ear.addAsModule(ejbClient); + ear.addAsModule(ejb); + return ear; + }; + /** * @class.setup_props: org.omg.CORBA.ORBClass; java.naming.factory.initial; @@ -84,6 +156,7 @@ public void setup(String[] args, Properties props) throws Exception { * are distinct and match the ones specified in the DD * (validates that the EJB reference are resolved correctly). */ + @Test public void testCaseSensitivity() throws Exception { ReferencedBean bean1 = null; ReferencedBean bean2 = null; diff --git a/appclient/src/main/java/com/sun/ts/tests/appclient/deploy/ejbref/scope/Client.java b/appclient/src/main/java/com/sun/ts/tests/appclient/deploy/ejbref/scope/Client.java index 7fa4796223..f0ea188696 100644 --- a/appclient/src/main/java/com/sun/ts/tests/appclient/deploy/ejbref/scope/Client.java +++ b/appclient/src/main/java/com/sun/ts/tests/appclient/deploy/ejbref/scope/Client.java @@ -20,13 +20,31 @@ package com.sun.ts.tests.appclient.deploy.ejbref.scope; +import java.io.IOException; +import java.net.URL; import java.util.Properties; -import com.sun.ts.lib.harness.Status; +import org.jboss.arquillian.container.test.api.Deployment; +import org.jboss.arquillian.container.test.api.OverProtocol; +import org.jboss.arquillian.container.test.api.TargetsContainer; +import org.jboss.arquillian.junit5.ArquillianExtension; +import org.jboss.arquillian.test.api.ArquillianResource; +import org.jboss.shrinkwrap.api.ShrinkWrap; +import org.jboss.shrinkwrap.api.asset.StringAsset; +import org.jboss.shrinkwrap.api.spec.EnterpriseArchive; +import org.jboss.shrinkwrap.api.spec.JavaArchive; +import org.junit.jupiter.api.Test; +import org.junit.jupiter.api.extension.ExtendWith; + import com.sun.ts.lib.harness.EETest; +import com.sun.ts.lib.harness.Status; import com.sun.ts.lib.util.TSNamingContext; import com.sun.ts.lib.util.TestUtil; +import tck.arquillian.porting.lib.spi.TestArchiveProcessor; + + +@ExtendWith(ArquillianExtension.class) public class Client extends EETest { private static final String prefix = "java:comp/env/ejb/"; @@ -46,6 +64,86 @@ public static void main(String[] args) { Status s = theTests.run(args, System.out, System.err); s.exit(); } + + + @TargetsContainer("tck-javatest") + @OverProtocol("javatest") + + @Deployment(testable = true) + public static EnterpriseArchive createDeployment(@ArquillianResource TestArchiveProcessor archiveProcessor) + throws IOException { + JavaArchive ejbClient1 = ShrinkWrap.create(JavaArchive.class, "appclient_dep_ejbref_scope_client.jar"); + ejbClient1.addPackages(true, Client.class.getPackage()); + ejbClient1.addPackages(true, "com.sun.ts.lib.harness"); + + // The appclient-client descriptor + URL appClientUrl = Client.class.getResource( + "com/sun/ts/tests/appclient/deploy/ejbref/scope/appclient_dep_ejbref_scope_client.xml"); + if (appClientUrl != null) { + ejbClient1.addAsManifestResource(appClientUrl, "application-client.xml"); + } + // The sun appclient-client descriptor + URL sunAppClientUrl = Client.class.getResource( + "/com/sun/ts/tests/appclient/deploy/ejbref/single/appclient_dep_ejbref_scope_client.jar.sun-application-client.xml"); + if (sunAppClientUrl != null) { + ejbClient1.addAsManifestResource(sunAppClientUrl, "sun-application-client.xml"); + } + + ejbClient1.addAsManifestResource( + new StringAsset("Main-Class: " + "com.sun.ts.tests.appclient.deploy.ejbref.scope.Client" + "\n"), + "MANIFEST.MF"); + + + JavaArchive ejbClient2 = ShrinkWrap.create(JavaArchive.class, "appclient_dep_ejbref_scope_client_another.jar"); + ejbClient2.addPackages(true, Client.class.getPackage()); + ejbClient2.addPackages(true, "com.sun.ts.lib.harness"); + + // The appclient-client descriptor + appClientUrl = Client.class.getResource( + "/com/sun/ts/tests/appclient/deploy/ejbref/scope/appclient_dep_ejbref_scope_another_client.xml"); + if (appClientUrl != null) { + ejbClient2.addAsManifestResource(appClientUrl, "application-client.xml"); + } + // The sun appclient-client descriptor + sunAppClientUrl = Client.class.getResource( + "/com/sun/ts/tests/appclient/deploy/ejbref/scope/appclient_dep_ejbref_scope_another_client.jar.sun-application-client.xml"); + if (sunAppClientUrl != null) { + ejbClient2.addAsManifestResource(sunAppClientUrl, "sun-application-client.xml"); + } + + ejbClient2.addAsManifestResource( + new StringAsset("Main-Class: " + "com.sun.ts.tests.appclient.deploy.ejbref.scope.Client" + "\n"), + "MANIFEST.MF"); + + + JavaArchive ejb = ShrinkWrap.create(JavaArchive.class, "appclient_dep_ejbref_scope_ejb.jar"); + ejb.addPackages(false, "com.sun.ts.tests.assembly.util.refbean"); + ejb.addPackages(false, "com.sun.ts.tests.assembly.util.shared.ejbref.common"); + ejb.addPackages(true, "com.sun.ts.tests.common.dao.coffee"); + ejb.addPackages(true, "com.sun.ts.tests.common.ejb.wrappers"); + ejb.addClasses(ReferencedBean.class, ReferencedBeanEJB.class); + + URL resURL = Client.class.getResource( + "/com/sun/ts/tests/appclient/deploy/ejbref/scope/appclient_dep_ejbref_scope_ejb.jar.sun-ejb-jar.xml"); + + if (resURL != null) { + ejb.addAsManifestResource(resURL, "sun-ejb-jar.xml"); + } + + resURL = Client.class.getResource( + "/com/sun/ts/tests/appclient/deploy/ejbref/scope/appclient_dep_ejbref_scope_ejb.xml"); + + if (resURL != null) { + ejb.addAsManifestResource(resURL, "ejb-jar.xml"); + } + + EnterpriseArchive ear = ShrinkWrap.create(EnterpriseArchive.class, "appclient_dep_ejbref_scope.ear"); + ear.addAsModule(ejbClient1); + ear.addAsModule(ejbClient2); + ear.addAsModule(ejb); + return ear; + }; + /* * @class.setup_props: org.omg.CORBA.ORBClass; java.naming.factory.initial; @@ -54,16 +152,16 @@ public static void main(String[] args) { * @class.testArgs: -ap tssql.stmt * */ - public void setup(String[] args, Properties props) throws Exception { - this.props = props; + public void setup(String[] args, Properties props) throws Exception { + this.props = props; - try { - nctx = new TSNamingContext(); - logMsg("[Client] Setup succeed (got naming context)."); - } catch (Exception e) { - throw new Exception("Setup failed:", e); - } - } + try { + nctx = new TSNamingContext(); + logMsg("[Client] Setup succeed (got naming context)."); + } catch (Exception e) { + throw new Exception("Setup failed:", e); + } + } /** * @testName: testScope @@ -90,6 +188,7 @@ public void setup(String[] args, Properties props) throws Exception { * the application client DD (validates that this EJB * reference is resolved correctly). */ + @Test public void testScope() throws Exception { ReferencedBean bean = null; String beanName; diff --git a/appclient/src/main/java/com/sun/ts/tests/appclient/deploy/ejbref/single/Client.java b/appclient/src/main/java/com/sun/ts/tests/appclient/deploy/ejbref/single/Client.java index b1e12ea6e5..97ea106eef 100644 --- a/appclient/src/main/java/com/sun/ts/tests/appclient/deploy/ejbref/single/Client.java +++ b/appclient/src/main/java/com/sun/ts/tests/appclient/deploy/ejbref/single/Client.java @@ -20,14 +20,32 @@ package com.sun.ts.tests.appclient.deploy.ejbref.single; +import java.io.IOException; +import java.net.URL; import java.util.Properties; -import com.sun.ts.lib.harness.Status; +import org.jboss.arquillian.container.test.api.Deployment; +import org.jboss.arquillian.container.test.api.OverProtocol; +import org.jboss.arquillian.container.test.api.TargetsContainer; +import org.jboss.arquillian.junit5.ArquillianExtension; +import org.jboss.arquillian.test.api.ArquillianResource; +import org.jboss.shrinkwrap.api.ShrinkWrap; +import org.jboss.shrinkwrap.api.asset.StringAsset; +import org.jboss.shrinkwrap.api.spec.EnterpriseArchive; +import org.jboss.shrinkwrap.api.spec.JavaArchive; +import org.junit.jupiter.api.AfterEach; +import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.Test; +import org.junit.jupiter.api.extension.ExtendWith; + import com.sun.ts.lib.harness.EETest; +import com.sun.ts.lib.harness.Status; import com.sun.ts.lib.util.TSNamingContext; -import com.sun.ts.lib.util.TestUtil; import com.sun.ts.tests.assembly.util.shared.ejbref.single.TestCode; +import tck.arquillian.porting.lib.spi.TestArchiveProcessor; + +@ExtendWith(ArquillianExtension.class) public class Client extends EETest { /* @@ -42,6 +60,63 @@ public static void main(String[] args) { Status s = theTests.run(args, System.out, System.err); s.exit(); } + + + @TargetsContainer("tck-javatest") + @OverProtocol("javatest") + + @Deployment(testable = true) + public static EnterpriseArchive createDeployment(@ArquillianResource TestArchiveProcessor archiveProcessor) + throws IOException { + JavaArchive ejbClient = ShrinkWrap.create(JavaArchive.class, "appclient_dep_ejbref_single_client.jar"); + ejbClient.addClasses(Client.class, TestCode.class); + ejbClient.addPackages(true, "com.sun.ts.lib.harness"); + ejbClient.addPackages(true, "com.sun.ts.tests.assembly.util.refbean"); + ejbClient.addPackages(true, "com.sun.ts.tests.common.dao.coffee"); + + // The appclient-client descriptor + URL appClientUrl = Client.class.getResource( + "com/sun/ts/tests/appclient/deploy/ejbref/single/appclient_dep_ejbref_single_client.xml"); + if (appClientUrl != null) { + ejbClient.addAsManifestResource(appClientUrl, "application-client.xml"); + } + // The sun appclient-client descriptor + URL sunAppClientUrl = Client.class.getResource( + "/com/sun/ts/tests/appclient/deploy/ejbref/single/appclient_dep_ejbref_single_client.jar.sun-application-client.xml"); + if (sunAppClientUrl != null) { + ejbClient.addAsManifestResource(sunAppClientUrl, "sun-application-client.xml"); + } + + + ejbClient.addAsManifestResource( + new StringAsset("Main-Class: " + "com.sun.ts.tests.appclient.deploy.ejbref.single.Client" + "\n"), + "MANIFEST.MF"); + + JavaArchive ejb = ShrinkWrap.create(JavaArchive.class, "appclient_dep_ejbref_single_ejb.jar"); + ejb.addPackages(false, "com.sun.ts.tests.assembly.util.refbean"); + ejb.addPackages(true, "com.sun.ts.tests.common.dao.coffee"); + ejb.addPackages(true, "/com.sun.ts.tests.common.ejb.wrappers"); + + URL resURL = Client.class.getResource( + "/com/sun/ts/tests/appclient/deploy/ejbref/single/appclient_dep_ejbref_single_ejb.jar.sun-ejb-jar.xml"); + + if (resURL != null) { + ejb.addAsManifestResource(resURL, "sun-ejb-jar.xml"); + } + + resURL = Client.class.getResource( + "/com/sun/ts/tests/appclient/deploy/ejbref/single/appclient_dep_ejbref_single_ejb.xml"); + + if (resURL != null) { + ejb.addAsManifestResource(resURL, "ejb-jar.xml"); + } + + EnterpriseArchive ear = ShrinkWrap.create(EnterpriseArchive.class, "appclient_dep_ejbref_single.ear"); + ear.addAsModule(ejbClient); + ear.addAsModule(ejb); + return ear; + }; + /* * @class.setup_props: org.omg.CORBA.ORBClass; java.naming.factory.initial; @@ -77,6 +152,7 @@ public void setup(String[] args, Properties props) throws Exception { * that the EJB reference was resolved consistently with the * DD. */ + @Test public void testStateless() throws Exception { boolean pass; @@ -102,6 +178,7 @@ public void testStateless() throws Exception { * found only this particular bean: This is to check that the * EJB reference was resolved consistently with the DD. */ + @Test public void testStateful() throws Exception { boolean pass; diff --git a/appclient/src/main/java/com/sun/ts/tests/appclient/deploy/enventry/casesens/Client.java b/appclient/src/main/java/com/sun/ts/tests/appclient/deploy/enventry/casesens/Client.java index b7193485d8..a97cd9e2f5 100644 --- a/appclient/src/main/java/com/sun/ts/tests/appclient/deploy/enventry/casesens/Client.java +++ b/appclient/src/main/java/com/sun/ts/tests/appclient/deploy/enventry/casesens/Client.java @@ -20,13 +20,30 @@ package com.sun.ts.tests.appclient.deploy.enventry.casesens; +import java.io.IOException; +import java.net.URL; import java.util.Properties; -import com.sun.ts.lib.harness.Status; +import org.jboss.arquillian.container.test.api.Deployment; +import org.jboss.arquillian.container.test.api.OverProtocol; +import org.jboss.arquillian.container.test.api.TargetsContainer; +import org.jboss.arquillian.junit5.ArquillianExtension; +import org.jboss.arquillian.test.api.ArquillianResource; +import org.jboss.shrinkwrap.api.ShrinkWrap; +import org.jboss.shrinkwrap.api.asset.StringAsset; +import org.jboss.shrinkwrap.api.spec.EnterpriseArchive; +import org.jboss.shrinkwrap.api.spec.JavaArchive; +import org.junit.jupiter.api.Test; +import org.junit.jupiter.api.extension.ExtendWith; + import com.sun.ts.lib.harness.EETest; +import com.sun.ts.lib.harness.Status; import com.sun.ts.lib.util.TSNamingContext; import com.sun.ts.tests.assembly.util.shared.enventry.casesens.TestCode; +import tck.arquillian.porting.lib.spi.TestArchiveProcessor; + +@ExtendWith(ArquillianExtension.class) public class Client extends EETest { private TSNamingContext nctx = null; @@ -38,6 +55,35 @@ public static void main(String[] args) { Status s = theTests.run(args, System.out, System.err); s.exit(); } + + + @TargetsContainer("tck-javatest") + @OverProtocol("javatest") + + @Deployment(testable = false) + public static EnterpriseArchive createDeployment(@ArquillianResource TestArchiveProcessor archiveProcessor) + throws IOException { + JavaArchive ejbClient = ShrinkWrap.create(JavaArchive.class, "appclient_dep_enventry_casesens_client.jar"); + ejbClient.addClasses(Client.class, TestCode.class); + ejbClient.addPackages(true, "com.sun.ts.lib.harness"); + + // The appclient-client descriptor + URL appClientUrl = Client.class.getResource( + "/com/sun/ts/tests/appclient/deploy/enventry/casesens/appclient_dep_enventry_casesens_client.xml"); + if (appClientUrl != null) { + ejbClient.addAsManifestResource(appClientUrl, "application-client.xml"); + } + + ejbClient.addAsManifestResource( + new StringAsset("Main-Class: " + "com.sun.ts.tests.appclient.deploy.enventry.casesens.Client" + "\n"), + "MANIFEST.MF"); + + + EnterpriseArchive ear = ShrinkWrap.create(EnterpriseArchive.class, "appclient_dep_enventry_casesens.ear"); + ear.addAsModule(ejbClient); + return ear; + }; + /* * @class.setup_props: org.omg.CORBA.ORBClass; java.naming.factory.initial; @@ -65,6 +111,7 @@ public void setup(String[] args, Properties props) throws Exception { * environment entries. Check that their runtime values are * distinct and match the ones specified in the DD. */ + @Test public void testCaseSensitivity() throws Exception { boolean pass; diff --git a/appclient/src/main/java/com/sun/ts/tests/appclient/deploy/enventry/scope/Client.java b/appclient/src/main/java/com/sun/ts/tests/appclient/deploy/enventry/scope/Client.java index 3d4cf671c0..3dfa989538 100644 --- a/appclient/src/main/java/com/sun/ts/tests/appclient/deploy/enventry/scope/Client.java +++ b/appclient/src/main/java/com/sun/ts/tests/appclient/deploy/enventry/scope/Client.java @@ -20,13 +20,31 @@ package com.sun.ts.tests.appclient.deploy.enventry.scope; +import java.io.IOException; +import java.net.URL; import java.util.Properties; -import com.sun.ts.lib.harness.Status; +import org.jboss.arquillian.container.test.api.Deployment; +import org.jboss.arquillian.container.test.api.OverProtocol; +import org.jboss.arquillian.container.test.api.TargetsContainer; +import org.jboss.arquillian.junit5.ArquillianExtension; +import org.jboss.arquillian.test.api.ArquillianResource; +import org.jboss.shrinkwrap.api.ShrinkWrap; +import org.jboss.shrinkwrap.api.asset.StringAsset; +import org.jboss.shrinkwrap.api.spec.EnterpriseArchive; +import org.jboss.shrinkwrap.api.spec.JavaArchive; +import org.junit.jupiter.api.Test; +import org.junit.jupiter.api.extension.ExtendWith; + import com.sun.ts.lib.harness.EETest; +import com.sun.ts.lib.harness.Status; import com.sun.ts.lib.util.TSNamingContext; import com.sun.ts.tests.assembly.util.shared.enventry.scope.TestCode; +import tck.arquillian.porting.lib.spi.TestArchiveProcessor; + + +@ExtendWith(ArquillianExtension.class) public class Client extends EETest { /** Env. entry name for JNDI lookup */ @@ -44,6 +62,52 @@ public static void main(String[] args) { Status s = theTests.run(args, System.out, System.err); s.exit(); } + + + @TargetsContainer("tck-javatest") + @OverProtocol("javatest") + + @Deployment(testable = false) + public static EnterpriseArchive createDeployment(@ArquillianResource TestArchiveProcessor archiveProcessor) + throws IOException { + JavaArchive ejbClient1 = ShrinkWrap.create(JavaArchive.class, "appclient_dep_enventry_scope_another_client.jar"); + ejbClient1.addClasses(Client.class, TestCode.class); + ejbClient1.addPackages(true, "com.sun.ts.lib.harness"); + + // The appclient-client descriptor + URL appClientUrl = Client.class.getResource( + "com/sun/ts/tests/appclient/deploy/enventry/scope/appclient_dep_enventry_scope_another_client.xml"); + if (appClientUrl != null) { + ejbClient1.addAsManifestResource(appClientUrl, "application-client.xml"); + } + + ejbClient1.addAsManifestResource( + new StringAsset("Main-Class: " + "com.sun.ts.tests.appclient.deploy.enventry.scope.Client" + "\n"), + "MANIFEST.MF"); + + + JavaArchive ejbClient2 = ShrinkWrap.create(JavaArchive.class, "appclient_dep_enventry_scope_client.jar"); + ejbClient2.addClasses(Client.class, TestCode.class); + ejbClient2.addPackages(true, "com.sun.ts.lib.harness"); + + URL resURL = Client.class.getResource( + "/com/sun/ts/tests/appclient/deploy/enventry/scope/appclient_dep_enventry_scope_client.xml"); + + if (resURL != null) { + ejbClient2.addAsManifestResource(resURL, "application-client.xml"); + } + + ejbClient2.addAsManifestResource( + new StringAsset("Main-Class: " + "com.sun.ts.tests.appclient.deploy.enventry.scope.Client" + "\n"), + "MANIFEST.MF"); + + + EnterpriseArchive ear = ShrinkWrap.create(EnterpriseArchive.class, "appclient_dep_enventry_scope.ear"); + ear.addAsModule(ejbClient1); + ear.addAsModule(ejbClient2); + return ear; + }; + /* * @class.setup_props: org.omg.CORBA.ORBClass; java.naming.factory.initial; @@ -76,6 +140,7 @@ public void setup(String[] args, Properties props) throws Exception { * entry correspond to the one declared in the Deployment * Descriptor. */ + @Test public void testScope() throws Exception { boolean pass; diff --git a/appclient/src/main/java/com/sun/ts/tests/appclient/deploy/enventry/single/Client.java b/appclient/src/main/java/com/sun/ts/tests/appclient/deploy/enventry/single/Client.java index 39c80605d2..e40336353b 100644 --- a/appclient/src/main/java/com/sun/ts/tests/appclient/deploy/enventry/single/Client.java +++ b/appclient/src/main/java/com/sun/ts/tests/appclient/deploy/enventry/single/Client.java @@ -20,13 +20,30 @@ package com.sun.ts.tests.appclient.deploy.enventry.single; +import java.io.IOException; +import java.net.URL; import java.util.Properties; -import com.sun.ts.lib.harness.Status; +import org.jboss.arquillian.container.test.api.Deployment; +import org.jboss.arquillian.container.test.api.OverProtocol; +import org.jboss.arquillian.container.test.api.TargetsContainer; +import org.jboss.arquillian.junit5.ArquillianExtension; +import org.jboss.arquillian.test.api.ArquillianResource; +import org.jboss.shrinkwrap.api.ShrinkWrap; +import org.jboss.shrinkwrap.api.asset.StringAsset; +import org.jboss.shrinkwrap.api.spec.EnterpriseArchive; +import org.jboss.shrinkwrap.api.spec.JavaArchive; +import org.junit.jupiter.api.Test; +import org.junit.jupiter.api.extension.ExtendWith; + import com.sun.ts.lib.harness.EETest; +import com.sun.ts.lib.harness.Status; import com.sun.ts.lib.util.TSNamingContext; import com.sun.ts.tests.assembly.util.shared.enventry.single.TestCode; +import tck.arquillian.porting.lib.spi.TestArchiveProcessor; + +@ExtendWith(ArquillianExtension.class) public class Client extends EETest { private TSNamingContext nctx = null; @@ -38,6 +55,36 @@ public static void main(String[] args) { Status s = theTests.run(args, System.out, System.err); s.exit(); } + + + @TargetsContainer("tck-javatest") + @OverProtocol("javatest") + + @Deployment(testable = false) + public static EnterpriseArchive createDeployment(@ArquillianResource TestArchiveProcessor archiveProcessor) + throws IOException { + JavaArchive ejbClient = ShrinkWrap.create(JavaArchive.class, "appclient_dep_enventry_single_client.jar"); + ejbClient.addPackages(true, Client.class.getPackage()); + ejbClient.addClasses(Client.class, TestCode.class); + ejbClient.addPackages(true, "com.sun.ts.lib.harness"); + + // The appclient-client descriptor + URL appClientUrl = Client.class.getResource( + "/com/sun/ts/tests/appclient/deploy/enventry/single/appclient_dep_enventry_single_client.xml"); + if (appClientUrl != null) { + ejbClient.addAsManifestResource(appClientUrl, "application-client.xml"); + } + + ejbClient.addAsManifestResource( + new StringAsset("Main-Class: " + "com.sun.ts.tests.appclient.deploy.enventry.single.Client" + "\n"), + "MANIFEST.MF"); + + + EnterpriseArchive ear = ShrinkWrap.create(EnterpriseArchive.class, "appclient_dep_enventry_single.ear"); + ear.addAsModule(ejbClient); + return ear; + }; + /* * @class.setup_props: org.omg.CORBA.ORBClass; java.naming.factory.initial; @@ -64,6 +111,7 @@ public void setup(String[] args, Properties props) throws Exception { * its runtime value match the DD value. * */ + @Test public void testString() throws Exception { boolean pass; @@ -87,6 +135,7 @@ public void testString() throws Exception { * its runtime value match the DD value. * */ + @Test public void testBoolean() throws Exception { boolean pass; @@ -110,6 +159,7 @@ public void testBoolean() throws Exception { * its runtime value match the DD value. * */ + @Test public void testByte() throws Exception { boolean pass; @@ -133,6 +183,7 @@ public void testByte() throws Exception { * its runtime value match the DD value. * */ + @Test public void testShort() throws Exception { boolean pass; @@ -156,6 +207,7 @@ public void testShort() throws Exception { * its runtime value match the DD value. * */ + @Test public void testInteger() throws Exception { boolean pass; @@ -179,6 +231,7 @@ public void testInteger() throws Exception { * its runtime value match the DD value. * */ + @Test public void testLong() throws Exception { boolean pass; @@ -202,6 +255,7 @@ public void testLong() throws Exception { * its runtime value match the DD value. * */ + @Test public void testFloat() throws Exception { boolean pass; @@ -225,6 +279,7 @@ public void testFloat() throws Exception { * its runtime value match the DD value. * */ + @Test public void testDouble() throws Exception { boolean pass; Double value; @@ -249,6 +304,7 @@ public void testDouble() throws Exception { * check that their runtime value match their DD value. * */ + @Test public void testAll() throws Exception { try { logTrace("[Client] testAll() : starting..."); diff --git a/appclient/src/main/java/com/sun/ts/tests/appclient/deploy/metadatacomplete/testapp/DataStore.java b/appclient/src/main/java/com/sun/ts/tests/appclient/deploy/metadatacomplete/testapp/DataStore.java new file mode 100644 index 0000000000..d63bb912f4 --- /dev/null +++ b/appclient/src/main/java/com/sun/ts/tests/appclient/deploy/metadatacomplete/testapp/DataStore.java @@ -0,0 +1,25 @@ +/* + * Copyright (c) 2017, 2018, 2020 Oracle and/or its affiliates. All rights reserved. + * + * This program and the accompanying materials are made available under the + * terms of the Eclipse Public License v. 2.0, which is available at + * http://www.eclipse.org/legal/epl-2.0. + * + * This Source Code may also be made available under the following Secondary + * Licenses when the conditions for such availability set forth in the + * Eclipse Public License v. 2.0 are satisfied: GNU General Public License, + * version 2 with the GNU Classpath Exception, which is available at + * https://www.gnu.org/software/classpath/license.html. + * + * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0 + */ + +package com.sun.ts.tests.appclient.deploy.metadatacomplete.testapp; + +import jakarta.ejb.Local; + +@Local +public interface DataStore { + + public String getData(); +} diff --git a/appclient/src/main/java/com/sun/ts/tests/appclient/deploy/metadatacomplete/testapp/DataStoreBean.java b/appclient/src/main/java/com/sun/ts/tests/appclient/deploy/metadatacomplete/testapp/DataStoreBean.java new file mode 100644 index 0000000000..915de68e93 --- /dev/null +++ b/appclient/src/main/java/com/sun/ts/tests/appclient/deploy/metadatacomplete/testapp/DataStoreBean.java @@ -0,0 +1,30 @@ +/* + * Copyright (c) 2017, 2018, 2020 Oracle and/or its affiliates. All rights reserved. + * + * This program and the accompanying materials are made available under the + * terms of the Eclipse Public License v. 2.0, which is available at + * http://www.eclipse.org/legal/epl-2.0. + * + * This Source Code may also be made available under the following Secondary + * Licenses when the conditions for such availability set forth in the + * Eclipse Public License v. 2.0 are satisfied: GNU General Public License, + * version 2 with the GNU Classpath Exception, which is available at + * https://www.gnu.org/software/classpath/license.html. + * + * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0 + */ + +package com.sun.ts.tests.appclient.deploy.metadatacomplete.testapp; + +import jakarta.ejb.LocalBean; +import jakarta.ejb.Stateless; + +@Stateless +@LocalBean + +public class DataStoreBean implements DataStore, DataStoreRemote { + + public String getData() { + return "42"; + } +} diff --git a/appclient/src/main/java/com/sun/ts/tests/appclient/deploy/metadatacomplete/testapp/DataStoreRemote.java b/appclient/src/main/java/com/sun/ts/tests/appclient/deploy/metadatacomplete/testapp/DataStoreRemote.java new file mode 100644 index 0000000000..4ca9d5de6b --- /dev/null +++ b/appclient/src/main/java/com/sun/ts/tests/appclient/deploy/metadatacomplete/testapp/DataStoreRemote.java @@ -0,0 +1,25 @@ +/* + * Copyright (c) 2017, 2018, 2020 Oracle and/or its affiliates. All rights reserved. + * + * This program and the accompanying materials are made available under the + * terms of the Eclipse Public License v. 2.0, which is available at + * http://www.eclipse.org/legal/epl-2.0. + * + * This Source Code may also be made available under the following Secondary + * Licenses when the conditions for such availability set forth in the + * Eclipse Public License v. 2.0 are satisfied: GNU General Public License, + * version 2 with the GNU Classpath Exception, which is available at + * https://www.gnu.org/software/classpath/license.html. + * + * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0 + */ + +package com.sun.ts.tests.appclient.deploy.metadatacomplete.testapp; + +import jakarta.ejb.Remote; + +@Remote +public interface DataStoreRemote { + + public String getData(); +} diff --git a/appclient/src/main/java/com/sun/ts/tests/appclient/deploy/metadatacomplete/testapp/TestAppClient.java b/appclient/src/main/java/com/sun/ts/tests/appclient/deploy/metadatacomplete/testapp/TestAppClient.java new file mode 100644 index 0000000000..25ff95630b --- /dev/null +++ b/appclient/src/main/java/com/sun/ts/tests/appclient/deploy/metadatacomplete/testapp/TestAppClient.java @@ -0,0 +1,336 @@ +/* + * Copyright (c) 2017, 2018, 2020 Oracle and/or its affiliates. All rights reserved. + * + * This program and the accompanying materials are made available under the + * terms of the Eclipse Public License v. 2.0, which is available at + * http://www.eclipse.org/legal/epl-2.0. + * + * This Source Code may also be made available under the following Secondary + * Licenses when the conditions for such availability set forth in the + * Eclipse Public License v. 2.0 are satisfied: GNU General Public License, + * version 2 with the GNU Classpath Exception, which is available at + * https://www.gnu.org/software/classpath/license.html. + * + * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0 + */ + +/* + * @(#)TestAppClient.java 1.11 07/20/2017 + */ +package com.sun.ts.tests.appclient.deploy.metadatacomplete.testapp; + +import java.util.Properties; + +import javax.naming.InitialContext; + +import com.sun.ts.lib.harness.Status; +import com.sun.ts.lib.harness.EETest; +import com.sun.ts.lib.util.TSNamingContext; + +import jakarta.annotation.Resource; +import jakarta.annotation.sql.DataSourceDefinition; +import jakarta.ejb.EJB; +import jakarta.jms.ConnectionFactory; +import jakarta.jms.JMSConnectionFactoryDefinition; +import jakarta.jms.JMSDestinationDefinition; +import jakarta.jms.Queue; +import jakarta.mail.MailSessionDefinition; +import jakarta.mail.Session; +import jakarta.persistence.EntityManagerFactory; +import jakarta.persistence.PersistenceUnit; + +@MailSessionDefinition(name = "java:comp/myMailSession", host = "smtp.gmail.com", transportProtocol = "smtps", properties = { + "mail.debug=true" }) +@DataSourceDefinition(name = "java:global/MyApp/MyDataSource", className = "oracle.jdbc.pool.OracleDataSource", url = "jdbc:oracle:thin:@localhost:1521:orcl", user = "TESTU", password = "TESTU") +@JMSConnectionFactoryDefinition(description = "Define ConnectionFactory JSPMyTestConnectionFactory", interfaceName = "jakarta.jms.ConnectionFactory", name = "java:global/JSPMyTestConnectionFactory", user = "j2ee", password = "j2ee") +@JMSDestinationDefinition(name = "java:app/jms/myappTopic", interfaceName = "jakarta.jms.Topic", destinationName = "MyPhysicalAppTopic") + +public class TestAppClient extends EETest { + + private InitialContext initialContext; + + private TSNamingContext nctx = null; + + private Properties props = null; + + @Resource(lookup = "java:comp/myMailSession") + private static Session session; + + @EJB + static DataStoreRemote dataStore; + + @Resource(lookup = "java:app/jms/TestConnectionFactory") + private static ConnectionFactory testFac; + + @Resource(lookup = "java:app/jms/TestQ") + private static Queue testQueue; + + @PersistenceUnit(unitName = "TEST-EM-APPCLIENT") + static EntityManagerFactory emf; + + /* + * @class.setup_props: org.omg.CORBA.ORBClass; java.naming.factory.initial; + * generateSQL; + * + * @class.testArgs: -ap tssql.stmt + * + */ + public void setup(String[] args, Properties props) throws Fault { + this.props = props; + try { + nctx = new TSNamingContext(); + logMsg("[Client] Setup succeed (got naming context)."); + } catch (Exception e) { + throw new Fault("Setup failed:", e); + } + } + + public static void main(String[] args) { + TestAppClient theTests = new TestAppClient(); + Status s = theTests.run(args, System.out, System.err); + s.exit(); + } + + + /** + * @testName: testMailSession + * + * @assertion_ids: JavaEE:SPEC:323 + * + * @test_Strategy: + * + * We check that: + * + * - When the meta-data complete attribute is set to + * true,Resource annotation should be ignored - as it is one + * of the annotations to which metadata-complete is + * applicable. + * + */ + public void testMailSession() throws Fault { + try { + Object sess = nctx.lookup("mail/Session"); + logMsg("sess" + sess); + if (null == sess) { + throw new Fault("lookup failed!"); + } + } catch (Exception e) { + throw new Fault("MailSession test failed: " + e, e); + } + } + + /** + * @testName: testMailSessionDefinition + * + * @assertion_ids: JavaEE:SPEC:323 + * + * @test_Strategy: + * + * We check that: + * + * - When the meta-data complete attribute is set to + * true,MailSessionDefinition annotation should be ignored - + * as it is one of the annotations to which metadata-complete + * is applicable. + * + */ + public void testMailSessionDefinition() throws Fault { + try { + logMsg("session" + session); + logMsg("mail.debug:" + session.getProperty("mail.debug")); + if (null != session) { + throw new Fault("MailSessionDefinition test failed!"); + } + } catch (Exception e) { + throw new Fault("MailSessionDefinition test failed: " + e, e); + } + } + + /** + * @testName: testEJBAnnotation + * + * @assertion_ids: JavaEE:SPEC:323 + * + * @test_Strategy: + * + * We check that: + * + * - When the meta-data complete attribute is set to true,EJB + * annotation should be ignored - as it is one of the + * annotations to which metadata-complete is applicable. + * + */ + public void testEJBAnnotation() throws Fault { + try { + logMsg("datastore" + dataStore); + if (null != dataStore) { + throw new Fault("EJBAnnotation test failed!"); + } + } catch (Exception e) { + throw new Fault("EJBAnnotation test failed: " + e, e); + } + } + + /** + * @testName: testDataSourceDefinitionAnnotation + * + * @assertion_ids: JavaEE:SPEC:323 + * + * @test_Strategy: + * + * We check that: + * + * - When the meta-data complete attribute is set to + * true,DataSourceDefinition annotation should be ignored - as + * it is one of the annotations to which metadat-complete is + * applicable. + * + */ + public void testDataSourceDefinitionAnnotation() throws Fault { + try { + Object dataSource = nctx.lookup("java:global/MyApp/MyDataSource"); + if (dataSource != null) { + throw new Fault("DataSourceDefinition test failed!"); + } + } catch (Exception e) { + throw new Fault("DataSourceDefinition test failed: " + e, e); + } + } + + /** + * @testName: testJMSConnectionFactoryDefinitionAnnotation + * + * @assertion_ids: JavaEE:SPEC:323 + * + * @test_Strategy: + * + * We check that: + * + * - When the meta-data complete attribute is set to + * true,JMSConnectionFactoryDefinition annotation should be + * ignored - as it is one of the annotations to which + * metadata-complete is applicable. + * + */ + public void testJMSConnectionFactoryDefinitionAnnotation() throws Fault { + try { + Object connFactory = nctx + .lookup("java:global/JSPMyTestConnectionFactory"); + logMsg("connFactory" + connFactory); + if (connFactory != null) { + throw new Fault("JMSConnectionFactoryDefinition test failed!"); + } + } catch (Exception e) { + throw new Fault("JMSConnectionFactoryDefinition test failed: " + e, e); + } + } + + /** + * @testName: testJMSDestinationDefinitionAnnotation + * + * @assertion_ids: JavaEE:SPEC:323 + * + * @test_Strategy: + * + * We check that: + * + * - When the meta-data complete attribute is set to + * true,JMSDestinationDefinition annotation should be ignored + * - as it is one of the annotations to which + * metadata-complete is applicable. + * + */ + public void testJMSDestinationDefinitionAnnotation() throws Fault { + try { + Object destination = nctx.lookup("java:app/jms/myappTopic"); + logMsg("destination" + destination); + if (destination != null) { + throw new Fault("JMSDestinationDefinition test failed!"); + } + } catch (Exception e) { + throw new Fault("JMSDestinationDefinition test failed: " + e, e); + } + } + + /** + * @testName: testConnectionFactoryDefinitionAnnotation + * + * @assertion_ids: JavaEE:SPEC:323 + * + * @test_Strategy: + * + * We check that: + * + * - When the meta-data complete attribute is set to + * true,ConnectionFactoryDefinition annotation should be + * ignored - as it is one of the annotations to which + * metadata-complete is applicable. + * + */ + public void testConnectionFactoryDefinitionAnnotation() throws Fault { + try { + logMsg("testFac" + testFac); + if (testFac != null) { + throw new Fault("ConnectionFactoryDefinition test failed!"); + } + } catch (Exception e) { + throw new Fault("ConnectionFactoryDefinition test failed: " + e, e); + } + } + + /** + * @testName: testAdministeredObjectDefinitionAnnotation + * + * @assertion_ids: JavaEE:SPEC:323 + * + * @test_Strategy: + * + * We check that: + * + * - When the meta-data complete attribute is set to + * true,AdministeredObjectDefinition annotation should be + * ignored - as it is one of the annotations to which + * metadata-complete is applicable. + * + */ + public void testAdministeredObjectDefinitionAnnotation() throws Fault { + try { + logMsg("testQueue" + testQueue); + if (testFac != null) { + throw new Fault("AdministeredObjectDefinition test failed!"); + } + } catch (Exception e) { + throw new Fault("AdministeredObjectDefinition test failed: " + e, e); + } + } + + /** + * @testName: testPersistenceUnitDefinitionAnnotation + * + * @assertion_ids: JavaEE:SPEC:323 + * + * @test_Strategy: + * + * We check that: + * + * - When the meta-data complete attribute is set to + * true,PersistenceUnitDefinition annotation should be ignored + * - as it is one of the annotations to which + * metadata-complete is applicable. + * + */ + public void testPersistenceUnitDefinitionAnnotation() throws Fault { + try { + logMsg("emf" + emf); + if (emf != null) { + throw new Fault("PersistenceUnitDefinition test failed!"); + } + } catch (Exception e) { + throw new Fault("PersistenceUnitDefinition test failed: " + e, e); + } + } + + public void cleanup() throws Fault { + logMsg("[Client] cleanup()"); + } +} diff --git a/appclient/src/main/java/com/sun/ts/tests/appclient/deploy/metadatacomplete/testapp/TestBean.java b/appclient/src/main/java/com/sun/ts/tests/appclient/deploy/metadatacomplete/testapp/TestBean.java new file mode 100644 index 0000000000..8b672b1d3f --- /dev/null +++ b/appclient/src/main/java/com/sun/ts/tests/appclient/deploy/metadatacomplete/testapp/TestBean.java @@ -0,0 +1,39 @@ +/* + * Copyright (c) 2017, 2020 Oracle and/or its affiliates. All rights reserved. + * + * This program and the accompanying materials are made available under the + * terms of the Eclipse Public License v. 2.0, which is available at + * http://www.eclipse.org/legal/epl-2.0. + * + * This Source Code may also be made available under the following Secondary + * Licenses when the conditions for such availability set forth in the + * Eclipse Public License v. 2.0 are satisfied: GNU General Public License, + * version 2 with the GNU Classpath Exception, which is available at + * https://www.gnu.org/software/classpath/license.html. + * + * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0 + */ + +package com.sun.ts.tests.appclient.deploy.metadatacomplete.testapp; + +import jakarta.annotation.ManagedBean; +import jakarta.annotation.PostConstruct; +import jakarta.annotation.PreDestroy; + +@ManagedBean("mybean") +public class TestBean { + + public TestBean() { + System.out.println(">>>>>>>>>>>>> Test123 "); + } + + @PostConstruct + public void postConstruct() { + System.out.println(">>> TestBean:postConstruct()"); + } + + @PreDestroy + public void preDestroy() { + System.out.println(">>> TestBean:preDestroy()"); + } +} diff --git a/appclient/src/main/java/com/sun/ts/tests/appclient/deploy/metadatacomplete/testapp/application-client.xml b/appclient/src/main/java/com/sun/ts/tests/appclient/deploy/metadatacomplete/testapp/application-client.xml new file mode 100644 index 0000000000..cdc3abfdb9 --- /dev/null +++ b/appclient/src/main/java/com/sun/ts/tests/appclient/deploy/metadatacomplete/testapp/application-client.xml @@ -0,0 +1,23 @@ + + + + + testapp + + diff --git a/appclient/src/main/java/com/sun/ts/tests/appclient/deploy/metadatacomplete/testapp/application.xml b/appclient/src/main/java/com/sun/ts/tests/appclient/deploy/metadatacomplete/testapp/application.xml new file mode 100644 index 0000000000..4bc148e0b6 --- /dev/null +++ b/appclient/src/main/java/com/sun/ts/tests/appclient/deploy/metadatacomplete/testapp/application.xml @@ -0,0 +1,27 @@ + + + + + + testApp_ejb.jar + + + testApp_client.jar + + diff --git a/appclient/src/main/java/com/sun/ts/tests/appclient/deploy/metadatacomplete/testapp/files/DataStoreBean.java.src b/appclient/src/main/java/com/sun/ts/tests/appclient/deploy/metadatacomplete/testapp/files/DataStoreBean.java.src new file mode 100644 index 0000000000..c3c5c1b0e3 --- /dev/null +++ b/appclient/src/main/java/com/sun/ts/tests/appclient/deploy/metadatacomplete/testapp/files/DataStoreBean.java.src @@ -0,0 +1,31 @@ +/* + * Copyright (c) 2017, 2018, 2020 Oracle and/or its affiliates. All rights reserved. + * + * This program and the accompanying materials are made available under the + * terms of the Eclipse Public License v. 2.0, which is available at + * http://www.eclipse.org/legal/epl-2.0. + * + * This Source Code may also be made available under the following Secondary + * Licenses when the conditions for such availability set forth in the + * Eclipse Public License v. 2.0 are satisfied: GNU General Public License, + * version 2 with the GNU Classpath Exception, which is available at + * https://www.gnu.org/software/classpath/license.html. + * + * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0 + */ + +package com.sun.ts.tests.appclient.deploy.metadatacomplete.testapp; +import jakarta.ejb.LocalBean; +import jakarta.ejb.Stateless; +import jakarta.resource.ConnectionFactoryDefinition; +import jakarta.resource.AdministeredObjectDefinition; + +@Stateless +@LocalBean + +public class DataStoreBean implements DataStore,DataStoreRemote{ + + public String getData() { + return "42"; + } +} \ No newline at end of file diff --git a/appclient/src/main/java/com/sun/ts/tests/appclient/deploy/metadatacomplete/testapp/files/TestAppClient.java.src b/appclient/src/main/java/com/sun/ts/tests/appclient/deploy/metadatacomplete/testapp/files/TestAppClient.java.src new file mode 100644 index 0000000000..35deac25dc --- /dev/null +++ b/appclient/src/main/java/com/sun/ts/tests/appclient/deploy/metadatacomplete/testapp/files/TestAppClient.java.src @@ -0,0 +1,492 @@ +/* + * Copyright (c) 2017, 2018, 2020 Oracle and/or its affiliates. All rights reserved. + * + * This program and the accompanying materials are made available under the + * terms of the Eclipse Public License v. 2.0, which is available at + * http://www.eclipse.org/legal/epl-2.0. + * + * This Source Code may also be made available under the following Secondary + * Licenses when the conditions for such availability set forth in the + * Eclipse Public License v. 2.0 are satisfied: GNU General Public License, + * version 2 with the GNU Classpath Exception, which is available at + * https://www.gnu.org/software/classpath/license.html. + * + * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0 + */ + +package com.sun.ts.tests.appclient.deploy.metadatacomplete.testapp; + +import java.io.PrintStream; +import jakarta.annotation.Resource; +import javax.naming.InitialContext; +import javax.naming.NamingException; +import javax.naming.NamingEnumeration; +import javax.naming.NameClassPair; +import java.util.Properties; +import com.sun.ts.lib.harness.EETest; +import com.sun.ts.lib.util.TestUtil; +import com.sun.ts.lib.util.TSNamingContext; +import com.sun.javatest.Status; +import jakarta.mail.Session; +import jakarta.mail.MailSessionDefinition; +import jakarta.ejb.EJB; +import jakarta.xml.ws.WebServiceRef; +import jakarta.annotation.sql.DataSourceDefinition; +import jakarta.jms.JMSConnectionFactoryDefinition; +import jakarta.jms.JMSDestinationDefinition; +import jakarta.jms.ConnectionFactory; +import jakarta.jms.Queue; +import jakarta.persistence.PersistenceUnit; +import jakarta.persistence.EntityManagerFactory; + + +@MailSessionDefinition(name = "java:comp/myMailSession", + host = "smtp.gmail.com", + transportProtocol = "smtps", + properties = { + "mail.debug=true" +}) +@DataSourceDefinition(name="java:global/MyApp/MyDataSource", + className="@dbclassname@", + url="@dburl@", + user="@dbuser@", + password="@dbpassword@" + ) +@JMSConnectionFactoryDefinition( + description="Define ConnectionFactory JSPMyTestConnectionFactory", + interfaceName="jakarta.jms.ConnectionFactory", + name="java:global/JSPMyTestConnectionFactory", + user = "@user@", + password = "@password@" + ) +@JMSDestinationDefinition( + name = "java:app/jms/myappTopic", + interfaceName = "jakarta.jms.Topic", + destinationName = "MyPhysicalAppTopic" +) + +public class TestAppClient extends EETest +{ + private InitialContext initialContext; + private TSNamingContext nctx = null; + private Properties props = null; + @Resource(lookup="java:module/mybean") + private static TestBean bean; + @Resource(lookup="java:comp/myMailSession") + private static Session session; + @EJB + static DataStoreRemote dataStore; + @WebServiceRef(name="service/HelloService") + static HelloService service; + @Resource(lookup="java:app/jms/TestConnectionFactory") + private static ConnectionFactory testFac; + @Resource(lookup="java:app/jms/TestQ") + private static Queue testQueue; + @PersistenceUnit(unitName = "TEST-EM-APPCLIENT") + static EntityManagerFactory emf; + @Resource(lookup="java:global/MyApp/MyDataSource") + private static Object dataSource; + @Resource(lookup="java:global/JSPMyTestConnectionFactory") + private static Object connFactory; + @Resource(lookup="java:app/jms/myappTopic") + private static Object destination; + + + + private Object lookup(String jndiName) + throws NamingException + { + return this.initialContext.lookup(jndiName); + } + /* + * @class.setup_props: org.omg.CORBA.ORBClass; + * java.naming.factory.initial; + * generateSQL; + * + * @class.testArgs: -ap tssql.stmt + * + */ + public void setup(String[] args, Properties props) throws Fault { + this.props = props; + + try { + nctx = new TSNamingContext(); + logMsg("[Client] Setup succeed (got naming context)."); + } catch (Exception e) { + throw new Fault("Setup failed:", e); + } + } + + public static void main(String[] args) { + TestAppClient theTests = new TestAppClient(); + Status s = theTests.run(args, System.out, System.err); + s.exit(); + } + + /** + * @testName: testResourceLookup + * + * @assertion_ids: JavaEE:SPEC:323 + * + * @test_Strategy: + * + * We check that: + * + * - When the meta-data complete attribute is set to true,ManagedBean annotation + * - should work as metadata-complete attribute is not applicable to it. + * + */ + public void testResourceLookup() throws Fault { + try { + + Object mybean = + nctx.lookup("java:module/mybean"); + logMsg("mybean"+mybean); + if(null == mybean){ + throw new Fault("lookup failed!"); + } + } + catch (Exception e) { + throw new Fault("lookup failed: " + e, e); + } + } + + /** + * @testName: testResourceAnnotation + * + * @assertion_ids: JavaEE:SPEC:323 + * + * @test_Strategy: + * + * We check that: + * + * - When the meta-data complete attribute is set to true,Resource annotation should be ignored + * - as it is one of the annotations to which metadat-complete is applicable. + * + */ + public void testResourceAnnotation() throws Fault { + + try { + logMsg("bean"+bean); + if(null != bean){ + throw new Fault("ResourceAnnotation test failed!"); + } + + + } + catch (Exception e) { + throw new Fault("ResourceAnnotation test failed: " + e, e); + } + } + + /** + * @testName: testMailSession + * + * @assertion_ids: JavaEE:SPEC:323 + * + * @test_Strategy: + * + * We check that: + * + * - When the meta-data complete attribute is set to true,Resource annotation should be ignored + * - as it is one of the annotations to which metadat-complete is applicable. + * + */ + public void testMailSession() throws Fault { + + try { + + Object sess = + nctx.lookup("mail/Session"); + logMsg("sess"+sess); + if(null == sess){ + throw new Fault("lookup failed!"); + } + + } + catch (Exception e) { + throw new Fault("MailSession test failed: " + e, e); + } + } + + /** + * @testName: testMailSessionDefinition + * + * @assertion_ids: JavaEE:SPEC:323 + * + * @test_Strategy: + * + * We check that: + * + * - When the meta-data complete attribute is set to true,MailSessionDefinition annotation should be ignored + * - as it is one of the annotations to which metadat-complete is applicable. + * + */ + public void testMailSessionDefinition() throws Fault { + + try { + + //Session sess = + //(Session)nctx.lookup("java:comp/myMailSession"); + logMsg("session"+session); + //logMsg("mail.debug:"+session.getProperty("mail.debug")); + if(null != session){ + throw new Fault("MailSessionDefinition test failed!"); + } + + } + catch (Exception e) { + throw new Fault("MailSessionDefinition test failed: " + e, e); + } + } + + /** + * @testName: testEJBAnnotation + * + * @assertion_ids: JavaEE:SPEC:323 + * + * @test_Strategy: + * + * We check that: + * + * - When the meta-data complete attribute is set to true,EJB annotation should be ignored + * - as it is one of the annotations to which metadat-complete is applicable. + * + */ + public void testEJBAnnotation() throws Fault { + + try { + + logMsg("datastore"+dataStore); + if(null != dataStore){ + throw new Fault("EJBAnnotation test failed!"); + } + + } + catch (Exception e) { + throw new Fault("EJBAnnotation test failed: " + e, e); + } + } + + /** + * @testName: testWebServiceRefAnnotation + * + * @assertion_ids: JavaEE:SPEC:323 + * + * @test_Strategy: + * + * We check that: + * + * - When the meta-data complete attribute is set to true,WebServiceRef annotation should be ignored + * - as it is one of the annotations to which metadat-complete is applicable. + * + */ + public void testWebServiceRefAnnotation() throws Fault { + + try { + + + //logMsg("datastore"+dataStore); + logMsg("service"+service); + if(null != service){ + throw new Fault("WebServiceRefAnnotation test failed!"); + } + + } + catch (Exception e) { + throw new Fault("WebServiceRefAnnotation test failed: " + e, e); + } + } + + /** + * @testName: testDataSourceDefinitionAnnotation + * + * @assertion_ids: JavaEE:SPEC:323 + * + * @test_Strategy: + * + * We check that: + * + * - When the meta-data complete attribute is set to true,DataSourceDefinition annotation should be ignored + * - as it is one of the annotations to which metadat-complete is applicable. + * + */ + public void testDataSourceDefinitionAnnotation() throws Fault { + + try { + + + //logMsg("datastore"+dataStore); + //logMsg("service"+service); + //Object dataSource = + //nctx.lookup("java:global/MyApp/MyDataSource"); + if(dataSource != null){ + throw new Fault("DataSourceDefinition test failed!"); + } + } + catch (Exception e) { + throw new Fault("DataSourceDefinition test failed: " + e, e); + } + } + + /** + * @testName: testJMSConnectionFactoryDefinitionAnnotation + * + * @assertion_ids: JavaEE:SPEC:323 + * + * @test_Strategy: + * + * We check that: + * + * - When the meta-data complete attribute is set to true,JMSConnectionFactoryDefinition annotation should be ignored + * - as it is one of the annotations to which metadat-complete is applicable. + * + */ + public void testJMSConnectionFactoryDefinitionAnnotation() throws Fault { + + try { + + + //logMsg("datastore"+dataStore); + //logMsg("service"+service); + //Object connFactory = + //nctx.lookup("java:global/JSPMyTestConnectionFactory"); + logMsg("connFactory"+connFactory); + if(connFactory != null){ + throw new Fault("JMSConnectionFactoryDefinition test failed!"); + } + } + catch (Exception e) { + throw new Fault("JMSConnectionFactoryDefinition test failed: " + e, e); + } + } + + /** + * @testName: testJMSDestinationDefinitionAnnotation + * + * @assertion_ids: JavaEE:SPEC:323 + * + * @test_Strategy: + * + * We check that: + * + * - When the meta-data complete attribute is set to true,JMSDestinationDefinition annotation should be ignored + * - as it is one of the annotations to which metadat-complete is applicable. + * + */ + public void testJMSDestinationDefinitionAnnotation() throws Fault { + + try { + + + //logMsg("datastore"+dataStore); + //logMsg("service"+service); + //Object destination = + //nctx.lookup("java:app/jms/myappTopic"); + logMsg("destination"+destination); + if(destination != null){ + throw new Fault("JMSDestinationDefinition test failed!"); + } + } + catch (Exception e) { + throw new Fault("JMSDestinationDefinition test failed: " + e, e); + } + } + + /** + * @testName: testConnectionFactoryDefinitionAnnotation + * + * @assertion_ids: JavaEE:SPEC:323 + * + * @test_Strategy: + * + * We check that: + * + * - When the meta-data complete attribute is set to true,ConnectionFactoryDefinition annotation should be ignored + * - as it is one of the annotations to which metadat-complete is applicable. + * + */ + public void testConnectionFactoryDefinitionAnnotation() throws Fault { + + try { + + + //logMsg("datastore"+dataStore); + //logMsg("service"+service); + logMsg("testFac"+testFac); + if(testFac != null){ + throw new Fault("ConnectionFactoryDefinition test failed!"); + } + } + catch (Exception e) { + throw new Fault("ConnectionFactoryDefinition test failed: " + e, e); + } + } + + /** + * @testName: testAdministeredObjectDefinitionAnnotation + * + * @assertion_ids: JavaEE:SPEC:323 + * + * @test_Strategy: + * + * We check that: + * + * - When the meta-data complete attribute is set to true,AdministeredObjectDefinition annotation should be ignored + * - as it is one of the annotations to which metadat-complete is applicable. + * + */ + public void testAdministeredObjectDefinitionAnnotation() throws Fault { + + try { + + + //logMsg("datastore"+dataStore); + //logMsg("service"+service); + logMsg("testQueue"+testQueue); + if(testFac != null){ + throw new Fault("AdministeredObjectDefinition test failed!"); + } + } + catch (Exception e) { + throw new Fault("AdministeredObjectDefinition test failed: " + e, e); + } + } + + /** + * @testName: testPersistenceUnitDefinitionAnnotation + * + * @assertion_ids: JavaEE:SPEC:323 + * + * @test_Strategy: + * + * We check that: + * + * - When the meta-data complete attribute is set to true,PersistenceUnitDefinition annotation should be ignored + * - as it is one of the annotations to which metadat-complete is applicable. + * + */ + public void testPersistenceUnitDefinitionAnnotation() throws Fault { + + try { + + + //logMsg("datastore"+dataStore); + //logMsg("service"+service); + logMsg("emf"+emf); + if(emf != null){ + throw new Fault("PersistenceUnitDefinition test failed!"); + } + } + catch (Exception e) { + throw new Fault("PersistenceUnitDefinition test failed: " + e, e); + } + } + + + public void cleanup() throws Fault { + logMsg("[Client] cleanup()"); + } + + +} diff --git a/appclient/src/main/java/com/sun/ts/tests/appclient/deploy/metadatacomplete/testapp/files/TestBean.java.src b/appclient/src/main/java/com/sun/ts/tests/appclient/deploy/metadatacomplete/testapp/files/TestBean.java.src new file mode 100644 index 0000000000..92bdd4ffde --- /dev/null +++ b/appclient/src/main/java/com/sun/ts/tests/appclient/deploy/metadatacomplete/testapp/files/TestBean.java.src @@ -0,0 +1,53 @@ +/* + * Copyright (c) 2017, 2020 Oracle and/or its affiliates. All rights reserved. + * + * This program and the accompanying materials are made available under the + * terms of the Eclipse Public License v. 2.0, which is available at + * http://www.eclipse.org/legal/epl-2.0. + * + * This Source Code may also be made available under the following Secondary + * Licenses when the conditions for such availability set forth in the + * Eclipse Public License v. 2.0 are satisfied: GNU General Public License, + * version 2 with the GNU Classpath Exception, which is available at + * https://www.gnu.org/software/classpath/license.html. + * + * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0 + */ + +package com.sun.ts.tests.appclient.deploy.metadatacomplete.testapp; + +import jakarta.annotation.ManagedBean; +import jakarta.annotation.PostConstruct; +import jakarta.annotation.PreDestroy; +import jakarta.resource.ConnectionFactoryDefinition; +import jakarta.resource.AdministeredObjectDefinition; + +@ConnectionFactoryDefinition( + name = "java:app/jms/TestConnectionFactory", + description = "application scoped jms connector resource definition", + interfaceName = "jakarta.jms.ConnectionFactory", + resourceAdapter="@raname@" +) +@AdministeredObjectDefinition( + name = "java:app/jms/TestQ", + description = "application scoped AdminObjectDefinition", + interfaceName = "jakarta.jms.Queue", + className = "com.sun.messaging.Queue", + resourceAdapter="@raname@") +@ManagedBean("mybean") +public class TestBean { + + public TestBean() { + System.out.println("TestBean : Constructor"); + } + + @PostConstruct + public void postConstruct() { + System.out.println("TestBean : postConstruct"); + } + + @PreDestroy + public void preDestroy() { + System.out.println("TestBean : preDestroy"); + } +} diff --git a/appclient/src/main/java/com/sun/ts/tests/appclient/deploy/metadatacomplete/testapp/persistence.xml b/appclient/src/main/java/com/sun/ts/tests/appclient/deploy/metadatacomplete/testapp/persistence.xml new file mode 100644 index 0000000000..75b0cd9f91 --- /dev/null +++ b/appclient/src/main/java/com/sun/ts/tests/appclient/deploy/metadatacomplete/testapp/persistence.xml @@ -0,0 +1,28 @@ + + + + + + jdbc/DB_no_tx + + diff --git a/appclient/src/main/java/com/sun/ts/tests/appclient/deploy/metadatacomplete/testapp/sun-application-client.xml b/appclient/src/main/java/com/sun/ts/tests/appclient/deploy/metadatacomplete/testapp/sun-application-client.xml new file mode 100644 index 0000000000..0f6e979542 --- /dev/null +++ b/appclient/src/main/java/com/sun/ts/tests/appclient/deploy/metadatacomplete/testapp/sun-application-client.xml @@ -0,0 +1,26 @@ + + + + + + + + diff --git a/appclient/src/main/java/com/sun/ts/tests/appclient/deploy/resref/casesens/Client.java b/appclient/src/main/java/com/sun/ts/tests/appclient/deploy/resref/casesens/Client.java index dac9a6cde8..3413ecc395 100644 --- a/appclient/src/main/java/com/sun/ts/tests/appclient/deploy/resref/casesens/Client.java +++ b/appclient/src/main/java/com/sun/ts/tests/appclient/deploy/resref/casesens/Client.java @@ -20,14 +20,32 @@ package com.sun.ts.tests.appclient.deploy.resref.casesens; +import java.io.IOException; +import java.net.URL; import java.util.Properties; -import com.sun.ts.lib.harness.Status; +import org.jboss.arquillian.container.test.api.Deployment; +import org.jboss.arquillian.container.test.api.OverProtocol; +import org.jboss.arquillian.container.test.api.TargetsContainer; +import org.jboss.arquillian.junit5.ArquillianExtension; +import org.jboss.arquillian.test.api.ArquillianResource; +import org.jboss.shrinkwrap.api.ShrinkWrap; +import org.jboss.shrinkwrap.api.asset.StringAsset; +import org.jboss.shrinkwrap.api.spec.EnterpriseArchive; +import org.jboss.shrinkwrap.api.spec.JavaArchive; +import org.junit.jupiter.api.Test; +import org.junit.jupiter.api.extension.ExtendWith; + import com.sun.ts.lib.harness.EETest; +import com.sun.ts.lib.harness.Status; import com.sun.ts.lib.util.TSNamingContext; import com.sun.ts.lib.util.TestUtil; import com.sun.ts.tests.assembly.util.shared.resref.casesens.TestCode; +import tck.arquillian.porting.lib.spi.TestArchiveProcessor; + + +@ExtendWith(ArquillianExtension.class) public class Client extends EETest { private Properties props = null; @@ -39,6 +57,40 @@ public static void main(String[] args) { Status s = theTests.run(args, System.out, System.err); s.exit(); } + + @TargetsContainer("tck-javatest") + @OverProtocol("javatest") + + @Deployment(testable = false) + public static EnterpriseArchive createDeployment(@ArquillianResource TestArchiveProcessor archiveProcessor) + throws IOException { + JavaArchive ejbClient = ShrinkWrap.create(JavaArchive.class, "appclient_dep_resref_casesens_client.jar"); + ejbClient.addClasses(Client.class, TestCode.class); + ejbClient.addPackages(true, "com.sun.ts.lib.harness"); + + // The appclient-client descriptor + URL appClientUrl = Client.class.getResource( + "/com/sun/ts/tests/appclient/deploy/resref/casesens/appclient_dep_resref_casesens_client.xml"); + if (appClientUrl != null) { + ejbClient.addAsManifestResource(appClientUrl, "application-client.xml"); + } + // The sun appclient-client descriptor + URL sunAppClientUrl = Client.class.getResource( + "/com/sun/ts/tests/appclient/deploy/resref/casesens/appclient_dep_resref_casesens_client.jar.sun-application-client.xml"); + if (sunAppClientUrl != null) { + ejbClient.addAsManifestResource(sunAppClientUrl, "sun-application-client.xml"); + } + + ejbClient.addAsManifestResource( + new StringAsset("Main-Class: " + "com.sun.ts.tests.appclient.deploy.resref.casesens.Client" + "\n"), + "MANIFEST.MF"); + + + EnterpriseArchive ear = ShrinkWrap.create(EnterpriseArchive.class, "appclient_dep_resref_casesens.ear"); + ear.addAsModule(ejbClient); + return ear; + }; + /** * @class.setup_props: org.omg.CORBA.ORBClass; java.naming.factory.initial; @@ -71,6 +123,7 @@ public void setup(String[] args, Properties props) throws Exception { * This validates that the resource references were resolved * correctly. */ + @Test public void testCaseSensitivity() throws Exception { boolean pass; diff --git a/appclient/src/main/java/com/sun/ts/tests/appclient/deploy/resref/scope/Client.java b/appclient/src/main/java/com/sun/ts/tests/appclient/deploy/resref/scope/Client.java index 04508d859c..1b61f4274f 100644 --- a/appclient/src/main/java/com/sun/ts/tests/appclient/deploy/resref/scope/Client.java +++ b/appclient/src/main/java/com/sun/ts/tests/appclient/deploy/resref/scope/Client.java @@ -20,13 +20,31 @@ package com.sun.ts.tests.appclient.deploy.resref.scope; +import java.io.IOException; +import java.net.URL; import java.util.Properties; -import com.sun.ts.lib.harness.Status; +import org.jboss.arquillian.container.test.api.Deployment; +import org.jboss.arquillian.container.test.api.OverProtocol; +import org.jboss.arquillian.container.test.api.TargetsContainer; +import org.jboss.arquillian.junit5.ArquillianExtension; +import org.jboss.arquillian.test.api.ArquillianResource; +import org.jboss.shrinkwrap.api.ShrinkWrap; +import org.jboss.shrinkwrap.api.asset.StringAsset; +import org.jboss.shrinkwrap.api.spec.EnterpriseArchive; +import org.jboss.shrinkwrap.api.spec.JavaArchive; +import org.junit.jupiter.api.Test; +import org.junit.jupiter.api.extension.ExtendWith; + import com.sun.ts.lib.harness.EETest; +import com.sun.ts.lib.harness.Status; import com.sun.ts.lib.util.TSNamingContext; import com.sun.ts.tests.assembly.util.shared.resref.scope.QueueCode; +import com.sun.ts.tests.assembly.util.shared.resref.scope.TopicCode; + +import tck.arquillian.porting.lib.spi.TestArchiveProcessor; +@ExtendWith(ArquillianExtension.class) public class Client extends EETest { private TSNamingContext nctx = null; @@ -38,6 +56,65 @@ public static void main(String[] args) { Status s = theTests.run(args, System.out, System.err); s.exit(); } + + @TargetsContainer("tck-javatest") + @OverProtocol("javatest") + + @Deployment(testable = false) + public static EnterpriseArchive createDeployment(@ArquillianResource TestArchiveProcessor archiveProcessor) + throws IOException { + JavaArchive ejbClient1 = ShrinkWrap.create(JavaArchive.class, "appclient_dep_resref_scope_another_client.jar"); + ejbClient1.addPackages(true, Client.class.getPackage()); + ejbClient1.addPackages(true, "com.sun.ts.lib.harness"); + ejbClient1.addClasses(Client.class, QueueCode.class, TopicCode.class); + + // The appclient-client descriptor + URL appClientUrl = Client.class.getResource( + "com/sun/ts/tests/appclient/deploy/resref/scope/appclient_dep_resref_scope_another_client.xml"); + if (appClientUrl != null) { + ejbClient1.addAsManifestResource(appClientUrl, "application-client.xml"); + } + // The sun appclient-client descriptor + URL sunAppClientUrl = Client.class.getResource( + "/com/sun/ts/tests/appclient/deploy/resref/scope/appclient_dep_resref_scope_another_client.jar.sun-application-client.xml"); + if (sunAppClientUrl != null) { + ejbClient1.addAsManifestResource(sunAppClientUrl, "sun-application-client.xml"); + } + + ejbClient1.addAsManifestResource( + new StringAsset("Main-Class: " + "com.sun.ts.tests.appclient.deploy.resref.scope.Client" + "\n"), + "MANIFEST.MF"); + + + JavaArchive ejbClient2 = ShrinkWrap.create(JavaArchive.class, "appclient_dep_resref_scope_client.jar"); + ejbClient2.addPackages(true, "com.sun.ts.lib.harness"); + ejbClient2.addClasses(Client.class, QueueCode.class); + + URL resURL = Client.class.getResource( + "/com/sun/ts/tests/appclient/deploy/resref/scope/appclient_dep_resref_scope_client.xml"); + + if (resURL != null) { + ejbClient2.addAsManifestResource(resURL, "ejb-jar.xml"); + } + + resURL = Client.class.getResource( + "/com/sun/ts/tests/appclient/deploy/resref/scope/appclient_dep_resref_scope_client.jar.sun-application-client.xml"); + + if (resURL != null) { + ejbClient2.addAsManifestResource(resURL, "sun-ejb-jar.xml"); + } + + ejbClient2.addAsManifestResource( + new StringAsset("Main-Class: " + "com.sun.ts.tests.appclient.deploy.resref.scope.Client" + "\n"), + "MANIFEST.MF"); + + + EnterpriseArchive ear = ShrinkWrap.create(EnterpriseArchive.class, "appclient_dep_resref_scope.ear"); + ear.addAsModule(ejbClient1); + ear.addAsModule(ejbClient2); + return ear; + }; + /* * @class.setup_props: org.omg.CORBA.ORBClass; java.naming.factory.initial; @@ -78,6 +155,7 @@ public void setup(String[] args, Properties props) throws Exception { * manager connection factories reference. * */ + @Test public void testScope() throws Exception { boolean pass; diff --git a/appclient/src/main/java/com/sun/ts/tests/appclient/deploy/resref/scope/TopicClient.java b/appclient/src/main/java/com/sun/ts/tests/appclient/deploy/resref/scope/TopicClient.java index 5d7b4d91eb..edc3132a12 100644 --- a/appclient/src/main/java/com/sun/ts/tests/appclient/deploy/resref/scope/TopicClient.java +++ b/appclient/src/main/java/com/sun/ts/tests/appclient/deploy/resref/scope/TopicClient.java @@ -22,8 +22,8 @@ import java.util.Properties; -import com.sun.ts.lib.harness.Status; import com.sun.ts.lib.harness.EETest; +import com.sun.ts.lib.harness.Status; import com.sun.ts.lib.util.TSNamingContext; import com.sun.ts.tests.assembly.util.shared.resref.scope.TopicCode; diff --git a/appclient/src/main/java/com/sun/ts/tests/appclient/deploy/resref/single/Client.java b/appclient/src/main/java/com/sun/ts/tests/appclient/deploy/resref/single/Client.java index 61a187188d..a16d818881 100644 --- a/appclient/src/main/java/com/sun/ts/tests/appclient/deploy/resref/single/Client.java +++ b/appclient/src/main/java/com/sun/ts/tests/appclient/deploy/resref/single/Client.java @@ -20,168 +20,248 @@ package com.sun.ts.tests.appclient.deploy.resref.single; +import java.io.IOException; +import java.io.InputStream; +import java.net.URL; import java.util.Properties; -import com.sun.ts.lib.harness.Status; +import org.jboss.arquillian.container.test.api.Deployment; +import org.jboss.arquillian.container.test.api.OverProtocol; +import org.jboss.arquillian.container.test.api.TargetsContainer; +import org.jboss.arquillian.junit5.ArquillianExtension; +import org.jboss.arquillian.test.api.ArquillianResource; +import org.jboss.shrinkwrap.api.ShrinkWrap; +import org.jboss.shrinkwrap.api.asset.ByteArrayAsset; +import org.jboss.shrinkwrap.api.spec.EnterpriseArchive; +import org.jboss.shrinkwrap.api.spec.JavaArchive; +import org.jboss.shrinkwrap.api.spec.WebArchive; +import org.junit.jupiter.api.Test; +import org.junit.jupiter.api.extension.ExtendWith; +import org.jboss.shrinkwrap.api.asset.StringAsset; import com.sun.ts.lib.harness.EETest; +import com.sun.ts.lib.harness.Status; import com.sun.ts.lib.util.TSNamingContext; import com.sun.ts.lib.util.TestUtil; import com.sun.ts.tests.assembly.util.shared.resref.single.appclient.TestCode; +import tck.arquillian.porting.lib.spi.TestArchiveProcessor; + +@ExtendWith(ArquillianExtension.class) public class Client extends EETest { - private Properties props = null; - - private TSNamingContext nctx = null; - - public static void main(String[] args) { - Client theTests = new Client(); - Status s = theTests.run(args, System.out, System.err); - s.exit(); - } - - /** - * @class.setup_props: org.omg.CORBA.ORBClass; java.naming.factory.initial; - * webServerHost; webServerPort; - */ - public void setup(String[] args, Properties props) throws Exception { - this.props = props; - - try { - nctx = new TSNamingContext(); - } catch (Exception e) { - throw new Exception("Setup failed:", e); - } - } - - /** - * @testName: testDatasource - * - * @assertion_ids: JavaEE:SPEC:10125 - * - * @test_Strategy: Package an application client declaring a resource - * reference for a javax.sql.Datasource. - * - * Check that: - We can deploy the application. - We can - * lookup the datasource. - We can use it to open a DB - * connection. - */ - public void testDatasource() throws Exception { - boolean pass; - - try { - pass = TestCode.testDatasource(nctx); - if (!pass) { - throw new Exception("Datasource res-ref test failed!"); - } - } catch (Exception e) { - TestUtil.logErr("[Client] Caught exception: " + e); - throw new Exception("Datasource res-ref test failed!", e); - } - } - - /** - * @testName: testURL - * - * @assertion_ids: JavaEE:SPEC:10125 - * - * @test_Strategy: Package an application client declaring a resource - * reference for a java.net.URL. - * - * Check that: - We can deploy the application. - We can - * lookup the URL. - We can use this URL factory to open a - * connection to a HTML page bundled in the application. - */ - public void testURL() throws Exception { - boolean pass; - - try { - pass = TestCode.testURL(nctx); - if (!pass) { - throw new Exception("URL res-ref test failed!"); - } - } catch (Exception e) { - TestUtil.logErr("[Client] Caught exception: " + e); - throw new Exception("URL res-ref test failed!", e); - } - } - - /** - * @testName: testQueue - * - * @assertion_ids: JavaEE:SPEC:10125 - * - * @test_Strategy: Package an application client declaring a resource - * reference for a jakarta.jms.QueueConnectionFactory. - * - * Check that: - We can deploy the application. - We can - * lookup the JMS Queue Connection Factory. - */ - public void testQueue() throws Exception { - boolean pass; - - try { - pass = TestCode.testQueue(nctx); - if (!pass) { - throw new Exception("Queue res-ref test failed!"); - } - } catch (Exception e) { - TestUtil.logErr("[Client] Caught exception: " + e); - throw new Exception("Queue res-ref test failed!", e); - } - } - - /** - * @testName: testTopic - * - * @assertion_ids: JavaEE:SPEC:10125 - * - * @test_Strategy: Package an application client declaring a resource - * reference for a jakarta.jms.TopicConnectionFactory. - * - * Check that: - We can deploy the application. - We can - * lookup the JMS Topic Connection Factory. - */ - public void testTopic() throws Exception { - boolean pass; - - try { - pass = TestCode.testTopic(nctx); - if (!pass) { - throw new Exception("Topic res-ref test failed!"); - } - } catch (Exception e) { - TestUtil.logErr("[Client] Caught exception: " + e); - throw new Exception("Topic res-ref test failed!", e); - } - } - - /** - * @testName: testAll - * - * @assertion_ids: JavaEE:SPEC:10125 - * - * @test_Strategy: Package an application client declaring a resource - * reference for all the standard resource manager connection - * factory types. - * - * Check that: - We can deploy the application. - We can - * lookup all the declared resource factories. - */ - public void testAll() throws Exception { - try { - testDatasource(); - testURL(); - testQueue(); - testTopic(); - } catch (Exception e) { - TestUtil.logErr("[Client] Caught exception: " + e); - throw new Exception("All res-ref test failed!", e); - } - } - - public void cleanup() { - logTrace("[Client] cleanup()"); - } + private Properties props = null; + + private TSNamingContext nctx = null; + + public static void main(String[] args) { + Client theTests = new Client(); + Status s = theTests.run(args, System.out, System.err); + s.exit(); + } + + + @TargetsContainer("tck-javatest") + @OverProtocol("javatest") + @Deployment(testable = false) + public static EnterpriseArchive createDeployment(@ArquillianResource TestArchiveProcessor archiveProcessor) + throws IOException { + + EnterpriseArchive ear = null; + + try { + + JavaArchive ejbClient = ShrinkWrap.create(JavaArchive.class, "appclient_dep_resref_single_client.jar"); + ejbClient.addPackages(true, Client.class.getPackage()); + ejbClient.addPackages(true, "com.sun.ts.lib.harness"); + ejbClient.addClasses(TestCode.class, Client.class); + + // The appclient-client descriptor + URL appClientUrl = Client.class.getResource( + "/com/sun/ts/tests/appclient/deploy/resref/single/appclient_dep_resref_single_client.xml"); + if (appClientUrl != null) { + ejbClient.addAsManifestResource(appClientUrl, "application-client.xml"); + } + // The sun appclient-client descriptor + URL sunAppClientUrl = Client.class.getResource( + "/com/sun/ts/tests/appclient/deploy/resref/single/appclient_dep_resref_single_client.jar.sun-application-client.xml"); + if (sunAppClientUrl != null) { + ejbClient.addAsManifestResource(sunAppClientUrl, "sun-application-client.xml"); + } + + ejbClient.addAsManifestResource( + new StringAsset("Main-Class: " + "com.sun.ts.tests.appclient.deploy.resref.single.Client" + "\n"), + "MANIFEST.MF"); + WebArchive webArchive = ShrinkWrap.create(WebArchive.class, "appclient_dep_resref_single_jsp_web.war"); + InputStream testJSP = Thread.currentThread().getContextClassLoader() + .getResourceAsStream("com/sun/ts/tests/appclient/deploy/resref/single/contentRoot/test.jsp"); + webArchive.add(new ByteArrayAsset(testJSP), "test.jsp"); + + // The jsp descriptor + URL jspUrl = Client.class.getResource("appclient_dep_resref_single_jsp_web.xml"); + if(jspUrl != null) { + webArchive.addAsWebInfResource(jspUrl, "web.xml"); + } + + ear = ShrinkWrap.create(EnterpriseArchive.class, "appclient_dep_resref_single.ear"); + ear.addAsModule(ejbClient); + ear.addAsModule(webArchive); + }catch(Exception e) { + e.printStackTrace(); + } + return ear; + }; + + /** + * @class.setup_props: org.omg.CORBA.ORBClass; java.naming.factory.initial; + * webServerHost; webServerPort; + */ + public void setup(String[] args, Properties props) throws Exception { + this.props = props; + + try { + nctx = new TSNamingContext(); + } catch (Exception e) { + throw new Exception("Setup failed:", e); + } + } + + /** + * @testName: testDatasource + * + * @assertion_ids: JavaEE:SPEC:10125 + * + * @test_Strategy: Package an application client declaring a resource reference + * for a javax.sql.Datasource. + * + * Check that: - We can deploy the application. - We can lookup + * the datasource. - We can use it to open a DB connection. + */ + @Test + public void testDatasource() throws Exception { + boolean pass; + + try { + pass = TestCode.testDatasource(nctx); + if (!pass) { + throw new Exception("Datasource res-ref test failed!"); + } + } catch (Exception e) { + e.printStackTrace(); + TestUtil.logErr("[Client] Caught exception: " + e); + throw new Exception("Datasource res-ref test failed!", e); + } + } + + /** + * @testName: testURL + * + * @assertion_ids: JavaEE:SPEC:10125 + * + * @test_Strategy: Package an application client declaring a resource reference + * for a java.net.URL. + * + * Check that: - We can deploy the application. - We can lookup + * the URL. - We can use this URL factory to open a connection + * to a HTML page bundled in the application. + */ + @Test + public void testURL() throws Exception { + boolean pass; + + try { + pass = TestCode.testURL(nctx); + if (!pass) { + throw new Exception("URL res-ref test failed!"); + } + } catch (Exception e) { + e.printStackTrace(); + TestUtil.logErr("[Client] Caught exception: " + e); + throw new Exception("URL res-ref test failed!", e); + } + } + + /** + * @testName: testQueue + * + * @assertion_ids: JavaEE:SPEC:10125 + * + * @test_Strategy: Package an application client declaring a resource reference + * for a jakarta.jms.QueueConnectionFactory. + * + * Check that: - We can deploy the application. - We can lookup + * the JMS Queue Connection Factory. + */ + @Test + public void testQueue() throws Exception { + boolean pass; + + try { + pass = TestCode.testQueue(nctx); + if (!pass) { + throw new Exception("Queue res-ref test failed!"); + } + } catch (Exception e) { + e.printStackTrace(); + TestUtil.logErr("[Client] Caught exception: " + e); + throw new Exception("Queue res-ref test failed!", e); + } + } + + /** + * @testName: testTopic + * + * @assertion_ids: JavaEE:SPEC:10125 + * + * @test_Strategy: Package an application client declaring a resource reference + * for a jakarta.jms.TopicConnectionFactory. + * + * Check that: - We can deploy the application. - We can lookup + * the JMS Topic Connection Factory. + */ + @Test + public void testTopic() throws Exception { + boolean pass; + + try { + pass = TestCode.testTopic(nctx); + if (!pass) { + throw new Exception("Topic res-ref test failed!"); + } + } catch (Exception e) { + e.printStackTrace(); + TestUtil.logErr("[Client] Caught exception: " + e); + throw new Exception("Topic res-ref test failed!", e); + } + } + + /** + * @testName: testAll + * + * @assertion_ids: JavaEE:SPEC:10125 + * + * @test_Strategy: Package an application client declaring a resource reference + * for all the standard resource manager connection factory + * types. + * + * Check that: - We can deploy the application. - We can lookup + * all the declared resource factories. + */ + @Test + public void testAll() throws Exception { + try { + testDatasource(); + testURL(); + testQueue(); + testTopic(); + } catch (Exception e) { + e.printStackTrace(); + TestUtil.logErr("[Client] Caught exception: " + e); + throw new Exception("All res-ref test failed!", e); + } + } + + public void cleanup() { + logTrace("[Client] cleanup()"); + } } diff --git a/appclient/src/main/java/com/sun/ts/tests/appclient/deploy/resref/single/appclient_dep_resref_single_client.jar.sun-application-client.xml b/appclient/src/main/java/com/sun/ts/tests/appclient/deploy/resref/single/appclient_dep_resref_single_client.jar.sun-application-client.xml index c8cd65d6f1..4ee43dfce1 100644 --- a/appclient/src/main/java/com/sun/ts/tests/appclient/deploy/resref/single/appclient_dep_resref_single_client.jar.sun-application-client.xml +++ b/appclient/src/main/java/com/sun/ts/tests/appclient/deploy/resref/single/appclient_dep_resref_single_client.jar.sun-application-client.xml @@ -33,7 +33,7 @@ url/URL - http://webServerHost:webServerPort/appclient_dep_resref_single_jsp_web/test.jsp + http://localhost:8080/appclient_dep_resref_single_jsp_web/test.jsp jms/myQueueConnectionFactory diff --git a/assembly/src/main/java/com/sun/ts/tests/assembly/util/shared/ejbref/single/TestCode.java b/assembly/src/main/java/com/sun/ts/tests/assembly/util/shared/ejbref/single/TestCode.java index 7ddc6e4af3..c6da6a23ff 100644 --- a/assembly/src/main/java/com/sun/ts/tests/assembly/util/shared/ejbref/single/TestCode.java +++ b/assembly/src/main/java/com/sun/ts/tests/assembly/util/shared/ejbref/single/TestCode.java @@ -62,6 +62,7 @@ public static boolean testStatelessInternal(TSNamingContext nctx, pass = bean.isTestStatelessInternal(); } catch (Exception e) { + e.printStackTrace(); TestUtil.logErr("TestBean: Caught exception: " + e, e); pass = false; } @@ -83,6 +84,7 @@ public static boolean testStatelessExternal(TSNamingContext nctx, pass = true; } catch (Exception e) { + e.printStackTrace(); TestUtil.logErr( "TestBean: Exception in " + "testStatelessExternal(): " + e, e); pass = false; @@ -101,6 +103,7 @@ public static boolean testStatefulInternal(TSNamingContext nctx, pass = ssfInternalBeanRef1.isTestStatefulInternal(); } catch (Exception e) { + e.printStackTrace(); TestUtil.logErr("Caught exception: " + e, e); pass = false; } @@ -118,6 +121,7 @@ public static boolean testStatefulExternal(TSNamingContext nctx, StatefulExternal.class); pass = ssfExternalBeanRef1.isTestStatefulExternal(); } catch (Exception e) { + e.printStackTrace(); TestUtil.logErr("TestBean: Got exception: " + e, e); pass = false; } diff --git a/glassfish-runner/appclient-platform-tck/jakartaeetck/bin/certificates/clientcert.jks b/glassfish-runner/appclient-platform-tck/jakartaeetck/bin/certificates/clientcert.jks new file mode 100644 index 0000000000..09f5569c47 Binary files /dev/null and b/glassfish-runner/appclient-platform-tck/jakartaeetck/bin/certificates/clientcert.jks differ diff --git a/glassfish-runner/appclient-platform-tck/jakartaeetck/bin/certificates/clientcert.p12 b/glassfish-runner/appclient-platform-tck/jakartaeetck/bin/certificates/clientcert.p12 new file mode 100644 index 0000000000..409e41e673 Binary files /dev/null and b/glassfish-runner/appclient-platform-tck/jakartaeetck/bin/certificates/clientcert.p12 differ diff --git a/glassfish-runner/appclient-platform-tck/jakartaeetck/bin/certificates/cts_cert b/glassfish-runner/appclient-platform-tck/jakartaeetck/bin/certificates/cts_cert new file mode 100644 index 0000000000..0c3863c852 Binary files /dev/null and b/glassfish-runner/appclient-platform-tck/jakartaeetck/bin/certificates/cts_cert differ diff --git a/glassfish-runner/appclient-platform-tck/jakartaeetck/bin/ts.jte b/glassfish-runner/appclient-platform-tck/jakartaeetck/bin/ts.jte new file mode 100644 index 0000000000..11ee73d42f --- /dev/null +++ b/glassfish-runner/appclient-platform-tck/jakartaeetck/bin/ts.jte @@ -0,0 +1,2462 @@ +# +# Copyright (c) 2006, 2022 Oracle and/or its affiliates and others. +# All rights reserved. +# +# This program and the accompanying materials are made available under the +# terms of the Eclipse Public License v. 2.0, which is available at +# http://www.eclipse.org/legal/epl-2.0. +# +# This Source Code may also be made available under the following Secondary +# Licenses when the conditions for such availability set forth in the +# Eclipse Public License v. 2.0 are satisfied: GNU General Public License, +# version 2 with the GNU Classpath Exception, which is available at +# https://www.gnu.org/software/classpath/license.html. +# +# SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0 +# + +######################################################################### +## +## JavaTest Environment file for Java EE Compatibility Test Suite +## +## Environment specific properties in this file will likely +## have to be modified prior to running the Java EE CTS. +## Instructions for modifying these properties are contained in this +## file. +## +## This file is processed by an external tool that helps generate the +## CTS documents. Therefore this file has a standard format that must +## be followed. This file is a standard Java Properties file with +## very specific comment formatting. Users can write property specific +## comments by using the property name and an ampersand (@). As an +## example the following comment applies to the foo.bar property: +## # @foo.bar - This is a comment pertaining to foo.bar +## # that spans multiple lines. +## This comment must be preceded by a single hash (#) character and +## the property name must be prepended with an ampersand (@). The +## comment can appear anywhere in the ts.jte file. If users have +## comments that belong in ts.jte but DO NOT pertain to a particular +## property the user must start the comment with at least 2 hash (#) +## characters. The following is a valid non-property comment: +## ## A valid non-property comment +## ## that spans multiple lines. +######################################################################### + +######################################################################### +## @jte.version This version denotes the bundle this JTE was +## originally included with. The version matches the ID +## in the bundle name. It can be used to identify a +## mismatched JTE file. This value is filled in during +## the build process as part of sanitizing the jte file. +######################################################################### +jte.version=@JTE_VERSION@ + +######################################################################## +## Javatest batch mode work directory and report directory, and policy for +## handling existing work and report directories. These properties affects +## runclient and report targets, but not gui target. +## To disable generating test report, unset report.dir, or set it to "none" +## either here or from command line, as in the following command: +## ant runclient -Dreport.dir="none" +## +# @work.dir The directory used to store Javatest test results and test +# information. +# @report.dir The directory used to store Javatest summary reports of +# test results. +# @if.existing.work.report.dirs specifies how existing work.dir and +# report.dir will be handled, and it must be one of the following values: +# overwrite overwrites all content in work.dir and report.dir +# backup moves all content in work.dir and report.dir to +# work.dir_time_day_bak and report.dir_time_day_bak, +# respectively +# append reuses and preserves the existing work.dir and report.dir +# auto lets the build files decide which mode to use +# (overwrite, backup or append). the value is determined +# like this: +# if.existing.work.report.dirs == auto +# if in CTS workspace +# if.existing.work.report.dirs = overwrite +# else we are in a distribution bundle +# if.existing.work.report.dirs = append +# end if +# else +# if.existing.work.report.dirs = value in this file +# end if +######################################################################## +work.dir=/home/jenkins/agent/workspace/jakartaee-tck_master/JTWork +report.dir=/home/jenkins/agent/workspace/jakartaee-tck_master/JTReport +if.existing.work.report.dirs=auto + +######################################################################## +# @javatest.timeout.factor This property specifies the scale factor used by +# Javatest to adjust the time JavaTest will wait for a given test to +# complete before returning failure. For instance if the default test timeout +# is 5 minutes, this value will be multiplied by 5 minutes to determine +# the total timeout delay. Note: this value only works with Javatest's +# batch mode (runclient). When using the Javatest GUI users must change +# this timeout factor in the GUI. Configure -> Edit Configuration -> View +# -> choose Standard Values -> select tab Execution -> set Time Factor. +# +# Note that javatest.timeout.factor can be a positive real number, such as 1.5 +######################################################################## +javatest.timeout.factor=1 + +######################################################################## +## Level of Vendor Java EE Implementation +# @javaee.level The level of Java EE support for the implementation under test. +# This property serves two purposes: First, it is used to determine +# whether the impl under test is a Java EE Full profile (full) or Java +# EE Web profile (web). Either "full" or "web" must be specified in +# the list values. "full" will tell the harness to deploy ears. "web" +# will tell the harness to deploy wars. +# This property is also used to help determine which apis (in the +# signature tests) are to be tested. +# +# NOTE: This property does not determine which CTS tests to run for +# different profiles and optional technologies. That is done using +# keywords. Please refer to the keywords functionality in the CTS +# User's Guide for information on how to use keywords when +# running CTS tests. +# +# Currently, there are 4 settings supported for this property: +# 1. full: This is the minimal set of signature requirements that vendors +# must support. Specifying a javaee.level of "full" with nothing +# else implies there are NO additional technologies existing within +# the vendors implementation. Again, "full" only covers the +# REQUIRED Technologies for Jakarta EE 8 Full profile +# ex/ javaee.level=full +# +# 2. web : This is the minimal set of signature requirements that vendors +# must support for Web Profile. Specifying a javaee.level of "web" +# with nothing else implies there are NO additional technologies +# existing within the vendors implementation. Again, "web" only +# covers REQUIRED Technologies for Jakarta EE 8 Web profile +# ex/ javaee.level=web +# +# 3. full + optional_technologies: This covers REQUIRED Technologies for +# Java EE 8 Full Profile and any combination of the optional +# technologies. +# Known optional technologies for CTS8 full profile include: +# "jaxr". +# ex 1/ javaee.level=full jaxr +# ex 2/ javaee.level=full jaxr +# ex 3/ javaee.level=full +# ex 4/ etc... +# +# 4. web + optional_technologies: This covers REQUIRED Technologies for +# Java EE 8 Web Profile and any combination of optional +# technologies. +# Known optional technologies for Web Profile include: +# "jaxr", "connector", "jaxb", +# "jms", "javamail", "jacc", "jaspic", "wsmd" +# ex 1/ javaee.level=web connector jms jacc +# ex 2/ javaee.level=web jaspic +# ex 3/ javaee.level=web jms connector +# ex 4/ etc... +# +# Note 1: spaces separate multiple entries +# +# Note 2: optional technologies for full/javaee profile are listed +# in the Java EE 8 spec, in Table EE.6-1. Currently, the only +# optional technologies for full profile are: "jaxr" (JAXR 1.0) +# +# Note 3: The list of optional technologies for Web Profile includes any OPTIONAL +# technology explicitly called out in the Web Profile spec (if applicable) +# as well as any additional technology which is listed within +# JavaEE Profile 8 spec *but* not included/Required in the +# Web Profile spec. +# +# Note 4: Two different examples of javaee.level are provided immediately +# following this comment block. One is for running CTS8 against +# the EE 8 (full) Profile RI and the other is for running CTS8 +# against the EE 8 Web Profile RI. Notice that optional technologies +# are supplied here since the RI for CTS8 contains those optional +# technologies in it. It's very possible vendors may provider different +# optional technologies in their implementations. If so, the list of +# optional technologies will need to be adjusted here to suite each +# vendors implementation. +# +# Note 5: For EE 8 (RI) Web Profile, you can uncomment and use the line +# below which starts with: javaee.level=web .... +# +# IMPORTANT: when testing Web Profile - be sure to adjust the +# "optional.tech.packages.to.ignore" property accordingly. +# (see comments for optional.tech.packages.to.ignore below) +# +############################################################################### +#javaee.level=web connector jaxws jaxb javamail jacc jaspic wsmd +javaee.level=full + + +######################################################################## +## Settings for Vendor Java EE Implementation +# @javaee.home The location of the vendor's Java EE platform +# implementation. +# @orb.host Hostname of the machine running the vendor's +# implementation. +# @orb.port The port number the vendor implementation is listening +# to for service requests. +######################################################################## +javaee.home= +orb.host=localhost +orb.port=3699 + +######################################################################## +## JVMOPTS_RUNTESTCOMMAND is a marker that implementations may replace with +# the JVM options to pass when starting JVMs for running tests. +# This is intended to be used for implementations convencience. +# See file docker/run_jakartaeetck.sh for an example. +######################################################################## + +######################################################################## +## Settings for Sun RI Java EE Implementation +# @javaee.home.ri The location of the RI. +# @orb.host Hostname of the machine running the RI. +# @orb.port The port number the RI is listening to for service +# requests. +######################################################################## +javaee.home.ri= +orb.host.ri=localhost +orb.port.ri=3700 + +################################################################### +################################################################### +################################################################### +## RI SPECIFIC PROPERTIES LIVE BELOW +################################################################### +################################################################### +################################################################### + +############################################################### +# @ts.display -- location to display CTS output on Unix +############################################################### +ts.display=:0.0 + +########################################################################### +# @endorsed.dirs using Java SE 6 or above and you provide newer versions +# of technologies than those contained in Java SE 6, verify +# that the property endorsed.dirs is set to the location of +# the VI api jars for those technologies you wish to +# override. For example, Java SE 6 contains an +# implementation of JAXWS 2.0 which will conflict with +# JAXWS 2.1, therefore this property would need to be set +# so that JAXWS 2.1 would be used during the building of +# tests and during test execution. +# +# @endorsed.dirs.ri If using Java SE 6 or above and you provide newer versions +# of technologies than those contained in Java SE 6, verify +# that the property endorsed.dirs is set to the location of +# the RI api jars for those technologies you wish to +# override. For example, Java SE 6 contains an +# implementation of JAXWS 2.0 which will conflict with +# JAXWS 2.1, therefore this property would need to be set +# so that JAXWS 2.1 would be used during the building of +# tests and during test execution. +########################################################################### +endorsed.dirs=${javaee.home}/modules/endorsed +endorsed.dirs.ri=${javaee.home.ri}/modules/endorsed + +############################################################### +## Config params needed for Java EE RI asadmin +## You must change these values as needed +## +# @ri.admin.user -- The Java EE RI asadmin user id +# @ri.admin.passwd -- The Java EE RI asadmin user password +# @ri.admin.host -- The Java EE RI host +# @ri.admin.port -- The Java EE RI port +# @ri.admin -- The Java EE RI admin command +# @ri.server -- The Java EE RI server instance being used +# @ri.domain.dir -- Points to where your domains are installed. +# @ri.domain.name -- The Java EE RI domain being used +# @ri.domain -- The Java EE RI domain path being used +# @ri.asenv.loc -- location of asenv.conf or asenv.bat +# @ri.imqbin.loc -- location of the IMQ bin directory +# @ri.lib -- Library directory for other Java EE RI +# jars +# @ri.imq.share.lib -- Shared library directory for imq +# @ri.jvm.options -- Java options needed by the Java EE RI +# note, the second option is not needed +# but is required to work around asadmin +# command line parsing issues. The +# xxxlogin and xxxpassword are used +# to set known server side creds for use +# with connector tests. +# @ri.applicationRoot-- Location of application repository +# Only needed when running on windows +# @ri.and.vi.run.on.same.host - set to true if interop tests are run +# with both RI and VI on same machine. set to +# false if they are run on different machines. +# This is used to work around an orb issue +# specific to running VI and RI on same box. +# +# @ri.orb.iiop.orbserverid - This is used to set a similarly +# named jvm option in the RI. It is only used +# when we are running interop where remote EJBs +# try to access target EJB's on the same host with +# zero port configuration for ssl. +# This only gets used when ri.and.vi.run.on.same.host=true. +# The value is to be an ORB server id. +############################################################### +ri.admin.user=admin +ri.admin.passwd= +ri.admin.host=${orb.host.ri} +ri.admin.port=4848 +ri.admin=${javaee.home.ri}/bin/asadmin +ri.server=server +ri.domain.dir=${javaee.home.ri}/domains +ri.domain.name=domain1 +ri.domain=${ri.domain.dir}/${ri.domain.name} +ri.asenv.loc=${javaee.home.ri}/config +ri.imqbin.loc=${javaee.home.ri}/../mq/bin +ri.lib=${javaee.home.ri}/lib +ri.log.file.location=${ri.domain}/logs +ri.modules=${javaee.home.ri}/modules +ri.imq.share.lib=${javaee.home.ri}/../mq/lib +ri.jvm.options=-Doracle.jdbc.J2EE13Compliant=true:-Xmx4096m:-Dj2eelogin.name=${user}:-Dj2eelogin.password=${password}:-Deislogin.name=${user1}:-Deislogin.password=${password1}:-Dtest.ejb.stateful.timeout.wait.seconds=${test.ejb.stateful.timeout.wait.seconds}:-DwebServerPort.2=${webServerPort.2}:-DwebServerHost.2=${webServerHost.2}:-Dcsiv2.save.log.file=${harness.log.traceflag}:-Djavax.xml.accessExternalStylesheet=all:-Djavax.xml.accessExternalDTD=file,http +ri.jvm.options.remove=-Xmx512m:${ri.jvm.options} +ri.java.endorsed.dirs=${endorsed.dirs.ri} +ri.applicationRoot=c: +ri.and.vi.run.on.same.host=true +ri.orb.iiop.orbserverid=200 + +############################################################### +## Config params needed for Java EE VI asadmin +## You must change these values as needed +## +# @vi.admin.user -- The Java EE VI asadmin user id +# @vi.admin.passwd -- The Java EE VI asadmin user password +# @vi.admin.host -- The Java EE VI host +# @vi.admin.port -- The Java EE VI port +# @vi.admin -- The Java EE VI admin command +# @vi.server -- The Java EE VI server instance being used +# @vi.domain.dir -- Points to where your domains are installed. +# @vi.domain.name -- The Java EE VI domain being used +# @vi.domain -- The Java EE VI domain path being used +# @vi.asenv.loc -- location of asenv.conf or asenv.bat +# @vi.imqbin.loc -- location of the IMQ bin directory +# @vi.lib -- Library directory for other Java EE VI +# jars +# @vi.imq.share.lib -- Shared library directory for imq +# @vi.jvm.options -- Java options needed by the Java EE VI +# note, the second option is not needed +# but is required to work around asadmin +# command line parsing issues. The +# xxxlogin and xxxpassword are used +# to set known server side creds for use +# with connector tests. +# @vi.applicationRoot-- Location of application repository +# Only needed when running on windows +############################################################### +vi.admin.user=admin +vi.admin.passwd= +vi.admin.host=${orb.host} +vi.admin.port=4848 +vi.admin=${javaee.home}/bin/asadmin +vi.server=server +vi.domain.dir=${javaee.home}/domains +vi.domain.name=domain1 +vi.domain=${vi.domain.dir}/${vi.domain.name} +vi.asenv.loc=${javaee.home}/config +vi.imqbin.loc=${javaee.home}/../mq/bin +vi.lib=${javaee.home}/server/lib +vi.log.file.location=${vi.domain}/logs +vi.modules=${javaee.home}/modules +vi.imq.share.lib=${javaee.home}/../mq/lib +vi.jvm.options=-Doracle.jdbc.J2EE13Compliant=true:-Xmx4096m:-Dj2eelogin.name=${user}:-Dj2eelogin.password=${password}:-Deislogin.name=${user1}:-Deislogin.password=${password1}:-Dtest.ejb.stateful.timeout.wait.seconds=${test.ejb.stateful.timeout.wait.seconds}:-DwebServerPort.2=${webServerPort.2}:-DwebServerHost.2=${webServerHost.2}:-Dcsiv2.save.log.file=${harness.log.traceflag}:-Djavax.xml.accessExternalStylesheet=all:-Djavax.xml.accessExternalDTD=file,http +vi.jvm.options.remove=-Xmx512m:${vi.jvm.options} +vi.java.endorsed.dirs=${endorsed.dirs} +vi.applicationRoot=c: + +############################################################### +## Config params needed for Sun Java System Application Server +## (SJSAS) asadmin. You must change these values as needed +## only if you are testing against SJSAS app server +## (javaee.home is pointing to SJSAS). +# +# @s1as.admin.user -- The SJSAS asadmin user id +# @s1as.admin.passwd -- The SJSAS asadmin user password +# @s1as.admin.host -- The SJSAS host +# @s1as.admin.port -- The SJSAS port +# @s1as.admin -- The SJSAS admin command +# @s1as.server -- The SJSAS server instance being used +# @s1as.domain.dir -- Points to where your domains are installed. +# @s1as.domain.name -- The SJSAS domain being used +# @s1as.domain -- The SJSAS domain path being used +# @s1as.asenv.loc -- location of asenv.conf or asenv.bat +# @s1as.imqbin.loc -- location of the IMQ bin directory +# @s1as.lib -- Library directory for other Java EE RI +# jars +# @s1as.imq.share.lib -- Shared library directory for imq +# @s1as.jvm.options -- Java options needed by SJSAS +# The xxxlogin and xxxpassword are used +# to set known server side creds for use +# with connector tests. +# @s1as.applicationRoot-- Location of application repository +# Only needed when running on windows +############################################################### +s1as.admin.user=admin +s1as.admin.passwd= +s1as.admin.host=${orb.host} +s1as.admin.port=4848 +s1as.admin=${javaee.home}/bin/asadmin +s1as.server=server +s1as.domain.dir=${javaee.home}/domains +s1as.domain.name=domain1 +s1as.domain=${s1as.domain.dir}/${s1as.domain.name} +s1as.asenv.loc=${javaee.home}/config +s1as.imqbin.loc=${javaee.home}/../mq/bin +s1as.lib=${javaee.home}/lib +s1as.modules=${javaee.home}/modules +s1as.imq.share.lib=${javaee.home}/../mq/lib +s1as.jvm.options=-Doracle.jdbc.J2EE13Compliant=true:-Xmx4096m:-Dj2eelogin.name=${user}:-Dj2eelogin.password=${password}:-Deislogin.name=${user1}:-Deislogin.password=${password1}:-Dtest.ejb.stateful.timeout.wait.seconds=${test.ejb.stateful.timeout.wait.seconds}:-DwebServerPort.2=${webServerPort.2}:-DwebServerHost.2=${webServerHost.2} +s1as.jvm.options.remove=-Xmx512m:${s1as.jvm.options} +s1as.java.endorsed.dirs=${endorsed.dirs} +s1as.applicationRoot=c: + +############################################################### +# @sjsas.das.orb.port -- ORB port number for the DAS +# @sjsas.das.orb.host -- ORB host name for the DAS +# @sjsas.das.webServerPort -- HTTP listener port for the DAS +# @sjsas.das.securedWebServicePort -- HTTPS listener port for the DAS +# @sjsas.nodeagent.name -- Name of node agent used by +# the remote instance. +# @sjsas.nodeinstance.name -- Name of the remote instance +# @sjsas.master.password -- Used to create a node agent only +# applicable to EE. Defaults to changeit. This +# can be changed at EE install time. +# @sjsas.instance.config.dir -- config directory used by the intsance +# being tested. +# For PE/DAS = config +# For remote instance = config +# @sjsas.cts.timer.resource -- Backend to use when we are using java2db with +# the CMP tests for the jdbc/DBTimer resource +# @sjsas.cmp.backend -- Backend to use when we are using java2db with +# the CMP tests +# @sjsas.node.agent.dir.name -- The name of the node agent directory to use. +# This value will be used on Windows only and +# ignored on non-Windows platforms. The default +# is 'n' meaning the create-node-agent command +# will pass the --agentdir argument with a value +# of ${s1as.applicationRoot}\${sjsas.node.agent.dir.name}. +# @sjsas.env.type -- CTS test configuration. Possible values are: +# das (for PE or DAS) +# remote (for remote intance) +# cluster (for cluster config not yet supported) +# @s1as.targets -- Instance(s) to deploy tests +# Supports multiple instances, For example: +# s1as.targets=server server-1 +############################################################### +sjsas.das.orb.port=3700 +sjsas.das.orb.host=${orb.host} +sjsas.das.webServerPort=8000 +sjsas.das.securedWebServicePort=1043 +sjsas.nodeagent.name=node-agent-1 +sjsas.nodeinstance.name=server-1 +sjsas.master.password=changeit +sjsas.instance.config.dir=config +sjsas.cts.timer.resource=derby +sjsas.cmp.backend=derby +sjsas.node.agent.dir.name=n + +sjsas.env.type=das +#sjsas.env.type=remote + +s1as.targets=${s1as.server} +#s1as.targets=${sjsas.nodeinstance.name} + +############################################################### +# @s1as.pe.jmsServer -- name of the JMS server the RI/PE +# @s1as.se.jmsServer -- name of the JMS server for SE/EE +############################################################### +s1as.pe.jmsServer=imqbroker +s1as.se.jmsServer=imqbroker +#s1as.se.jmsServer=${s1as.domain.name}_${s1as.server} + +############################################################### +# @extension.dir - The extension directory for the app +# server under test. This does not apply +# to the RI. +# +# Note: App server vendors will need to set this to their +# app server's extension directory. The CTS config.vi +# target will copy the CTS library jars to this location. +############################################################### +extension.dir=${s1as.domain}/lib + +############################################################### +# @instance.listenerName - Default value for the iiop listener +# for your instance. Users will +# most likely not need to change this. +############################################################### +instance.listenerName=orb-listener-1 + +############################################################### +# @tz - your local timezone. For valid values, consult your +# Operating System documentation. +############################################################### +tz=US/Eastern + +############################################################### +# @jdbc.lib.class.path - This property is used by the +# database.classes properties to point to +# where the JDBC drivers live. +############################################################### +jdbc.lib.class.path=${ts.home}/internal/lib + +############################################################### +## The following section is for CTS Database configuration +## For each database that you will test, configure the following: +## Here is an example using derby: Users will need to +## replace derby with the appropriate DB name. +# @derby.dbName -- Database Name +# @derby.server -- Database Server +# @derby.port -- Database Server port +# @derby.dml.file -- DML file used for CTS test cases +# @derby.user -- User Id configured +# @derby.passwd -- User password configured +# @derby.url -- URL to the cts database +# @derby.driver -- DriverManager driver +# @derby.classes -- CLASSPATH to JDBC driver classes +# @derby.poolName -- Name of pool configured in the Java EE +# RI (do not change!) +# @derby.dataSource -- DataSource driver +# @derby.properties -- Any additional JDBC driver required +# properties +# @derby.startup.delay-- delay to wait for DB to start + +############################################################### + +## +## Info for Cloudscape 10/Derby +## +derby.dbName=derbyDB +derby.server=${orb.host} +derby.port=1527 +derby.port.ri=1527 +derby.dml.file=derby/derby.dml.sql +derby.user=cts1 +derby.passwd=cts1 +derby.url=jdbc:derby://${derby.server}:${derby.port}/${derby.dbName};create=true +derby.driver=org.apache.derby.jdbc.ClientDriver +derby.home=${javaee.home}/../javadb +derby.system.home=${derby.home}/databases +derby.classpath=${ts.home}/lib/dbprocedures.jar${pathsep}${derby.home}/lib/derbynet.jar${pathsep}${derby.home}/lib/derbyshared.jar${pathsep}${derby.home}/lib/derbytools.jar +derby.classes=${derby.home}/lib/derbyclient.jar${pathsep}${derby.home}/lib/derbyshared.jar${pathsep}${derby.home}/lib/derbytools.jar +derby.poolName=cts-derby-pool +derby.dataSource=org.apache.derby.jdbc.ClientDataSource +derby.properties=DatabaseName\=\"${derby.dbName}\":user\=${derby.user}:password\=${derby.passwd}:serverName\=${derby.server}:portNumber=${derby.port} +derby.startup.delay=5 + +# +# Cloudscape 10 /Derby embedded driver +# +derbyEmbedded.dbName=/tmp/DerbyDB +derbyEmbedded.server=${orb.host} +derbyEmbedded.port=1527 +derbyEmbedded.dml.file=derby/derby.dml.sql +derbyEmbedded.user=cts1 +derbyEmbedded.passwd=cts1 +derbyEmbedded.url=jdbc:derby:${derbyEmbedded.dbName};create=true +derbyEmbedded.driver=org.apache.derby.jdbc.EmbeddedDriver +derbyEmbedded.classes=${javaee.home}/../javadb/lib/derby.jar${pathsep}${javaee.home}/../javadb/lib/derbyshared.jar${pathsep}${javaee.home}/../javadb/lib/derbytools.jar${pathsep}${ts.home}/lib/dbprocedures.jar +derbyEmbedded.poolName=cts-derbyEmbedded-pool +derbyEmbedded.dataSource=org.apache.derby.jdbc.EmbeddedDataSource +derbyEmbedded.pool.url='jdbc\\:derby\\:${derbyEmbedded.dbName}\\;create=true' +derbyEmbedded.properties=DatabaseName\=\"${derbyEmbedded.dbName}\":user\=${derbyEmbedded.user}:password\=${derbyEmbedded.passwd} + + +## +## Info for DB2 (8.1 type 2 driver) +## +db2.dbName=cts +db2.server=${orb.host} +db2.port=50000 +db2.dml.file=db2/db2.dml.sql +db2.user=db2inst1 +db2.passwd=ibmdb2 +db2.url=jdbc:db2:${db2.dbName} +db2.driver=com.ibm.db2.jcc.DB2Driver +db2.classes=${jdbc.lib.class.path}/db2jcc.jar:${jdbc.lib.class.path}/db2jcc_license_cu.jar:${jdbc.lib.class.path}/db2java.zip +db2.poolName=cts-db2-pool +db2.dataSource=com.ibm.db2.jcc.DB2SimpleDataSource +db2.properties=user=${db2.user}:password=${db2.passwd}:databaseName=${db2.dbName}:driverType=2:deferPrepares\=false + +## +## Info for db2 using the DataDirect driver +## +db2DD.dbName=cts +db2DD.server=${orb.host} +db2DD.port=50000 +db2DD.dml.file=db2/db2.dml.sql +db2DD.user=db2inst1 +db2DD.passwd=ibmdb2 +db2DD.url=jdbc:datadirect:db2://${db2DD.server}:${db2DD.port};DatabaseName\=${db2DD.dbName} +db2DD.driver=com.ddtek.jdbc.db2.DB2Driver +db2DD.classes=${jdbc.lib.class.path}/util.jar${pathsep}${jdbc.lib.class.path}/db2.jar${pathsep}${jdbc.lib.class.path}/base.jar +db2DD.poolName=cts-db2-DataDirect-pool +db2DD.dataSource=com.ddtek.jdbcx.db2.DB2DataSource +db2DD.properties=user\=${db2DD.user}:password\=${db2DD.passwd}:ServerName\=${db2DD.server}:portNumber\=${db2DD.port}:databasename\=${db2DD.dbName} + +## +## Info for db2 using the Sun driver +## +db2Sun.dbName=cts +db2Sun.server=${orb.host} +db2Sun.port=50000 +db2Sun.dml.file=db2/db2.dml.sql +db2Sun.user=db2inst1 +db2Sun.passwd=ibmdb2 +db2Sun.url=jdbc:sun:db2://${db2Sun.server}:${db2Sun.port};DatabaseName\=${db2Sun.dbName} +db2Sun.driver=com.sun.sql.jdbc.db2.DB2Driver +db2Sun.classes=${jdbc.lib.class.path}/smdb2.jar +db2Sun.poolName=cts-db2-Sun-pool +db2Sun.dataSource=com.sun.sql.jdbcx.db2.DB2DataSource +db2Sun.properties=user\=${db2Sun.user}:password\=${db2Sun.passwd}:ServerName\=${db2Sun.server}:portNumber\=${db2Sun.port}:databasename\=${db2Sun.dbName} + +## +## Info for Microsoft SQL Server +## +mssqlserver.dbName=cts +mssqlserver.server=${orb.host} +mssqlserver.port=1433 +mssqlserver.dml.file=mssqlserver/mssqlserver.dml.sql +mssqlserver.user=guest +mssqlserver.passwd=guest +mssqlserver.url=jdbc:microsoft:sqlserver://${mssqlserver.server}:${mssqlserver.port} +mssqlserver.driver=com.microsoft.sqlserver.jdbc.SQLServerDriver +mssqlserver.classes=${jdbc.lib.class.path}/sqljdbc.jar +mssqlserver.poolName=cts-mssqlserver-pool +mssqlserver.dataSource=com.microsoft.sqlserver.jdbc.SQLServerDataSource +mssqlserver.properties=user\=${mssqlserver.user}:password\=${mssqlserver.passwd}:ServerName\=${mssqlserver.server}:portNumber\=${mssqlserver.port} + + +## +## Info for Microsoft SQL Server using the DataDirect driver +## +mssqlserverDD.dbName=cts +mssqlserverDD.server=${orb.host} +mssqlserverDD.port=1433 +mssqlserverDD.dml.file=mssqlserver/mssqlserver.dml.sql +mssqlserverDD.user=guest +mssqlserverDD.passwd=guest +mssqlserverDD.url=jdbc:datadirect:sqlserver://${mssqlserverDD.server}:${mssqlserverDD.port} +mssqlserverDD.driver=com.ddtek.jdbc.sqlserver.SQLServerDriver +mssqlserverDD.classes=${jdbc.lib.class.path}/util.jar${pathsep}${jdbc.lib.class.path}/sqlserver.jar${pathsep}${jdbc.lib.class.path}/base.jar +mssqlserverDD.poolName=cts-mssqlserver-DataDirect-pool +mssqlserverDD.dataSource=com.ddtek.jdbcx.sqlserver.SQLServerDataSource +mssqlserverDD.properties=user\=${mssqlserverDD.user}:password\=${mssqlserverDD.passwd}:ServerName\=${mssqlserverDD.server}:portNumber\=${mssqlserverDD.port}:selectMethod\=cursor + +## +## Info for Microsoft SQL Server using the Inet driver +## +mssqlserverInet.dbName=cts1 +mssqlserverInet.server=${orb.host} +mssqlserverInet.port=1433 +mssqlserverInet.dml.file=mssqlserver/mssqlserver.dml.sql +mssqlserverInet.user=cts1 +mssqlserverInet.passwd=cts1 +mssqlserverInet.url=jdbc:inetdae7:${mssqlserverInet.server}:${mssqlserverInet.port} +mssqlserverInet.driver=com.inet.tds.TdsDriver +mssqlserverInet.classes=${jdbc.lib.class.path}/Merlia.jar +mssqlserverInet.poolName=cts-mssqlserver-Inet-pool +mssqlserverInet.dataSource=com.inet.tds.TdsDataSource +mssqlserverInet.properties=user\=${mssqlserverInet.user}:password\=${mssqlserverInet.passwd}:ServerName\=${mssqlserverInet.server}:port\=${mssqlserverInet.port} + +## +## Info for Microsoft SQL Server using the Sun driver +## +mssqlserverSun.dbName=cts +mssqlserverSun.server=${orb.host} +mssqlserverSun.port=1433 +mssqlserverSun.dml.file=mssqlserver/mssqlserver.dml.sql +mssqlserverSun.user=guest +mssqlserverSun.passwd=guest +mssqlserverSun.url=jdbc:sun:sqlserver://${mssqlserverSun.server}:${mssqlserverSun.port} +mssqlserverSun.driver=com.sun.sql.jdbc.sqlserver.SQLServerDriver +mssqlserverSun.classes=${jdbc.lib.class.path}/smsqlserver.jar +mssqlserverSun.poolName=cts-mssqlserver-Sun-pool +mssqlserverSun.dataSource=com.sun.sql.jdbcx.sqlserver.SQLServerDataSource +mssqlserverSun.properties=user\=${mssqlserverSun.user}:password\=${mssqlserverSun.passwd}:ServerName\=${mssqlserverSun.server}:portNumber\=${mssqlserverSun.port}:selectMethod\=cursor + +## +## Info for MYSQL driver +## +mysql.dbName=cts +mysql.server=${orb.host} +mysql.port=3306 +mysql.dml.file=mysql/mysql.dml.sql +mysql.user=cts1 +mysql.passwd=cts1 +mysql.url=jdbc:mysql://${mysql.server}:${mysql.port}/${mysql.dbName} +mysql.driver=com.mysql.jdbc.Driver +mysql.classes=${jdbc.lib.class.path}/mysql-connector-java-5.1.42-bin.jar +mysql.poolName=cts-mysql-pool +mysql.dataSource=com.mysql.jdbc.jdbc2.optional.MysqlDataSource +mysql.properties=user\=${mysql.user}:password\=${mysql.passwd}:DatabaseName\=${mysql.dbName}\:ServerName\=${mysql.server}\:port\=${mysql.port}\:jdbcCompliantTruncation\=false + +## +## Info for Oracle DataDirect +## +oracleDD.dbName=ora817 +oracleDD.server=${orb.host} +oracleDD.port=1521 +oracleDD.dml.file=oracle/oracle.dml.sql +oracleDD.user=la +oracleDD.passwd=la +oracleDD.url=jdbc:datadirect:oracle://${oracleDD.server};SID=${oracleDD.dbName} +oracleDD.driver=com.ddtek.jdbc.oracle.OracleDriver +oracleDD.classes=${jdbc.lib.class.path}/base.jar${pathsep}${jdbc.lib.class.path}/oracle.jar${pathsep}${jdbc.lib.class.path}/util.jar +oracleDD.poolName=cts-oracle-DataDirect-pool +oracleDD.dataSource=com.ddtek.jdbcx.oracle.OracleDataSource +oracleDD.properties=user\=${oracleDD.user}:password\=${oracleDD.passwd}:SID\="${oracleDD.dbName}":serverName=${oracleDD.server}:portNumber=${oracleDD.port} + +## +## Info for Oracle thin +## +oracle.dbName=cts +oracle.server=${orb.host} +oracle.port=1521 +oracle.dml.file=oracle/oracle.dml.sql +oracle.user=cts1 +oracle.passwd=cts1 +oracle.url=jdbc:oracle:thin:@${oracle.server}:${oracle.port}:${oracle.dbName} +oracle.driver=oracle.jdbc.OracleDriver +oracle.classes=${jdbc.lib.class.path}/ojdbc8.jar +oracle.poolName=cts-oracle-pool +oracle.dataSource=oracle.jdbc.pool.OracleDataSource +oracle.pool.url=jdbc\\:oracle\\:thin\\:@${oracle.server}\\:${oracle.port}\\:${oracle.dbName} +oracle.properties=user\=${oracle.user}:password\=${oracle.passwd}:URL\=\"${oracle.pool.url}\" + +# +# Info for Oracle oci driver +# +oracleOCI.dbName=cts1 +oracleOCI.server=${orb.host} +oracleOCI.port=1521 +oracleOCI.dml.file=oracle/oracle.dml.sql +oracleOCI.user=cts1 +oracleOCI.passwd=cts1 +oracleOCI.url=jdbc:oracle:oci:@${oracleOCI.dbName} +oracleOCI.driver=oracle.jdbc.OracleDriver +oracleOCI.classes=${jdbc.lib.class.path}/ojdbc8.jar +oracleOCI.poolName=cts-oracle-oci-pool +oracleOCI.dataSource=oracle.jdbc.pool.OracleDataSource +oracleOCI.pool.url=jdbc\\:oracle\\:oci\\:@${oracleOCI.dbName} +oracleOCI.properties=user\=${oracleOCI.user}:password\=${oracleOCI.passwd}:URL\=\"${oracleOCI.pool.url}\" + +## +## Info for Oracle inet +## +oracleInet.dbName=cts1 +oracleInet.server=${orb.host} +oracleInet.port=1521 +oracleInet.dml.file=oracle/oracle.dml.sql +oracleInet.user=cts1 +oracleInet.passwd=cts1 +oracleInet.url=jdbc:inetora:${oracleInet.server}:${oracleInet.port}:${oracleInet.dbName} +oracleInet.driver=com.inet.ora.OraDriver +oracleInet.classes=${jdbc.lib.class.path}/Oranxo.jar +oracleInet.poolName=cts-oracle-Inet-pool +oracleInet.dataSource=com.inet.ora.OraDataSource +oracleInet.properties=user\=${oracleInet.user}:password\=${oracleInet.passwd}:serviceName\="${oracleInet.dbName}":serverName=${oracleInet.server}:port=${oracleInet.port} + +## +## Info for Oracle Sun +## +oracleSun.dbName=ora817 +oracleSun.server=${orb.host} +oracleSun.port=1521 +oracleSun.dml.file=oracle/oracle.dml.sql +oracleSun.user=la +oracleSun.passwd=la +oracleSun.url=jdbc:sun:oracle://${oracleSun.server};SID=${oracleSun.dbName} +oracleSun.driver=com.sun.sql.jdbc.oracle.OracleDriver +oracleSun.classes=${jdbc.lib.class.path}/smoracle.jar +oracleSun.poolName=cts-oracle-Sun-pool +oracleSun.dataSource=com.sun.sql.jdbcx.oracle.OracleDataSource +oracleSun.properties=user\=${oracleSun.user}:password\=${oracleSun.passwd}:SID\="${oracleSun.dbName}":serverName=${oracleSun.server}:portNumber=${oracleSun.port} + +## +## Info for Pointbase +## +pointbase.dbName=cts +pointbase.server=${orb.host} +pointbase.port=9092 +pointbase.dml.file=pointbase/pointbase.dml.sql +pointbase.user=PBPUBLIC +pointbase.passwd=PBPUBLIC +pointbase.url=jdbc:pointbase:server://${pointbase.server}:${pointbase.port}/${pointbase.dbName},new +pointbase.driver=com.pointbase.jdbc.jdbcUniversalDriver +pointbase.classes=${jdbc.lib.class.path}/pbclient.jar${pathsep}${jdbc.lib.class.path}/pbembedded.jar +pointbase.poolName=cts-pointbase-pool +pointbase.dataSource=com.pointbase.jdbc.jdbcDataSource +pointbase.pool.url="jdbc\\:pointbase\\:server\\:\/\/${pointbase.server}\\:${pointbase.port}\/${pointbase.dbName},new" +pointbase.properties=user\=${pointbase.user}:password\=${pointbase.passwd}:DatabaseName\=\"${pointbase.pool.url}\" + +## +## Info for Postgres +## +postgresql.dbName=CTS5 +postgresql.server=${orb.host} +postgresql.port=5432 +postgresql.dml.file=postgresql/postgresql.dml.sql +postgresql.user=cts1 +postgresql.passwd=cts1 +postgresql.url=jdbc:postgresql://${postgresql.server}:${postgresql.port}/${postgresql.dbName} +postgresql.driver=org.postgresql.Driver +postgresql.classes=${jdbc.lib.class.path}/postgresql-8.4-701.jdbc4.jar +postgresql.poolName=cts-postgresql-pool +postgresql.pool.url="jdbc\\:postgresql\\:server\\:\/\/${postgresql.server}\\:${postgresql.port}\/${postgresql.dbName},new" +postgresql.dataSource=org.postgresql.ds.PGSimpleDataSource +postgresql.properties=user\=${postgresql.user}:password\=${postgresql.passwd}:DatabaseName\=${postgresql.dbName}\:ServerName\=${postgresql.server}\:port\=${postgresql.port} + +## +## Info for Sybase (jConnect Driver) +## +sybase.dbName=cts2 +sybase.server=${orb.host} +sybase.port=4100 +sybase.dml.file=sybase/sybase.dml.sql +sybase.user=cts1 +sybase.passwd=cts1 +sybase.url=jdbc:sybase:Tds:${sybase.server}:${sybase.port}/${sybase.dbName} +sybase.driver=com.sybase.jdbc2.jdbc.SybDriver +sybase.classes=${jdbc.lib.class.path}/jconn2.jar +sybase.poolName=cts-sybase-pool +sybase.dataSource= com.sybase.jdbc2.jdbc.SybDataSource +sybase.properties=user\=${sybase.user}:password\=${sybase.passwd}:DatabaseName\=${sybase.dbName}\:ServerName\=${sybase.server}\:PortNumber\=${sybase.port}\:BE_AS_JDBC_COMPLIANT_AS_POSSIBLE\=true\:FAKE_METADATA\=true + +## +## Info for Sybase (Inet Driver) +## +sybaseInet.dbName=cts2 +sybaseInet.server=${orb.host} +sybaseInet.port=4100 +sybaseInet.dml.file=sybase/sybase.dml.sql +sybaseInet.user=cts1 +sybaseInet.passwd=cts1 +sybaseInet.url=jdbc:inetsyb:${sybaseInet.server}:${sybaseInet.port}?database=${sybaseInet.dbName} +sybaseInet.driver=com.inet.syb.SybDriver +sybaseInet.classes=${jdbc.lib.class.path}/Sybelux.jar +sybaseInet.poolName=cts-sybase-Inet-pool +sybaseInet.dataSource= com.inet.syb.SybDataSource +sybaseInet.properties=user\=${sybaseInet.user}:password\=${sybaseInet.passwd}:DatabaseName\=${sybaseInet.dbName}\:ServerName\=${sybaseInet.server}\:PortNumber\=${sybaseInet.port} + + +## +## Info for Sybase using the DataDirect driver +## +sybaseDD.dbName=cts2 +sybaseDD.server=${orb.host} +sybaseDD.port=4100 +sybaseDD.dml.file=sybase/sybase.dml.sql +sybaseDD.user=cts1 +sybaseDD.passwd=cts1 +sybaseDD.url=jdbc:datadirect:sybase://${sybaseDD.server}:${sybaseDD.port} +sybaseDD.driver=com.ddtek.jdbc.sybase.SybaseDriver +sybaseDD.classes=${jdbc.lib.class.path}/util.jar${pathsep}${jdbc.lib.class.path}/sybase.jar${pathsep}${jdbc.lib.class.path}/base.jar +sybaseDD.poolName=cts-sybase-DataDirect-pool +sybaseDD.dataSource=com.ddtek.jdbcx.sybase.SybaseDataSource +sybaseDD.properties=user\=${sybaseDD.user}:password\=${sybaseDD.passwd}:ServerName\=${sybaseDD.server}:portNumber\=${sybaseDD.port}:selectMethod\=cursor:DatabaseName\=${sybaseDD.dbName} + +## +## Info for Sybase using the Sun driver +## +sybaseSun.dbName=cts2 +sybaseSun.server=${orb.host} +sybaseSun.port=4100 +sybaseSun.dml.file=sybase/sybase.dml.sql +sybaseSun.user=cts1 +sybaseSun.passwd=cts1 +sybaseSun.url=jdbc:sun:sybase://${sybaseSun.server}:${sybaseSun.port} +sybaseSun.driver=com.sun.sql.jdbc.sybase.SybaseDriver +sybaseSun.classes=${jdbc.lib.class.path}/smsybase.jar +sybaseSun.poolName=cts-sybase-Sun-pool +sybaseSun.dataSource=com.sun.sql.jdbcx.sybase.SybaseDataSource +sybaseSun.properties=user\=${sybaseSun.user}:password\=${sybaseSun.passwd}:ServerName\=${sybaseSun.server}:portNumber\=${sybaseSun.port}:selectMethod\=cursor:DatabaseName\=${sybaseSun.dbName} + +############################################################### +## The following database configuration section is for the CTS +## interop tests which require a database that is used by the +## reference implementation. These entries should not be changed. +# @derby.dbName.ri -- Database Name +# @derby.server.ri -- Database Server +# @derby.port.ri -- Database Server port +# @derby.dml.file.ri -- DML file used for CTS test cases +# @derby.user.ri -- User Id configured +# @derby.passwd.ri -- User password configured +# @derby.url.ri -- URL to the cts database +# @derby.driver.ri -- DriverManager driver +# @derby.classes.ri -- CLASSPATH to JDBC driver classes +# @derby.poolName.ri -- Name of pool configured in the Java EE +# RI (do not change!) +# @derby.dataSource.ri -- DataSource driver +# @derby.properties.ri -- Any additional JDBC driver required +# properties +# @derby.startup.delay.ri -- delay to wait for DB to start +############################################################### +derby.dbName.ri=derbyDBri +derby.server.ri=${orb.host.ri} +derby.port.ri=1527 +derby.dml.file.ri=derby/derby.dml.sql +derby.user.ri=cts1 +derby.passwd.ri=cts1 +derby.url.ri=jdbc:derby://${derby.server.ri}:${derby.port.ri}/${derby.dbName.ri};create=true +derby.driver.ri=org.apache.derby.jdbc.ClientDriver +derby.home.ri=${javaee.home.ri}/../javadb +derby.system.home.ri=${derby.home.ri}/databases +derby.classpath.ri=${ts.home}/lib/dbprocedures.jar${pathsep}${derby.home.ri}/lib/derbynet.jar${pathsep}${derby.home.ri}/lib/derbyshared.jar${pathsep}${derby.home.ri}/lib/derbytools.jar +derby.classes.ri=${derby.home.ri}/lib/derbyclient.jar{pathsep}${derby.home.ri}/lib/derbyshared.jar${pathsep}${derby.home.ri}/lib/derbytools.jar +derby.poolName.ri=cts-derby-pool +derby.dataSource.ri=org.apache.derby.jdbc.ClientDataSource +derby.properties.ri=DatabaseName\=\"${derby.dbName.ri}\":user\=${derby.user.ri}:password\=${derby.passwd.ri}:serverName\=${derby.server.ri}:portNumber=${derby.port.ri} +derby.startup.delay.ri=5 +############################################################### +# @alt.dtd.dir DTD location for Java EE and RI xml files. Used +# for xml validation when building tests. If +# javaee.home.ri is set, /lib/dtds +# will be used and alt.dtd.dir is ignored. +# @alt.schema.dir schema location for Java EE and RI xml files. +# Used for xml validation when building tests. +# If javaee.home.ri is set, +# /lib/schemas will be used and +# alt.schema.dir is ignored. +############################################################### +alt.dtd.dir=${ts.home}/lib/dtds +alt.schema.dir=${ts.home}/lib/schemas + +############################################################### +## Configure the behavior of which tables CTS will create when +## ant init.[datbaseName] is invoked. +# +# @create.cmp.tables - When set to false, the appserver is +# responsible for creating cmp tables +# at deployment of the ejb/ear +# When set to true, init.[datbaseName] +# will create the tables used by CMP +# EJBs. The sql for the CMP tables are +# contained in: +# $TS_HOME/[datbaseName]/sql/[databaseName].ddl.cmp.sql +# $TS_HOME/[datbaseName]/sql/[databaseName].ddl.interop.sql +# +############################################################### +create.cmp.tables=true + +############################################################### +# @jdbc.poolName - Configure the connection pool that will be +# tested in this cts test run. +# +# @jdbc.maxpoolsize - This property defines the max pool size +# when creating JDBC connection pools. +# +# @jdbc.steadypoolsize - This property defines the steady pool size +# when creating JDBC connection pools. +############################################################### +jdbc.poolName=${derby.poolName} +jdbc.maxpoolsize=64 +jdbc.steadypoolsize=32 + +############################################################### +## These properties are use for the CTS +## interop tests which require a database that is used by the +## reference implementation. +# +# @jdbc.poolName.ri - Configure the connection pool that will be +# use when configuring the JDBC connection +# pools for the reference implemetation. +# +# @jdbc.maxpoolsize.ri - This property defines the max pool size +# when creating JDBC connection pools. +# +# @jdbc.steadypoolsize.ri - This property defines the steady pool size +# when creating JDBC connection pools. +############################################################### +jdbc.poolName.ri=${derby.poolName.ri} +jdbc.maxpoolsize.ri=96 +jdbc.steadypoolsize.ri=32 + +############################################################### +# @jdbc.datasource.props - Used to to specify Vendor specific +# properties and less commonly used DataSource properties. +# Its value is a comma-separated array of name-value pairs. +# Each property pair follows the format of "name=value", +# including the surrounding double quotes. +# +# The value of this property must not contain any extra spaces. +# +# In most cases, this property is not needed and therefore +# commented out. +# +############################################################### +#jdbc.datasource.props="driverType=thin","name2=value2" + +############################################################### +# @jdbc.db - The name of the currently configured DB. This +# value is the prefix of the DB properties currently +# being used. Some valid values are; derby and +# derbyEmbedded. See the other DB property +# names for other valid values. +############################################################### +jdbc.db=derby +jdbc.db.classes=${derby.classes} + +############################################################### +## These properties are configurable and must specify valid +## usernames and passwords to establish JDBC connections to +## backend RDBMS. +## +# @user1 - Set this to the user for the jdbc/DB1 resource +# @password1 - Set this to the password for the jdbc/DB1 resource +# @user2 - Set this to the user for the jdbc/DB2 resource +# @password2 - Set this to the password for the jdbc/DB2 resource +# @user3 - Set this to the user for the jdbc/DBTimer resource +# @password3 - Set this to the password for the jdbc/DBTimer resource +############################################################### +user1=${derby.user} +password1=${derby.passwd} +user2=${derby.user} +password2=${derby.passwd} +user3=${derby.user} +password3=${derby.passwd} + +############################################################### +## Configure the dml file to use +# @db.dml.file - dml file for VI +# @db.dml.file.ri - dml file for RI +############################################################### +db.dml.file=${derby.dml.file} +db.dml.file.ri=${derby.dml.file} + +############################################################### +## Configure the DB specific information needed by JSTL +# @jstl.db.driver - JDBC driver +# @jstl.db.url - DB URL +############################################################### +jstl.db.driver=${derby.driver} +jstl.db.url=${derby.url} + +######################################################################## +# +# @jtaJarClasspath: This property must be set when running signature +# tests. This property should be set to the Path +# for the JTA API jar. +# +######################################################################## +jtaJarClasspath=${s1as.modules}/jakarta.transaction-api.jar + +############################################################### +## Classpath properties required by CTS: +# @javaee.classes.ri -- Classes required by Java EE RI +# @ts.run.classpath.ri -- Classpath required by Java EE RI +# appclient container. +# @ts.run.classpath -- Classpath required by the vendor +# appclient container. +# @ts.harness.classpath -- Classes required by javatest +# @ts.classpath -- Classes used to build the CTS tests +# @ts.lib.classpath -- Classes used to build cts.jar +############################################################### +implementation.classes.ri=${ri.modules}/orb-connector.jar${pathsep}${ri.modules}/deployment-client.jar${pathsep}${ri.modules}/security-ee.jar${pathsep}${ri.modules}/security.jar${pathsep}${ri.modules}/common-util.jar${pathsep}${ri.modules}/glassfish-corba-omgapi.jar${pathsep}${ri.modules}/glassfish-corba-orb.jar${pathsep}${ri.modules}/internal-api.jar${pathsep}${ri.modules}/deployment-common.jar${pathsep}${ri.modules}/gmbal.jar${pathsep}${ri.modules}/bean-validator.jar${pathsep}${ri.modules}/jersey-client.jar${pathsep}${ri.modules}/jersey-common.jar${pathsep}${ri.modules}/jersey-hk2.jar${pathsep}${ri.modules}/jersey-media-jaxb.jar${pathsep}${ri.modules}/jersey-media-sse.jar${pathsep}${ri.modules}/jersey-media-json-processing.jar${pathsep}${ri.modules}/jsonp-jaxrs.jar${pathsep}${ri.modules}/jersey-media-json-binding.jar${pathsep}${ri.modules}/jersey-server.jar${pathsep}${ri.modules}/jersey-container-servlet.jar${pathsep}${ri.modules}/jersey-container-servlet-core.jar${pathsep}${ri.modules}/guava.jar${pathsep}${ri.modules}/jakarta.el.jar${pathsep}${ri.modules}/jakarta.el-api.jar${pathsep}${ri.modules}/tyrus-websocket-core.jar${pathsep}${ri.modules}/tyrus-client.jar${pathsep}${ri.modules}/tyrus-container-grizzly-client.jar${pathsep}${ri.modules}/tyrus-core.jar${pathsep}${ri.modules}/tyrus-container-grizzly.jar${pathsep}${ri.modules}/tyrus-container-grizzly-client.jar${pathsep}${ri.modules}/glassfish-grizzly-extra-all.jar${pathsep}${ri.modules}/nucleus-grizzly-all.jar${pathsep}${ri.modules}/tyrus-server.jar${pathsep}${ri.modules}/tyrus-container-servlet.jar${pathsep}${ri.modules}/tyrus-spi.jar${pathsep}${ri.modules}/yasson.jar${pathsep}${ri.modules}/jakarta.websocket-client-api.jar${pathsep}${ri.modules}/parsson.jar${pathsep}${ri.modules}/parsson-media.jar${pathsep}${ri.modules}/angus-activation.jar${pathsep}${ri.modules}/angus-mail.jar${pathsep}${ri.modules}/expressly.jar + +implementation.classes=${s1as.modules}/deployment-client.jar${pathsep}${s1as.modules}/security.jar${pathsep}${s1as.modules}/common-util.jar${pathsep}${s1as.modules}/glassfish-corba-omgapi.jar${pathsep}${s1as.modules}/deployment-common.jar${pathsep}${s1as.modules}/gmbal.jar${pathsep}${s1as.modules}/bean-validator.jar${pathsep}${s1as.modules}/jakarta.ws.rs-api.jar${pathsep}${s1as.modules}/jersey-client.jar${pathsep}${s1as.modules}/jersey-common.jar${pathsep}${s1as.modules}/jersey-hk2.jar${pathsep}${s1as.modules}/jersey-media-jaxb.jar${pathsep}${s1as.modules}/jersey-media-sse.jar${pathsep}${s1as.modules}/jersey-media-json-processing.jar${pathsep}${s1as.modules}/jsonp-jaxrs.jar${pathsep}${s1as.modules}/jersey-media-json-binding.jar${pathsep}${s1as.modules}/jersey-server.jar${pathsep}${s1as.modules}/jersey-container-servlet.jar${pathsep}${s1as.modules}/jersey-container-servlet-core.jar${pathsep}${s1as.modules}/guava.jar${pathsep}${s1as.modules}/jakarta.el.jar${pathsep}${s1as.modules}/jakarta.el-api.jar${pathsep}${s1as.modules}/tyrus-websocket-core.jar${pathsep}${s1as.modules}/tyrus-client.jar${pathsep}${s1as.modules}/tyrus-core.jar${pathsep}${s1as.modules}/tyrus-container-grizzly.jar${pathsep}${s1as.modules}/tyrus-container-grizzly-client.jar${pathsep}${s1as.modules}/glassfish-grizzly-extra-all.jar${pathsep}${s1as.modules}/nucleus-grizzly-all.jar${pathsep}${s1as.modules}/tyrus-server.jar${pathsep}${s1as.modules}/tyrus-container-servlet.jar${pathsep}${s1as.modules}/tyrus-spi.jar${pathsep}${s1as.modules}/yasson.jar${pathsep}${s1as.modules}/jakarta.websocket-client-api.jar${pathsep}${s1as.modules}/parsson.jar${pathsep}${s1as.modules}/parsson-media.jar${pathsep}${s1as.modules}/angus-activation.jar${pathsep}${s1as.modules}/angus-mail.jar${pathsep}${s1as.modules}/expressly.jar + +javaee.classes.ri=${ri.modules}/jakarta.jms-api.jar${pathsep}${ri.modules}/jakarta.json.jar${pathsep}${ri.modules}/jakarta.json-api.jar${pathsep}${ri.modules}/jakarta.json.bind-api.jar${pathsep}${ri.modules}/jakarta.ejb-api.jar${pathsep}${ri.modules}/jakarta.annotation-api.jar${pathsep}${ri.modules}/jakarta.enterprise.deploy-api.jar${pathsep}${ri.modules}/jakarta.mail.jar${pathsep}${ri.modules}/jakarta.mail-api.jar${pathsep}${ri.modules}/jakarta.persistence.jar${pathsep}${ri.modules}/jakarta.persistence-api.jar${pathsep}${ri.modules}/jakarta.resource-api.jar${pathsep}${ri.modules}/jakarta.security.auth.message-api.jar${pathsep}${ri.modules}/jakarta.authentication-api.jar${pathsep}${ri.modules}/jakarta.security.jacc-api.jar${pathsep}${ri.modules}/jakarta.authorization-api.jar${pathsep}${ri.modules}/jakarta.interceptor-api.jar${pathsep}${ri.modules}/jakarta.servlet-api.jar${pathsep}${ri.modules}/jakarta.servlet.jsp-api.jar${pathsep}${ri.modules}/jakarta.transaction-api.jar${pathsep}${ri.modules}/jakarta.xml.bind-api.jar${pathsep}${ri.modules}/jaxb-osgi.jar${pathsep}${ri.modules}/jmxremote_optional-repackaged.jar${pathsep}${ri.modules}/jakarta.faces.jar${pathsep}${ri.modules}/jakarta.faces-api.jar${pathsep}${ri.modules}/jakarta.servlet.jsp.jstl.jar${pathsep}${ri.modules}/jakarta.servlet.jsp.jstl-api.jar${pathsep}${ri.modules}/webservices-osgi.jar${pathsep}${ri.modules}/webservices-api-osgi.jar${pathsep}${ri.modules}/ejb.security.jar${pathsep}${ri.modules}/glassfish-corba-csiv2-idl.jar${pathsep}${ri.modules}/weld-osgi-bundle.jar${pathsep}${implementation.classes.ri}${pathsep}${ri.modules}/javamail-connector.jar${pathsep}${ri.modules}/javamail-runtime.jar${pathsep}${ri.modules}/jakarta.websocket-api.jar${pathsep}${ri.modules}/jakarta.enterprise.concurrent-api.jar${pathsep}${ri.modules}/jakarta.enterprise.cdi-api.jar${pathsep}${ri.modules}/jakarta.security.enterprise-api.jar${pathsep}${ri.modules}/resolver.jar${pathsep}${ri.modules}/jakarta.websocket-client-api.jar${pathsep}${ri.modules}/parsson.jar${pathsep}${s1as.modules}/parsson-media.jar${pathsep}${ri.modules}/angus-activation.jar${pathsep}${s1as.modules}/angus-mail.jar${pathsep}${s1as.modules}/expressly.jar${pathsep}${ri.modules}/webservices-extra-jdk-packages.jar${pathsep}${ri.modules}/webservices-connector.jar${pathsep}${ri.modules}/webservices-extra-xmlsec.jar${pathsep}${ri.modules}/webservices.security.jar + +javaee.classes=${s1as.modules}/jakarta.jms-api.jar${pathsep}${s1as.modules}/jakarta.json.jar${pathsep}${s1as.modules}/jakarta.json-api.jar${pathsep}${s1as.modules}/jakarta.json.bind-api.jar${pathsep}${s1as.modules}/jakarta.ejb-api.jar${pathsep}${s1as.modules}/jakarta.annotation-api.jar${pathsep}${s1as.modules}/jakarta.enterprise.deploy-api.jar${pathsep}${s1as.modules}/jakarta.mail.jar${pathsep}${s1as.modules}/jakarta.mail-api.jar${pathsep}${s1as.modules}/jakarta.persistence.jar${pathsep}${s1as.modules}/jakarta.persistence-api.jar${pathsep}${s1as.modules}/jakarta.resource-api.jar${pathsep}${s1as.modules}/jakarta.security.auth.message-api.jar${pathsep}${s1as.modules}/jakarta.security.jacc-api.jar${pathsep}${s1as.modules}/jakarta.authentication-api.jar${pathsep}${s1as.modules}/jakarta.authorization-api.jar${pathsep}${s1as.modules}/jakarta.servlet-api.jar${pathsep}${s1as.modules}/el-impl.jar${pathsep}${s1as.modules}/jakarta.servlet.jsp-api.jar${pathsep}${jtaJarClasspath}${pathsep}${s1as.modules}/jakarta.xml.bind-api.jar${pathsep}${s1as.modules}/jaxb-osgi.jar${pathsep}${s1as.modules}/jmxremote_optional-repackaged.jar${pathsep}${s1as.modules}/jakarta.faces.jar${pathsep}${s1as.modules}/jakarta.faces-api.jar${pathsep}${s1as.modules}/jakarta.servlet.jsp.jstl.jar${pathsep}${ri.modules}/jakarta.servlet.jsp.jstl-api.jar${pathsep}${s1as.modules}/webservices-osgi.jar${pathsep}${s1as.modules}/webservices-api-osgi.jar${pathsep}${s1as.modules}/jakarta.management.j2ee-api.jar${pathsep}${s1as.modules}/ejb.security.jar${pathsep}${s1as.modules}/glassfish-corba-csiv2-idl.jar${pathsep}${s1as.modules}/weld-osgi-bundle.jar${pathsep}${implementation.classes}${pathsep}${s1as.modules}/javamail-connector.jar${pathsep}${s1as.modules}/javamail-runtime.jar${pathsep}${s1as.modules}/jakarta.websocket-api.jar${pathsep}${s1as.modules}/jakarta.enterprise.concurrent-api.jar${pathsep}${s1as.modules}/jakarta.enterprise.cdi-api.jar$${pathsep}${s1as.modules}/jakarta.xml.ws-api.jar${pathsep}${s1as.modules}/jakarta.xml.bind-api.jar${pathsep}${s1as.modules}/jakarta.security.enterprise-api.jar${pathsep}${s1as.modules}/jakarta.inject-api.jar${pathsep}${s1as.modules}/jakarta.activation-api.jar${pathsep}${s1as.modules}/jakarta.validation-api.jar${pathsep}${s1as.modules}/resolver.jar${pathsep}${s1as.modules}/jakarta.websocket-client-api.jar${pathsep}${s1as.modules}/parsson.jar${pathsep}${s1as.modules}/parsson-media.jar${pathsep}${s1as.modules}/angus-activation.jar${pathsep}${s1as.modules}/angus-mail.jar${pathsep}${s1as.modules}/expressly.jar${pathsep}${s1as.modules}/webservices-extra-jdk-packages.jar${pathsep}${s1as.modules}/webservices-connector.jar${pathsep}${s1as.modules}/webservices-extra-xmlsec.jar${pathsep}${s1as.modules}/webservices.security.jar + +ts.run.classpath.ri=${javaee.classes.ri}${pathsep}${ts.home}/lib/tsharness.jar${pathsep}${ts.home}/lib/cts.jar${pathsep}${ts.home}/lib/glassfishporting.jar + +ts.run.classpath=${pathsep}${javaee.classes}${pathsep}${ts.home}/lib/tsharness.jar${pathsep}${ts.home}/lib/cts.jar${pathsep}${ts.home}/lib/glassfishporting.jar${pathsep}${jdbc.db.classes} + +ts.harness.classpath=${ts.home}/lib/jaxb-api.jar${pathsep}${ts.home}/lib/jaxb-core.jar${pathsep}${ts.home}/lib/jaxb-impl.jar${pathsep}${ts.home}/lib/jaxb-xjc.jar${pathsep}${ts.home}/lib/tsharness.jar${pathsep}${ts.home}/lib/cts.jar${pathsep}${ts.home}/lib/glassfishporting.jar${pathsep}${ts.home}/lib/sigtest.jar${pathsep}${ts.run.classpath}${pathsep}${ts.home}/lib/javatest.jar${pathsep}${ts.home}/lib/jdom-1.1.3.jar${pathsep}${ant.home}/lib/ant.jar${pathsep}${ri.modules}/admin-cli.jar + +#classpath used for building CTS tests only (DO NOT MODIFY) +ts.classpath=${ts.home}/lib/commons-lang3-3.3.2.jar${pathsep}${javaee.home.ri}/javadb/lib/derby.jar${pathsep}${ts.home}/lib/tsharness.jar${pathsep}${ts.home}/lib/cts.jar${pathsep}${ts.home}/lib/glassfishporting.jar${pathsep}${ts.home}/lib/sigtest.jar${pathsep}${ts.run.classpath}${pathsep}${ts.run.classpath.ri}${pathsep}${ts.home}/lib/javatest.jar${pathsep}${ts.home}/lib/jdom-1.1.3.jar${pathsep}${ant.home}/lib/ant.jar${pathsep}${ts.home}/lib/commons-httpclient-3.1.jar${pathsep}${ts.home}/lib/commons-logging-1.1.3.jar${pathsep}${ts.home}/lib/htmlunit-2.15.jar${pathsep}${ts.home}/lib/htmlunit-core-js-2.15.jar${pathsep}${ts.home}/lib/unboundid-ldapsdk.jar${pathsep}${ts.home}/lib/commons-codec-1.9.jar${pathsep}${ts.home}/lib/xml-apis-1.4.01.jar${pathsep}${ts.home}/lib/jaxb-api.jar +#classpath used for building cts.jar (DO NOT MODIFY) +ts.lib.classpath=${javaee.home.ri}/javadb/lib/derby.jar${pathsep}${ts.harness.classpath} + + +############################################################### +# @javaee.home.ri.classpathsuffix - The classpath suffix of +# the RI used in interop tests. Must contain the RI JDBC +# driver jars and the RMI interceptor classes. +############################################################### +javaee.home.ri.classpathsuffix=${javaee.home.ri}/lib/riinterceptors.jar${pathsep}${javaee.home.ri}/javadb/lib/derbyclient.jar + +############################################################### +# @s1as.classpathsuffix - The classpath suffix of +# the RI when being used as the app server under test. +############################################################### +s1as.classpathsuffix=${javaee.home}/lib/tsprovider.jar + +######################################################################## +## Common environment for both ts_unix and ts_win32 +# +# @command.testExecute - This command is used to execute any test +# clients which are not run inside an +# application client container. For example, +# any URL clients or standalone java clients +# would be executed with this command. Some +# test directories which make use of this command +# are servlet and jsp. +######################################################################## + +command.testExecute=com.sun.ts.lib.harness.ExecTSTestCmd \ + CLASSPATH=${ts.harness.classpath}${pathsep}${ts.home}/classes${pathsep}\ + ${JAVA_HOME}/../lib/tools.jar${pathsep}\ + ${ri.modules}/security-ee.jar${pathsep}\ + ${ts.home}/lib/commons-httpclient-3.1.jar${pathsep}\ + ${ts.home}/lib/commons-logging-1.1.3.jar${pathsep}\ + ${ts.home}/lib/commons-codec-1.9.jar${pathsep}\ + ${ts.home}/lib/cssparser-0.9.25.jar${pathsep}\ + ${ts.home}/lib/htmlunit-2.15.jar${pathsep}\ + ${ts.home}/lib/htmlunit-core-js-2.15.jar${pathsep}\ + ${ts.home}/lib/httpcore-4.4.9.jar${pathsep}\ + ${ts.home}/lib/httpclient-4.5.5.jar${pathsep}\ + ${ts.home}/lib/httpmime-4.5.5.jar${pathsep}\ + ${ts.home}/lib/commons-collections-3.2.1.jar${pathsep}\ + ${ts.home}/lib/commons-io-2.4.jar${pathsep}\ + ${ts.home}/lib/commons-lang3-3.3.2.jar${pathsep}\ + ${ts.home}/lib/jaxen-1.1.6.jar${pathsep}\ + ${ts.home}/lib/nekohtml-1.9.21.jar${pathsep}\ + ${ts.home}/lib/sac-1.3.jar${pathsep}\ + ${ts.home}/lib/saxpath.jar${pathsep}\ + ${ts.home}/lib/xercesImpl-2.11.0.jar${pathsep}\ + ${ts.home}/lib/xalan-2.7.2.jar${pathsep}\ + ${ts.home}/lib/serializer-2.7.2.jar${pathsep}\ + ${ts.home}/lib/xml-apis-1.4.01.jar${pathsep}\ + ${ts.home}/lib/unboundid-ldapsdk.jar${pathsep}\ + ${jdbc.db.classes} \ + DISPLAY=${ts.display} \ + HOME="${user.home}" \ + TMP=${TMP} \ + windir=${windir} \ + SYSTEMROOT=${SYSTEMROOT} \ + PATH="${javaee.home}/nativelib" \ + ${JAVA_HOME}/bin/java \ + ${JVMOPTS_RUNTESTCOMMAND} \ + -Xss2048k \ + -Dcts.tmp=$harness.temp.directory \ + -Djava.protocol.handler.pkgs=javax.net.ssl \ + -Djavax.net.ssl.keyStore=${bin.dir}/certificates/clientcert.jks \ + -Djavax.net.ssl.keyStorePassword=changeit \ + -Djavax.net.ssl.trustStore=${s1as.domain}/${sjsas.instance.config.dir}/cacerts.jks \ + -Dcom.sun.aas.installRoot=${javaee.home} \ + -Dlog.file.location=${log.file.location} \ + -Dservlet.is.jsr115.compatible=${servlet.is.jsr115.compatible} \ + -Dprovider.configuration.file=${provider.configuration.file} \ + -Djava.security.properties=${s1as.domain}/${sjsas.instance.config.dir}/ts.java.security \ + -Dlogical.hostname.servlet=${logical.hostname.servlet} \ + -Dcom.sun.aas.configRoot=${javaee.home}/config \ + -Ddeliverable.class=${deliverable.class} $testExecuteClass $testExecuteArgs + +######################################################################## +## Appclient Command line for the App Server under test +## Licensees modify this command +# +# @command.testExecuteAppClient - This command is used to execute +# the application client container for +# the vendor implementation (vi). +# Please note that $TS_HOME/classes +# should not be in the classpath for +# this command since all client classes +# are self contained in the application +# archive (or referenced via the manifest). +######################################################################## +command.testExecuteAppClient= \ + com.sun.ts.lib.harness.ExecTSTestCmd DISPLAY=${ts.display} HOME="${user.home}" \ + LD_LIBRARY_PATH=${javaee.home}/lib \ + TMP=${TMP} \ + windir=${windir} \ + SYSTEMROOT=${SYSTEMROOT} \ + PATH="${javaee.home}/nativelib" \ + APPCPATH=${ts.home}/lib/tsharness.jar${pathsep}${ts.home}/lib/cts.jar${pathsep}${ts.home}/lib/glassfishporting.jar${pathsep}${javaee.home}/lib/jpa_alternate_provider.jar${pathsep}${ts.home}/lib/tssv.jar${pathsep}${javaee.home}/modules/weld-osgi-bundle.jar${pathsep}${javaee.home}/modules/jakarta.enterprise.cdi-api.jar \ + TZ=${tz} \ + ${JAVA_HOME}/bin/java \ + ${JVMOPTS_RUNTESTCOMMAND} \ + -Djava.system.class.loader=org.glassfish.appclient.client.acc.agent.ACCAgentClassLoader \ + -Djava.security.policy=${javaee.home}/lib/appclient/client.policy \ + -Dcts.tmp=$harness.temp.directory \ + -Djava.security.auth.login.config=${javaee.home}/lib/appclient/appclientlogin.conf \ + -Djava.protocol.handler.pkgs=javax.net.ssl \ + -Dcom.sun.enterprise.home=${javaee.home} \ + -Djavax.net.ssl.keyStore=${bin.dir}/certificates/clientcert.jks \ + -Djavax.net.ssl.keyStorePassword=changeit \ + -Dcom.sun.aas.installRoot=${javaee.home} \ + -Dcom.sun.aas.imqLib=${javaee.home}/../mq/lib \ + -Djavax.net.ssl.trustStore=${s1as.domain}/${sjsas.instance.config.dir}/cacerts.jks \ + -Djavax.xml.parsers.SAXParserFactory=com.sun.org.apache.xerces.internal.jaxp.SAXParserFactoryImpl \ + -Djavax.xml.parsers.DocumentBuilderFactory=com.sun.org.apache.xerces.internal.jaxp.DocumentBuilderFactoryImpl \ + -Djavax.xml.transform.TransformerFactory=com.sun.org.apache.xalan.internal.xsltc.trax.TransformerFactoryImpl \ + -Dorg.xml.sax.driver=com.sun.org.apache.xerces.internal.parsers.SAXParser \ + -Dorg.xml.sax.parser=org.xml.sax.helpers.XMLReaderAdapter \ + -Doracle.jdbc.J2EE13Compliant=true \ + -Doracle.jdbc.mapDateToTimestamp \ + -Dstartup.login=false \ + -Dauth.gui=false \ + -Dlog.file.location=${log.file.location} \ + -Dri.log.file.location=${ri.log.file.location} \ + -DwebServerHost.2=${webServerHost.2} \ + -DwebServerPort.2=${webServerPort.2} \ + -Dprovider.configuration.file=${provider.configuration.file} \ + -Djava.security.properties=${s1as.domain}/${sjsas.instance.config.dir}/ts.java.security \ + -Dcom.sun.aas.configRoot=${javaee.home}/config \ + -Ddeliverable.class=${deliverable.class} -javaagent:${javaee.home}/lib/gf-client.jar=arg=-configxml,arg=${ts.home}/tmp/appclient/s1as.sun-acc.xml,client=jar=$testExecuteArgs + +#-Ddeliverable.class=${deliverable.class} -javaagent:${javaee.home}/modules/gf-client.jar=arg=-configxml,arg=${s1as.domain}/config/sun-acc.xml,client=jar=$testExecuteArgs +#-Xbootclasspath/a:${pathsep}${ts.home}/lib/tsharness.jar${pathsep}${ts.home}/lib/cts.jar + +######################################################################## +# @command.testExecuteEjbEmbed - Command line for standalone embedded EJB tests. +# Its classpath must include all the APIs required +# by EJB Lite, vendor's implementation classes and +# configuration for embeddable EJB container, and +# JDBC driver classes (e.g., ${db2.classes}, +# ${oracle.classes}, etc). +# +# Current test archives are dynamically added to +# the classpath by the harness, and need not be +# included in the classpath here. +# +# Most test directories contain one test archive, +# all named ejbembed_vehicle_ejb.jar. If certain +# tooling and pre-processing of test archives are +# needed, the resulting test archives must remain +# the same name and location. +# +# ${ts.home}/classes must not be in the classpath +# since all the required test classes are packaged +# in the test archive (ejbembed_vehicle_ejb.jar). In +# addition, including ${ts.home}/classes in the +# classpath would incorrectly expose all EJBs in +# cts to EJB container bootstrapping process. +######################################################################## +command.testExecuteEjbEmbed=com.sun.ts.lib.harness.ExecTSTestCmd \ + CLASSPATH=${ts.home}/lib/tsharness.jar${pathsep}\ + ${ts.home}/lib/cts.jar${pathsep}\ + ${ts.home}/lib/glassfishporting.jar${pathsep}\ + ${ts.home}/lib/commons-lang3-3.3.2.jar${pathsep}\ + ${jdbc.db.classes}${pathsep}\ + ${javaee.home}/lib/embedded/glassfish-embedded-static-shell.jar \ + DISPLAY=${ts.display} \ + HOME="${user.home}" \ + TMP=${TMP} \ + windir=${windir} \ + SYSTEMROOT=${SYSTEMROOT} \ + ${JAVA_HOME}/bin/java \ + ${JVMOPTS_RUNTESTCOMMAND} \ + -Dcts.tmp=$harness.temp.directory \ + -Djava.util.logging.config.file=${TS_HOME}/bin/client-logging.properties \ + -Dtest.ejb.stateful.timeout.wait.seconds=${test.ejb.stateful.timeout.wait.seconds} \ + -Ddeliverable.class=${deliverable.class} $testExecuteClass $testExecuteArgs + + +######################################################################## +## Appclient Command line for the Java EE RI (Do not modify) +######################################################################## +command.testExecuteAppClient2= \ + com.sun.ts.lib.harness.ExecTSTestCmd DISPLAY=${ts.display} HOME="${user.home}" \ + LD_LIBRARY_PATH=${javaee.home.ri}/lib \ + TMP=${TMP} \ + windir=${windir} \ + SYSTEMROOT=${SYSTEMROOT} \ + PATH="${javaee.home.ri}/nativelib" \ + APPCPATH=${ts.home}/lib/tsharness.jar${pathsep}${ts.home}/lib/cts.jar${pathsep}${ts.home}/lib/glassfishporting.jar${pathsep}${ts.home}/lib/riinterceptors.jar \ + TZ=${tz} \ + ${RI_JAVA_HOME}/bin/java \ + ${JVMOPTS_RUNTESTCOMMAND} \ + -Djava.system.class.loader=org.glassfish.appclient.client.acc.agent.ACCAgentClassLoader \ + -Djava.security.policy=${javaee.home.ri}/lib/appclient/client.policy \ + -Dcts.tmp=$harness.temp.directory \ + -Djava.security.auth.login.config=${javaee.home.ri}/lib/appclient/appclientlogin.conf \ + -Djava.protocol.handler.pkgs=javax.net.ssl \ + -Dcom.sun.enterprise.home=${javaee.home.ri} \ + -Djavax.net.ssl.keyStore=${bin.dir}/certificates/clientcert.jks \ + -Djavax.net.ssl.keyStorePassword=changeit \ + -Dcom.sun.aas.installRoot=${javaee.home.ri} \ + -Dcom.sun.aas.imqLib=${javaee.home.ri}/../mq/lib \ + -Djavax.net.ssl.trustStore=${ri.domain}/config/cacerts.jks \ + -Djavax.xml.parsers.SAXParserFactory=com.sun.org.apache.xerces.internal.jaxp.SAXParserFactoryImpl \ + -Djavax.xml.parsers.DocumentBuilderFactory=com.sun.org.apache.xerces.internal.jaxp.DocumentBuilderFactoryImpl \ + -Djavax.xml.transform.TransformerFactory=com.sun.org.apache.xalan.internal.xsltc.trax.TransformerFactoryImpl \ + -Dorg.xml.sax.driver=com.sun.org.apache.xerces.internal.parsers.SAXParser \ + -Dorg.xml.sax.parser=org.xml.sax.helpers.XMLReaderAdapter \ + -Doracle.jdbc.J2EE13Compliant=true \ + -Doracle.jdbc.mapDateToTimestamp \ + -Dstartup.login=false \ + -Dauth.gui=false \ + -Dlog.file.location=${log.file.location} \ + -Dri.log.file.location=${ri.log.file.location} \ + -DwebServerHost.2=${webServerHost.2} \ + -DwebServerPort.2=${webServerPort.2} \ + -Dprovider.configuration.file=${provider.configuration.file} \ + -Djava.security.properties=${s1as.domain}/${sjsas.instance.config.dir}/ts.java.security \ + -Dcom.sun.aas.configRoot=${javaee.home.ri}/config \ + -Ddeliverable.class=${deliverable.class} -javaagent:${javaee.home.ri}/lib/gf-client.jar=arg=-configxml,arg=${ts.home}/tmp/appclient/ri.sun-acc.xml,client=jar=$testExecuteArgs + +######################################################################## +## Command line for standalone clients running against the +## Java EE RI (Do not modify) +######################################################################## +command.testExecute2=com.sun.ts.lib.harness.ExecTSTestCmd \ + CLASSPATH=${ts.harness.classpath}${pathsep}${ts.home}/classes${pathsep}\ + ${ts.home}/lib/commons-httpclient-3.1.jar${pathsep}\ + ${ts.home}/lib/commons-logging-1.1.3.jar${pathsep}\ + ${ts.home}/lib/commons-codec-1.9.jar${pathsep}\ + ${ts.home}/lib/cssparser-0.9.25.jar${pathsep}\ + ${ts.home}/lib/htmlunit-2.15.jar${pathsep}\ + ${ts.home}/lib/htmlunit-core-js-2.15.jar${pathsep}\ + ${ts.home}/lib/httpcore-4.4.9.jar${pathsep}\ + ${ts.home}/lib/httpclient-4.5.5.jar${pathsep}\ + ${ts.home}/lib/httpmime-4.5.5.jar${pathsep}\ + ${ts.home}/lib/commons-collections-3.2.1.jar${pathsep}\ + ${ts.home}/lib/commons-io-2.4.jar${pathsep}\ + ${ts.home}/lib/commons-lang3-3.3.2.jar${pathsep}\ + ${ts.home}/lib/jaxen-1.1.6.jar${pathsep}\ + ${ts.home}/lib/nekohtml-1.9.21.jar${pathsep}\ + ${ts.home}/lib/sac-1.3.jar${pathsep}\ + ${ts.home}/lib/saxpath.jar${pathsep}\ + ${ts.home}/lib/xercesImpl-2.11.0.jar${pathsep}\ + ${ts.home}/lib/xalan-2.7.2.jar${pathsep}\ + ${ts.home}/lib/serializer-2.7.2.jar${pathsep}\ + ${ts.home}/lib/xml-apis-1.4.01.jar \ + ${ts.home}/lib/unboundid-ldapsdk.jar\ + DISPLAY=${ts.display} \ + HOME="${user.home}" \ + TMP=${TMP} \ + windir=${windir} \ + SYSTEMROOT=${SYSTEMROOT} \ + PATH="${javaee.home}/nativelib" \ + ${RI_JAVA_HOME}/bin/java \ + ${JVMOPTS_RUNTESTCOMMAND} \ + -Dcts.tmp=$harness.temp.directory \ + -Djava.protocol.handler.pkgs=javax.net.ssl \ + -Djavax.net.ssl.keyStore=${bin.dir}/certificates/clientcert.jks \ + -Djavax.net.ssl.keyStorePassword=changeit \ + -Djavax.net.ssl.trustStore=${ri.domain}/${ri.instance.config.dir}/cacerts.jks \ + -Ddeliverable.class=${deliverable.class} $testExecuteClass $testExecuteArgs + +######################################################################### +## Environment for ts_unix +## 3 test execution commands inherit from common environment +## defined above: testExecuteAppClient2, testExecuteAppClient, and +## testExecute. If you need to override them, uncomment them in the +## following section. +######################################################################### +env.ts_unix.menu=true +##env.ts_unix.command.testExecute= +##env.ts_unix.command.testExecuteAppClient= +##env.ts_unix.command.testExecuteAppClient2= + + +######################################################################## +## Environment for ts_win32 +## 3 test execution commands inherit from common environment +## defined above: testExecuteAppClient2, testExecuteAppClient, and +## testExecute. If you need to override them, uncomment them in the +## following section. +######################################################################## +env.ts_win32.menu=true +##env.ts_win32.command.testExecute= +##env.ts_win32.command.testExecuteAppClient= +##env.ts_win32.command.testExecuteAppClient2= + +######################################################################### +# @jimage.dir: This property specifies the directory where Java 11+ +# modules will be expanded by the jimage tool for use +# in sigTestClasspath +# @sigTestClasspath: This property must be set when running signature +# tests. This property should be set to a list of +# jar files and/or directories which contain your +# Java EE and Java SE classes. Paths must be +# separated by the appropriate path separator +# (';' windows, ':' Unixes). +######################################################################### + +jimage.dir=${ts.home}/tmp/jdk-bundles + +sigTestClasspath=${s1as.modules}/glassfish-corba-omgapi.jar${pathsep}${s1as.modules}/glassfish-corba-orb.jar${pathsep}${s1as.modules}/jakarta.enterprise.cdi-api.jar${pathsep}${s1as.modules}/jakarta.json-api.jar${pathsep}${s1as.modules}/jakarta.json.bind-api.jar${pathsep}${s1as.modules}/jakarta.batch-api.jar${pathsep}${s1as.modules}/jakarta.interceptor-api.jar${pathsep}${s1as.modules}/stax2-api.jar${pathsep}${s1as.modules}/jakarta.enterprise.concurrent-api.jar${pathsep}${s1as.modules}/jakarta.websocket-api.jar${pathsep}${s1as.modules}/jakarta.websocket-client-api.jar${pathsep}${s1as.modules}/jakarta.jms-api.jar${pathsep}${s1as.modules}/jakarta.faces.jar${pathsep}${s1as.modules}/jakarta.validation-api.jar${pathsep}${s1as.modules}/jakarta.annotation-api.jar${pathsep}${s1as.modules}/jakarta.xml.bind-api.jar${pathsep}${s1as.modules}/webservices-api-osgi.jar${pathsep}${pathsep}${s1as.modules}/jakarta.ws.rs-api.jar${pathsep}${s1as.modules}/weld-osgi-bundle.jar${pathsep}${s1as.modules}/jakarta.ejb-api.jar${pathsep}${s1as.modules}/jakarta.mail-api.jar${pathsep}${s1as.modules}/jakarta.persistence-api.jar${pathsep}${s1as.modules}/jakarta.resource-api.jar${pathsep}${s1as.modules}/jakarta.authorization-api.jar${pathsep}${s1as.modules}/jakarta.authentication-api.jar${pathsep}${s1as.modules}/jakarta.servlet-api.jar${pathsep}${s1as.modules}/jakarta.inject-api.jar${pathsep}${s1as.modules}/jakarta.el-api.jar${pathsep}${s1as.modules}/jakarta.servlet.jsp-api.jar${pathsep}${s1as.modules}/jakarta.servlet.jsp.jstl-api.jar${pathsep}${jtaJarClasspath}${pathsep}${s1as.modules}/jakarta.security.enterprise-api.jar${pathsep}${s1as.modules}/jakarta.activation-api.jar${pathsep}${jimage.dir}/java.base${pathsep}${jimage.dir}/java.rmi${pathsep}${jimage.dir}/java.sql${pathsep}${jimage.dir}/java.naming + +######################################################################## +## This property is used to support the odd side case when we have an +## optional technology package that is used but should not be tested. +## +## This property (i.e. optional.tech.packages.to.ignore) must be a comma +## separated list of packages that are NOT to be validated/tested when +## during the sigtest utilities validation of Optional Technologies. +## Example Usage: +## optional.tech.packages.to.ignore=javax.foo.pkg1,javax.bar.pkg2,com.blah.foo.pkg3 +## +## Additional notes: +## - always ignore the optional JAXB packages: +## optional.tech.packages.to.ignore=jakarta.xml.bind +## +######################################################################### +optional.tech.packages.to.ignore=jakarta.xml.bind + +######################################################################## +## These properties are used by the harness. "harness.log.port" +## specifies the port that server components use to send logging +## output back to JavaTest. If the default port # is not available +## on the machine running JavaTest, then you can set it here. +## +# +# @harness.temp.directory directory location used by the +# harness to store temporary files +# +# @harness.log.port the port the harness listens on for log mesages +# from remote clients +# +# @harness.log.traceflag used to turn on/off verbose debugging output +# for the tests. +# +# @harness.executeMode used to run the harness in the following modes +# of execution: +# 0 - default (deploy, run, undeploy) +# 1 - deploy only +# 2 - run only +# 3 - undeploy only +# 4 - deploy and run only +# +# @harness.socket.retry.count - denotes the number of time we should +# attempt to create a server socket when intilizing a test +# client. The socket is used for logging purposes. +# +# @harness.log.delayseconds Number of seconds to delay to allow +# reporting from remote clients to finish. +# +# @harness.maxoutputsize Number of characters that the harness will use +# for a test's output. +######################################################################## +harness.temp.directory=${ts.home}/tmp +harness.log.port=2000 +harness.log.traceflag=true +harness.executeMode=0 +harness.socket.retry.count=10 +harness.log.delayseconds=1 +harness.maxoutputsize=200000 + + +######################################################################### +# @wsdlRepository1 Location to publish final wsdl files when using +# file URL publishing for Vendor Java EE implementation. +# @wsdlRepository2 Location to publish final wsdl files when using +# file URL publishing for Sun RI. +######################################################################### +wsdlRepository1=${harness.temp.directory}/wsdlRepository1 +wsdlRepository2=${harness.temp.directory}/wsdlRepository2 + +####################################################################### +# @deployment_host.1 name of machine running the JSR 88 deployment +# process for the vendor's Java EE implementation. +# @deployment_host.2 name of machine running the JSR 88 deployment +# process for the Java EE RI. +# @deployment_port.1 deployment port (if applicable) for the vendor's +# Java EE implementation. +# @deployment_port.2 deployment port (if applicable) for the +# Java EE RI. +####################################################################### +deployment_host.1=${orb.host} +deployment_host.2=${orb.host.ri} +deployment_port.1=${impl.vi.port} +deployment_port.2=${impl.ri.port} + +#################################################################### +# Implementation Property Settings for Vendor and RI. These properties +# are used when either porting.ts.deploy.class.1 or porting.ts.deploy.class.2 +# are set to com.sun.ts.lib.implementation.sun.javaee.glassfish.AutoDeployment. +# Note: They are are also used when using the "ant deploy" and "ant undeploy" +# targets outside of running tests. +# +# The CTS provides the glassfish implementation out of the box. +# +# Here are the common properties that need to be defined for the common +# implementation functionality: +# +# @impl.vi This property must be set to the Vendor implementation +# under test. +# @impl.vi.deploy.dir This property must be set to the deploy directory for +# the Vendor implementation. +# @impl.vi.host This property must be set to the admin host where +# the Vendor implementation is running. +# @impl.vi.port This property must be set to the admin port where +# the Vendor implementation is running. +# @impl.ri This property must be set to the RI implementation +# under test. +# @impl.ri.deploy.dir This property must be set to the deploy directory for +# the RI implementation. +# @impl.ri.host This property must be set to the admin host where +# the RI implementation is running. +# @impl.ri.port This property must be set to the admin port where +# the RI implementation is running. +# +# @impl.deploy.timeout.multiplier The time it will wait for deployment to +# succeed or fail +#################################################################### +impl.vi=glassfish +impl.vi.deploy.dir=${s1as.domain}/autodeploy +impl.vi.host=${s1as.admin.host} +impl.vi.port=${s1as.admin.port} + +impl.ri=glassfish +impl.ri.deploy.dir=${ri.domain}/autodeploy +impl.ri.host=${ri.admin.host} +impl.ri.port=${ri.admin.port} + +impl.deploy.timeout.multiplier=240 + + +############################################################### +## These properties are implementations of the pre-1.4 Deployment +## porting interface. The impls defined below use those APIs. +# +# @porting.ts.deploy.class.1 This property must point to an implementation +# of com.sun.ts.lib.porting.TSDeploymentInterface. The default +# value for this property points to an impl that deploys via copying/deleting +# to/from the RI autodeploy directory. More details about setting +# porting.ts.deploy.class.1: +# +# 1. Set this property to deploy/undeploy to/from your impl in +# a custom way. In the case of the RI, it would be set to the following. +# This is the default setting for CTS 8. +# +# porting.ts.deploy.class.1=com.sun.ts.lib.implementation.sun.javaee.glassfish.AutoDeployment +# +# 2. Note that Jakarta Deployment is removed, so do not use either of the following classes: +# com.sun.ts.lib.deliverable.cts.deploy.StandardDeployment14 +# com.sun.ts.lib.porting.TSDeploymentInterface2 +# com.sun.ts.lib.implementation.sun.javaee.SunRIDeployment2 +# +# +# @porting.ts.deploy.class.2 This property must point to an implementation +# of com.sun.ts.lib.porting.TSDeploymentInterface. +# The default value for this property points to an impl that deploys via copying/deleting +# to/from the RI autodeploy directory. This should be left unchanged... +# +# porting.ts.deploy.class.2=com.sun.ts.lib.implementation.sun.javaee.glassfish.AutoDeployment +# +# +############################################################### +porting.ts.deploy.class.1=com.sun.ts.lib.implementation.sun.javaee.glassfish.AutoDeployment +porting.ts.deploy.class.2=com.sun.ts.lib.implementation.sun.javaee.glassfish.AutoDeploymentSeparateVM + +######################################################################## +# @deploy.delay.in.minutes is no longer used, it was for pruned Jakarta Deployment +######################################################################## + +######################################################################## +## Following are no longer used, were settings for pruned Jakarta Deployment +######################################################################## +#deployManagerJarFile.1 +#deployManageruri.1 +#deployManageruname.1 +#deployManagerpasswd.1 + +######################################################################## +## Following are no longer used, were settings for pruned Jakarta Deployment +######################################################################## +#deployManagerJarFile.2 +#deployManageruri.2 +#deployManageruname.2 +#deployManagerpasswd.2 +# +# @porting.ts.deploy2.class.1 +# @porting.ts.deploy2.class.2 +# porting.ts.deploy2.class.1=com.sun.ts.lib.implementation.sun.javaee.SunRIDeployment2 +# porting.ts.deploy2.class.2=com.sun.ts.lib.implementation.sun.javaee.SunRIDeployment2 + + +############################################################### +## These properties must be set to tell the Test harness the +## class names of your porting class implementations. By default +## both property sets below point to Sun RI specific classes. To +## run interoperability tests, the ".2" set of properties should +## always point to Sun RI classes. The ".1" set should point to +## implementations that work in your specific Java EE environment. +# +# @porting.ts.login.class.1 VI of +# com.sun.ts.lib.porting.TSLoginContextInterface +# @porting.ts.url.class.1 VI of +# com.sun.ts.lib.porting.TSURLInterface +# @porting.ts.jms.class.1 VI of +# com.sun.ts.lib.porting.TSJMSAdminInterface +# @porting.ts.HttpsURLConnection.class.1 VI of +# com.sun.ts.lib.porting.TSHttpsURLConnectionInterface +# @porting.ts.login.class.2 RI of +# com.sun.ts.lib.porting.TSLoginContextInterface +# @porting.ts.url.class.2 RI of +# com.sun.ts.lib.porting.TSURLInterface +# @porting.ts.jms.class.2 RI of +# com.sun.ts.lib.porting.TSJMSAdminInterface +# @porting.ts.HttpsURLConnection.class.2 RI of +# com.sun.ts.lib.porting.TSHttpsURLConnectionInterface +############################################################### +porting.ts.login.class.1=com.sun.ts.lib.implementation.sun.javaee.GlassFishLoginContext +porting.ts.url.class.1=com.sun.ts.lib.implementation.sun.common.SunRIURL +porting.ts.jms.class.1=com.sun.ts.lib.implementation.sun.javaee.SunRIJMSAdmin +porting.ts.HttpsURLConnection.class.1=com.sun.ts.lib.implementation.sun.javaee.SunRIHttpsURLConnection + +##Porting class names for Sun RI Java EE Implementation #2 (must be Sun's RI) +porting.ts.login.class.2=com.sun.ts.lib.implementation.sun.javaee.GlassFishLoginContext +porting.ts.url.class.2=com.sun.ts.lib.implementation.sun.common.SunRIURL +porting.ts.jms.class.2=com.sun.ts.lib.implementation.sun.javaee.SunRIJMSAdmin +porting.ts.HttpsURLConnection.class.2=com.sun.ts.lib.implementation.sun.javaee.SunRIHttpsURLConnection + +############################################################## +# @namingServiceHost1 Naming Service host name for the +# Vendor's Implementation (VI) +# @namingServicePort1 Naming Service port for the VI +# @namingServiceHost2 Naming Service host name for the +# Reference Implementation (RI) +# @ namingServicePort2 Naming Service port for the RI +############################################################## +namingServiceHost1=${orb.host} +namingServicePort1=${orb.port} +namingServiceHost2=${orb.host.ri} +namingServicePort2=${orb.port.ri} + +############################################################## +# @certLoginUserAlias User alias for certificate based login. +# This property is used in mutual authentication to pickup the +# certificate based on the user alias. +############################################################## +certLoginUserAlias=cts + +##################################################################### +## The following properties must be set prior to running the Servlet +## or JSP API tests and interoperability tests. +## +## These properties must specify the host and port of the web server, +## in which the servlets and JSPs are deployed. +# +# @webServerHost hostname for the Vendor's Java EE Web Server +# @webServerPort port number of the Vendor's Java EE Web Server +# @webServerHost.2 hostname for the Java EE RI Web Server +# @webServerPort.2 port number of the Java EE RI Web Server +# @ServletClientThreads The ServletClientThreads property configures +# the number of threads used by the client for +# the SingleThreadModel servlet test. If the +# container implementation supports pooling of +# SingleThreadModel servlets, set the value of +# ServletClientThreads to twice the value of +# the default servlet instance pool size. If +# the container implementation only maintains +# a single instance of a SingleTheadModel +# servlet, leave the default value of 2. +##################################################################### +webServerHost=${orb.host} +webServerPort=8080 +webServerHost.2=${orb.host.ri} +webServerPort.2=8181 +ServletClientThreads=2 + +#################################################################### +# @EJBServer1TxInteropEnabled Transaction interoperability settings +# for Vendor Java EE EJB Server +# @EJBServer2TxInteropEnabled Transaction interoperability settings +# for Java EE RI EJB Server +#################################################################### +EJBServer1TxInteropEnabled=true +EJBServer2TxInteropEnabled=true + +############################################################### +## These properties are used for the Connector specific tests. +## +## You must be able to deploy the following resource adapters +## on your Java EE server. +############################################################### + +## JNDI name bindings. You should not change these. The TSDeploymentInterface +## will pass these values as a properties object. See the SunRIDeployment.java +## file for usage patterns. +whitebox-tx=java:comp/env/eis/whitebox-tx +whitebox-notx=java:comp/env/eis/whitebox-notx +whitebox-xa=java:comp/env/eis/whitebox-xa +whitebox-tx-param=java:comp/env/eis/whitebox-tx-param +whitebox-notx-param=java:comp/env/eis/whitebox-notx-param +whitebox-xa-param=java:comp/env/eis/whitebox-xa-param +whitebox-anno_no_md=java:comp/env/eis/whitebox-anno_no_md +whitebox-ibanno_no_md=java:comp/env/eis/whitebox-ibanno_no_md +whitebox-mixedmode=java:comp/env/eis/whitebox-mixedmode +whitebox-multianno=java:comp/env/eis/whitebox-multianno +whitebox-mdcomplete=java:comp/env/eis/whitebox-mdcomplete +whitebox-permissiondd=java:comp/env/eis/whitebox-permissiondd + +## Embedded resource adapter property +whitebox-embed=java:comp/env/eis/ejb_Deployment_whitebox-tx.rar + +whitebox-embed-xa="__SYSTEM/resource/ejb_Tsr#whitebox-xa#com.sun.ts.tests.common.connector.whitebox.TSConnectionFactory" +tsrJndiName=java:comp/TransactionSynchronizationRegistry +tsrHomeJndiName="java:global/ejb_Tsr/ejb_Tsr_ejb/Tsr" + +## JNDI name bindings for JDBC Connector. +JDBCwhitebox-tx=java:comp/env/eis/JDBCwhitebox-tx +JDBCwhitebox-notx=java:comp/env/eis/JDBCwhitebox-notx +JDBCwhitebox-xa=java:comp/env/eis/JDBCwhitebox-xa +JDBCwhitebox-tx-param=java:comp/env/eis/JDBCwhitebox-tx-param +JDBCwhitebox-notx-param=java:comp/env/eis/JDBCwhitebox-notx-param +JDBCwhitebox-xa-param=java:comp/env/eis/JDBCwhitebox-xa-param + +######################################################################### +## Resource adapter configuration values. You must modify these values +## to plug your JDBC driver into the TS JDBCwhitebox resource adapter. +## +## When you run the XA tests (src/com/sun/ts/tests/xa), you must +## configure this resource adapter to use a database. +## +# @xa.properties: These are the properties required by the XA driver. The +# managed connection factory will set these properties via +# reflection on the class specified by the +# xa.xadatasource.class property. +# +# Note: The xa.properties value is the set of properties that will be set on +# your XA JDBC driver (the class denoted by the xa.xadatasource.class property). +# See section 9.4.1 of the JDBC 3.0 specification for more details. +# +# When specifying the xa.properties property please escape the appropriate +# characters. The xa.properties value needs to be treated as a single property +# even though it is made up of many properties. The properties need to be +# separated by :'s and the names and values to be separated by ='s. +# We also need any values that contain colons or equals that do not +# need to be interrpretted to be inside single quotes. Anything in +# single quotes will be treated as a string literal. +# +# For example: The following xa.properties property: +# +# xa.properties=user=admin:password=some-password:DatabaseName='jdbc:pointbase:server://localhost:9092/cts,new' +# +# Would result in the following setters being called on the supplied XA JDBC driver denoted +# by the xa.xadatasource.class property. +# +# XADataSource.setUser("admin"); +# XADataSource.setPassword("some-password"); +# XADataSource.setDatabaseName("jdbc:pointbase:server://localhost:9092/cts,new"); +# +# Please map the property xa.properties to the property name XAProps and map the +# xa.xadatasource.class property to the property name XADataSourceName. This will +# ensure the appropriate setters will be called to make these properties +# available to the managed connection factory. See section 17.4.2 of the Connector +# specification version 1.5. +# +# @xa.xadatasource.class: The implementation of the XADataSource interface. +# This class is your XA JDBC driver. +# Please note: this class and any dependent classes +# must be accessible by the CTS libraries in the app +# server's extension directory. +# +# @connector_connectionURL: The URL for your JDBC driver. Should be the +# same as the one used for the rest of the TS. +# +######################################################################### + +### Cloudscape/Derby properties for XA +xa.properties="user\\\=${derbyEmbedded.user}\\\:password\\\=${derbyEmbedded.passwd}\\\:DatabaseName\\\=${derbyEmbedded.dbName}" +xa.xadatasource.class=org.apache.derby.jdbc.EmbeddedXADataSource +connector_connectionURL="jdbc\\:derby\\:${derbyEmbedded.dbName}\\;create\\=true" + +######################################################################### +## The following properties must be set before running any security +## related tests. The properties user, password, authuser, authpassword, +## and nobodyuser must be set. +## +## The value for user, password, authuser, and authpassword need to be set +## exactly as they are set in the container/server. +# +# @user User defined to exercise rolemapping feature +# @password Associated password for the user +# @authuser User defined to exercise rolemapping feature +# @authpassword Associated password for the authuser +# @user_vi Username for the vendor implementation used in +# interop tests +# @password_vi Associated password for the VI user +# @user_ri Username for the reference implementation used in +# interop tests +# @password_ri Associated password for the RI user +# @nobodyuser This value must be the same value returned by a call to +# getCallerPrincipal().getName() from the ejb-tier when +# an unauthenticated caller in the web tier invokes an +# ejb method. +######################################################################### +user=j2ee +password=j2ee +authuser=javajoe +authpassword=javajoe +user_vi=j2ee_vi +password_vi=j2ee_vi +user_ri=j2ee_ri +password_ri=j2ee_ri +nobodyuser=guest + +############################################################### +# @securedWebServicePort must be set to run secbasicssl and +# csiv2 tests. Set this property with your application +# server's secured webservice port. +# @securedWebServicePort.2 points to the secured webservice +# port in Sun's Reference Implementation(RI). +############################################################### +securedWebServicePort=1044 +securedWebServicePort.2=1045 + +############################################################################### +# @client.cert.test.jdk.tls.client.protocols JDK 11 in TLSv1.3 does not support +# Post-Handshake Authentication, so TLSv1.2 must be used +# for client-cert authentication to work. +############################################################################### +client.cert.test.jdk.tls.client.protocols=TLSv1.2 + +############################################################### +# @login This property must be set to run appclient security +# tests +############################################################### +login=default + +################################################################################ +##These properties are needed for jms tests. +# +# @jms_timeout - this is the amount of time in milliseconds that synchronous +# receives will wait for a message +############################################################################### +jms_timeout=10000 + +######################################################################### + +############################################################################### +## These properties are needed for the EJB timer tests. +# +# @ejb_timeout - this is the amount of time in milliseconds that duration will +# be set for an ejbtimeout callback method +# +# @ejb_wait - this is the amount of time in milliseconds that the client will +# wait for ejbtimeout callback method results +############################################################################## +ejb_timeout=30000 +ejb_wait=60000 + +############################################################################### +## This property is needed for ejb30 stateful timeout tests. +# @test.ejb.stateful.timeout.wait.seconds - the minimum amount of time in seconds +# the test client waits before verifying the status of the target stateful +# bean. Its value must be an integer number. Its default value in ts.jte +# file is 480 seconds. It may be set to a smaller number (e.g., 240 seconds) +# to speed up testing, depending on the stateful timeout implementation +# strategy in the target server. +# +# For these stateful timeout tests, the property javatest.timeout.factor +# must be set to a value such that the JavaTest harness does not timeout +# before the test completes. Usually setting javatest.timeout.factor to +# 2.0 or greater should suffice. +############################################################################### +test.ejb.stateful.timeout.wait.seconds=480 + +################################################################### +# @log.file.location This property is used by JACC tests to create +# and analyze provider logs. Specify the log directory in which +# your appserver generates logs. +################################################################### +log.file.location=${vi.log.file.location} + + +################################################################### +################################################################### +################################################################### +## PROPERTIES USERS WILL NOT HAVE TO SET LIVE BELOW +################################################################### +################################################################### +################################################################### + +## +## The directory seperator for the platform. User should not change +## this property. +## +dirsep=/ + +##build level +##1: compile only +##2: compile and build component archives (e.g., jar's, war's) +##3: compile and build component and application archives +##default is set to 3 +build.level=3 + +deliverable.class=com.sun.ts.lib.deliverable.cts.CTSDeliverable + +################################################################### +## Deliverables wanting ts.* packaging tasks to add extension list +## attributes to the manifest files must set this property to true. +################################################################### +create.manifest.extension.entries=true + +###################################################################### +## Deliverables must set this property to the name of the deliverable +## specific library jar file (iff create.manifest.extension.entries +## is set to true) +###################################################################### +tslib.name=cts + +############################################################### +## These properties are used by connector tests and are non configurable +## and must specify valid username,password to establish TSeis connection. +############################################################### +rauser1=cts1 +rapassword1=cts1 +rauser2=cts2 +rapassword2=cts2 + +############################################################### +## These properties are for JSTL +############################################################### +jstl.db.user=${user1} +jstl.db.password=${password1} + +############################################################### +## This command is only used when quickly checking any servlet +## or jsp related tests. The test clients will be run in +## the same JVM as JavaTest in this case. This mode can be +## enabled by passing "-Dsame.jvm=true" to the runclient or gui +## targets. NOTE: This option is only to be used for sanity +## checking and not when running CTS for compatibility. +############################################################### +command.testExecuteSameJVM=com.sun.ts.lib.harness.ExecuteTSTestSameJVMCmd \ + $testExecuteClass $testExecuteArgs + +############################################################### +## These properties are used for the JDBC specific tests, +## they do not need to be changed. +############################################################### +DriverManager=no +Driver=DriverOnlyUsedIfDriverManagerIsYes +db1=db1OnlyUsedIfDriverManagerIsYes +db2=db1OnlyUsedIfDriverManagerIsYes +ptable=ctstable1 +ftable=ctstable2 +cofSize=5 +cofTypeSize=5 +binarySize=24 +varbinarySize=48 +longvarbinarySize=50 + +ts_home=${ts.home} + +####################################################################### +## platform.mode is used by jpa tests to know whether to use +## the Java EE Programming Model for service and port access. +## platform.mode=jakartaEE Java EE Programming Model +###################################################################### +platform.mode=jakartaEE + +########################################################################### +# tools.jar should be set to the location of the tools.jar from the installed +# jdk +########################################################################### +tools.jar=/home/jenkins/agent/workspace/jakartaee-tck_master/modules/webservices-tools.jar:/home/jenkins/agent/workspace/jakartaee-tck_master/modules/webservices-api.jar + +########################################################################### +# various flags used by the generation tools +########################################################################### +wsgen.ant.classname= +wsgen.classpath=${javaee.classes}${pathsep}${tools.jar} +wsgen.verbose=true +wsgen.debug=false +wsimport.ant.classname= +wsimport.classpath=${javaee.classes}${pathsep}${tools.jar} +wsimport.verbose=true +wsimport.debug=false +wsimport.jvmargs= + +########################################################################### +# various flags used by Suns generation tools +# DO NOT EDIT +########################################################################### +ri.wsgen.ant.classname=com.sun.tools.ws.ant.WsGen +ri.wsgen.classpath=${javaee.classes.ri}${pathsep}${tools.jar} +ri.wsgen.verbose=true +ri.wsgen.debug=false +ri.wsimport.ant.classname=com.sun.tools.ws.ant.WsImport +ri.wsimport.classpath=${javaee.classes.ri}${pathsep}${tools.jar} +ri.wsimport.verbose=true +ri.wsimport.debug=false +ri.wsimport.jvmargs= + +################################# +## Packaging properties for DAOs +################################# +ts.dao.root=com/sun/ts/tests/common/dao + +ts.dao.classes.base=\ + ${ts.dao.root}/InvalidDAOSettingException.class, \ + ${ts.dao.root}/DAOException.class, \ + ${ts.dao.root}/DAO.class, \ + ${ts.dao.root}/DataSourceDAO*.class, \ + ${ts.dao.root}/DAOFactory.class, \ + ${ts.dao.root}/TSDAOFactory*.class, \ + ${ts.dao.root}/coffee/CoffeeBean.class, \ + ${ts.dao.root}/coffee/CoffeeDAO.class, \ + ${ts.dao.root}/coffee/TxCoffeeDAO.class, \ + ${ts.dao.root}/coffee/variants/StringPKCoffeeDAO.class, \ + ${ts.dao.root}/coffee/variants/LongPKCoffeeDAO.class, \ + ${ts.dao.root}/coffee/variants/FloatPKCoffeeDAO.class, \ + ${ts.dao.root}/coffee/variants/CompoundPK.class, \ + ${ts.dao.root}/coffee/variants/CompoundPKCoffeeDAO.class + +ts.dao.classes.impl=\ + ${ts.dao.root}/coffee/DataSourceCoffeeDAO.class, \ + ${ts.dao.root}/coffee/variants/StringPKDSCoffeeDAO.class, \ + ${ts.dao.root}/coffee/variants/LongPKDSCoffeeDAO.class, \ + ${ts.dao.root}/coffee/variants/FloatPKDSCoffeeDAO.class, \ + ${ts.dao.root}/coffee/variants/CompoundPKDSCoffeeDAO.class + +ts.dao.classes.coffee.standard=\ + ${ts.dao.classes.base}, \ + ${ts.dao.classes.impl} + +ts.dao.classes.coffee.txaware=\ + ${ts.dao.classes.base}, \ + ${ts.dao.classes.impl} + +ts.dao.classes.coffee.variants=\ + ${ts.dao.classes.base}, \ + ${ts.dao.classes.impl} + +##################################### +## Packaging properties for Wrappers +##################################### + +ts.wrappers.ejb.root=com/sun/ts/tests/common/ejb/wrappers + +ts.wrappers.web.root=com/sun/ts/tests/common/web + +## Classes to package in ejb-jar for EJB Stateless wrapper +ts.wrappers.classes.stateless.ejb=\ + ${ts.wrappers.ejb.root}/StatelessWrapper.class + +## Classes to package in ejb-jar for EJB Stateful wrapper +ts.wrappers.classes.stateful.ejb=\ + ${ts.wrappers.ejb.root}/StatefulWrapper.class + +## Classes to package in ejb-jar for EJB BMP wrapper +ts.wrappers.classes.bmp.ejb=\ + ${ts.dao.classes.coffee.standard}, \ + ${ts.wrappers.ejb.root}/BMPWrapper.class + +## Classes to package in ejb-jar for EJB CMP 1.1 wrapper +ts.wrappers.classes.cmp11.ejb=${ts.wrappers.ejb.root}/CMP11Wrapper.class + +## Classes to package in ejb-jar for EJB CMP 2.0 wrapper +ts.wrappers.classes.cmp20.ejb=${ts.wrappers.ejb.root}/CMP20Wrapper.class + +## Classes to package in ejb-jar for EJB MDB wrapper +ts.wrappers.classes.mdb.ejb=\ + com/sun/ts/tests/jms/common/JmsUtil.class, \ + com/sun/ts/tests/jms/commonee/ParentMsgBean.class, \ + ${ts.wrappers.ejb.root}/MDBWrapper.class + +## Classes to package in client module for EJB MDB wrapper +ts.wrappers.classes.mdb.client=com/sun/ts/tests/jms/commonee/Client.class + +## Classes to package in ejb-jar for all EJB wrappers +ts.wrappers.classes.all.ejb=\ + ${ts.wrappers.classes.stateless.ejb}, \ + ${ts.wrappers.classes.stateful.ejb}, \ + ${ts.wrappers.classes.bmp.ejb}, \ + ${ts.wrappers.classes.cmp11.ejb}, \ + ${ts.wrappers.classes.cmp20.ejb}, \ + ${ts.wrappers.classes.mdb.ejb} + +## Classes to package in client module for all WEB wrappers +ts.wrappers.classes.web.client=\ + ${ts.wrappers.web.root}/WebServer.class + +## Classes to package in war for all WEB wrappers +ts.wrappers.classes.web.server=\ + ${ts.wrappers.web.root}/WebUtil.class, \ + ${ts.wrappers.web.root}/JSPBeanWrapper.class, \ + ${ts.wrappers.web.root}/ServletWrapper.class + +## Classes to package in client module for Servlet wrapper +ts.wrappers.classes.servlet.client=${ts.wrappers.classes.web.client} + +## Classes to package in war for Servlet wrappers +ts.wrappers.classes.servlet.server=\ + ${ts.wrappers.web.root}/WebUtil.class, \ + ${ts.wrappers.web.root}/ServletWrapper.class + +## Classes to package in client module for JSP wrapper +ts.wrappers.classes.jsp.client=${ts.wrappers.classes.web.client} + +## Classes to package in war for JSP wrappers +ts.wrappers.classes.jsp.server=\ + ${ts.wrappers.web.root}/WebUtil.class, \ + ${ts.wrappers.web.root}/JSPBeanWrapper.class + + +############################################################################### +## DO NOT MODIFY ANY PROPERTIES BELOW THIS LINE. +############################################################################### + +#classpath used by standard deployment server to deploy to the RI in a separate +#VM (DO NOT MODIFY) +ts.standard.deployment.server.classpath=${ant.jars}:${pathsep}${ts.run.classpath.ri}${pathsep}${ts.home}/lib/javatest.jar${pathsep}${ts.home}/lib/jdom-1.1.3.jar${pathsep}${ri.modules}/admin-cli.jar + +harness.deployment.server.port=2002 + +java.naming.factory.initial=com.sun.enterprise.naming.impl.SerialInitContextFactory +org.omg.CORBA.ORBClass=foo +undeploy_redeploy_apps=${UNDEPLOY_REDEPLOY_FLAG} + +############################################################################### +# The following properties are aliases for the old J2EE properties. These +# properties are now named javaee instead of j2ee and will eventually be phased +# out of the CTS. These props are necessary until the props are renamed +# through out all CTS. +############################################################################### +j2ee.home=${javaee.home} +j2ee.home.ri=${javaee.home.ri} + +#################################################################### +## This propertry is passed to any test +## that needs to programatically login from with the appclient +## container and propogate that login context to test code running +## within the EJB container. The value is a no-op. The fact that +## the test includes the property is sufficient to cause the +## EJBVehicleRunner to programatically login. To have a test +## include this property simply add it to the javatest props list +## of the test. +#################################################################### +secured.ejb.vehicle.client=true + +#################################################################### +# This property is used to point to the location of the +# implementation of VariableMapper. The value for sjsas 9.x is +# +# variable.mapper=org.glassfish.expressly.lang.VariableMapperImpl +# +#################################################################### +variable.mapper=org.glassfish.expressly.lang.VariableMapperImpl + +####################################################################### +# Endpoint API test +# +# Port info is obtained dynamically for Endpoint API test. +# Uncomment port range min/max if you want to specify port range +# for Endpoint publish test. +# Server endpoints will be published on ports within this range. +# If you do not want to dynamically obtain the port but wish to publish +# to a fixed static port than make the values below both equal to the +# specific port. +####################################################################### +port.range.min=1025 +port.range.max=10000 + +################################################################ +# @http.server.supports.endpoint.publish +# Does HTTP server-side support endpoint publish API's. +# @http.server.supports.endpoint.publish.2 +# Does the RI HTTP server-side support endpoint publish API's. +# +# http.server.supports.endpoint.publish=(true|false) +# DO NOT TOUCH - value MUST be false for managed environments like Java EE +################################################################ +http.server.supports.endpoint.publish=false +http.server.supports.endpoint.publish.2=false + +########################################################################### +# This property is used by some test clients that need a delay between +# method invocations to server endpoints. The value specified is the amount +# of time the client will delay in seconds. +########################################################################### +client.delay=1 + +####################################################################### +## This persistence unit name is used by jpa/ee/pluggability tests. Its value is the +## same as the name attribute in persistence.xml +###################################################################### +persistence.unit.name=CTS-EM + +############################################################### +# @db.supports.sequence +# +# - This property is used to determine if a database supports +# the use of SEQUENCE. If it does not, this property +# should be set to false so the test is not run. The +# default value is true. +# This value should be set to false for the following databases: +# sybase, mysql, and mssqlserver. +############################################################### +db.supports.sequence=true + +####################################################################### +## @persistence.second.level.caching.supported +## - This property is used to determine if the persistence provider supports +## second level caching. +###################################################################### +persistence.second.level.caching.supported=true + +########################################################################## +## This section contains all properties that are specific to JAX-RS Tests. +## All default values are specific to GlassFish and Jersey. +## +## servlet_adaptor - implementation specific servlet for JAX-RS +## jaxrs_impl_class.dir - Directory that servlet_adaptor locates +## jaxrs_impl_name - used to tag intermediate file names +########################################################################## +servlet_adaptor=org/glassfish/jersey/servlet/ServletContainer.class +jaxrs_impl_lib=${javaee.home}/modules/jakarta.ws.rs-api.jar +jaxrs_impl_name=jersey + + +########################################################################## +# This section contains all properties that are specific to JSR-196 Tests. +# All default values are specific to GlassFish. +# +# @servlet.is.jsr115.compatible This property is used by JASPIC tests +# to determine if the servlet container is a jsr 115 compatible +# container. (true = compatible to JSR 115, false = not compatible.) +# +# @soap.is.jsr115.compatible This may used by JASPIC tests to +# determin if the SOAP container is JSR 115 compatible. This is +# only used when running SOAP profile tests. +# +# @provider.configuration.file +# This property is used by JASPIC tests to configure TestSuite's +# AuthConfig Provider and points at an xml file which is used +# to register the JASPIC test providers into the current +# ACF. This file contaiins known/expected test provider info. +# Only app-context-id element can be edited to suit the +# impl under test. +# +# @schema.file.location +# This points to the directory that the provider-configuration.xsd +# file will live. The provider-configuration.xsd is used to +# describe the provider.configuration.file (above). +# +# @logical.hostname.servlet +# This used to identify the the name of a logical host that +# processes Servlet requests. Servlet requests may be directed to +# a logical host using various physical or virtual host names or +# addresses, and a message processing runtime may be composed of +# multiple logical hosts (This is required to properly identify +# the servlet profiles AppContextId hostname.) +# If a logical.hostname.servlet does not exist, you can set this +# to the default hostname (eg webServerHost). +# +# @logical.hostname.soap +# This property is used to identify the name of the logical host +# that processes soap requests. This hostname is used in server +# side Application context Identifier in soap profile. +# +# @appclient.log.output +# The client logging level for appclient container depends on the +# log level specified in sun-acc.xml +# +# This log level directly affects the output of TSLogger which +# logs the JSR196 SPI calls made in appclient container. +# +# using this property we enable the appclient container's +# logging level to INFO +# +# @vendor.authconfig.factory +# This property specifies vendor's authconfig factory class +# this will be used by JASPIC tests to register TestSuite's +# provider in Vendor's AuthConfig Factory. +# +# For example for SJSAS RI this value is +# +# vendor.authconfig.factory= +# com.sun.enterprise.security.jmac.config.GFAuthConfigFactory +# +########################################################################## +servlet.is.jsr115.compatible=true +soap.is.jsr115.compatible=false +provider.configuration.file=${javaee.home}/domains/domain1/config/ProviderConfiguration.xml +schema.file.location=${javaee.home}/lib/schemas +logical.hostname.servlet=server +logical.hostname.soap=localhost +appclient.log.output=true +vendor.authconfig.factory=com.sun.enterprise.security.jmac.config.GFAuthConfigFactory + +########################################################################## +# @servlet_waittime: Time in seconds to wait after HttpSession expires +# to access the session +# @servlet_async_wait: Time in seconds to wait between sending asynchronous messages +########################################################################## +servlet_waittime=10 +servlet_async_wait=4 + +########################################################################################## +# The following properties are ONLY used if testing a Standalone JMS Resource Adapter. +# Since support for a JMS Resource Adapter is OPTIONAL by the JMS 2.0 Specification +# this funtionality is USE AT YOUR OWN RISK. We WILL NOT support it. Its here in the +# case that a vendor wants to test a Standalone JMS Resource Adapter which is OPTIONAL. +# +# test.sa.jmsra // Set to true ONLY if testing a standalone JMS Resource Adapter +# jmsra.rarfile // Location of the standalone JMS Resource Adapter RAR file +# jmsra.jarfile // Location of the standalone JMS Resource Adapter JAR file +# +# A standalone JMS Resource Adapter requires deployment/configuration to the Vendor +# Implementation under test (Example: Java EE 8 RI). If not testing a standalone JMS +# Resource Adapter then these properties MUST NOT be used and the value of the property +# (test.sa.jmsra) MUST BE SET to false (which is the DEFAULT setting). If you set the +# property (test.sa.jmsra=true) then you are testing a standalone JMS Resource Adapter +# and the (jmsra.rarfile and jmsra.jarfile) properties must point to the location of +# the standalone JMS Resource Adapter RAR and JAR files. During CTS configuration the +# (config.vi) ant task will call another script that will deploy the standalone JMS +# Resource Adapter, configure the standalone JMS Resource Adapter, create the JMS +# connector connection pools, create the JMS connector resources, and finally create +# the JMS administration objects. The ant scripts that handles all of these steps for +# the (Java EE 8 RI) are the following: +# +# $TS_HOME/bin/xml/impl/glassfish/jmsra.xml +# $TS_HOME/bin/xml/impl/glassfish/templates/create.jmsra.template +# +# These scripts work for the Standalone Generic JMS Resource Adapter (GenericJMSRA) +# located at: (http://genericjmsra.java.net/). If testing another standalone JMS +# Resource Adapter then these scripts will need to be rewritten/modified for that +# JMS Resource Adapter. +# +# Here is the summary of steps of what the (jmsra.xml) script does. It configures the JMS +# resource adapter by doing a resource-adapter-config, it deploys the JMS resource adapter +# RAR file specified in the "jmsra.rarfile" property to the (Java EE 8 RI), it copies the +# JMS Resource Adapter JAR file specified in the "jmsra.jarfile" property to the (Java EE +# 8 RI) lib directory under $JAVAEE_HOME/lib. It copies some of the JMS client library jars +# to the $JAVAEE_HOME/lib directory. it then creates the JMS connector connection pools, +# the JMS connector resources, and the JMS administration objects that are needed by CTS. +# When the (config.vi) ant task completes the Java EE 8 environment will be ready to run +# the JMS CTS tests. One final step is needed to the JMS MDB CTS tests which is to modify +# the sun-ejb-jar runtime xml files by adding the deployment info. +# +# Here are the manual steps for the Standalone Generic JMS Resource Adapter (GenericJMSRA) +# after the (config.vi) ant task completes. +# +# (1) Edit the ts.jte file and add the following: +# Add "-Dgenericra.inAppClientContainer=true" to the "command.testExecuteAppClient" +# property and then add "${pathsep}${jmsra.jarfile}" to the end of APPCPATH variable +# in the same "command.testExecuteAppClient" property. You can refer to the Generic +# JMS Resource Adapter (GenericJMSRA) user guide for more information on this. +# (2) Modify the sun-ejb-jar runtime xml files for the JMS MDB tests by adding the +# deployment info. +# cd $TS_HOME/bin +# ant -f xml/impl/glassfish/jmsra.xml modify-jmsmdbejbxml +# (3) Now you can run the JMS CTS tests. After you are done running the JMS CTS tests ypu +# can unconfigure the Java EE 8 RI and restore the original sun-ejb-jar runtime xml +# files. +# cd $TS_HOME/bin +# ant -f xml/impl/glassfish/jmsra.xml restore-jmsmdbejbxml +# ant clean.vi +# (4) Finally reset the properties back to there defaults. Set (test.sa.jmsra=false) and unset +# (jmsra.rarfile and jmsra.jarfile). Remove the "-Dgenericra.inAppClientContainer=true" +# and "${pathsep}${jmsra.jarfile}" from the ts.jte file from step 1. +# +# If using a different Java EE environment from the Java EE RI than a vendor will need to +# provide his own JMS Resource Adapter support scripts needed for that Java EE environment. +# It can reuse/modify the (Java EE 8 RI) scripts above or simply write their own scripts. A +# vendor can use the Java EE 8 RI or any Java EE 8 implementation of its choice as the Java +# EE 8 environment for testing its Standalone JMS Resource Adapter. The Standalone JMS Resource +# Adapter MUST pass all of the JMS CTS tests under: (TS_HOME/src/com/sun/ts/tests/jms) in order +# to be declared fully JMS 2.0 compliant. +# +# See the JMS 2.0 Specification and the CTS 8 User's Guide for more information. +########################################################################################## +test.sa.jmsra=false +jmsra.rarfile= +jmsra.jarfile= + +########################################################################################## +# The following property specifies the name of the JMS Resource Adapter under test. The +# Java EE 8 RI contains its own builtin JMS Resource Adapter (JMSRA). Its name is "jmsra". +# So we set (jmsra.name=jmsra) as the default value for the Java EE 8 RI. +# +# Change the value of this property for the JMS Resource Adapter that is under test. This +# hardcoded value is specific to the Java EE 8 RI. +# +# jmsra.name // Name of JMS Resource Adapter for the implementation under test +########################################################################################## +jmsra.name=jmsra + + +########################################################################## +# The following property is for WebSocket tests. +# +# @ws_wait: waiting time in seconds for socket to send/receive a message +########################################################################## +ws_wait=5 + +############################################################################################ +# These following properties are needed for Javamail tests. +# +# @mailHost hostname of the mail server +# @mailuser1 must be set to a valid email address where test mails will be sent to. +# @mailFrom reply to address set in the email messages generated by the javamail tests +# @javamail.username user account name on server +# @javamail.password password for the mailuser1 +# +############################################################################################ + +mailHost=localhost +mailuser1=user01@james.local +mailFrom=user01@james.local +javamail.password=1234 +smtp.port=1025 +imap.port=1143 + +### User need not change the following javamail properties + +javamail.username=${mailuser1} +transport_protocol=smtp + +# mail server used to run tests against. +javamail.server=${mailHost} + +# protocol used to run the Store tests +javamail.protocol=imap + +# mail server used to run tests against. +javamail.transport.server=$javamail.server + +# rootpath of test mailboxes +javamail.root.path=mailboxes + +# note the mailbox 'test1' +javamail.mailbox=test1 + +# search pattern used by list tests in Folder +javamail.listpattern=test + +# your own login account name +smtp.username=$javamail.username + +# smtp domain name ; i.e. oracle.com +smtp.domain=$javamail.server + +# smtp From address +smtp.from=$smtp.username + +# smtp To address +smtp.to=$smtp.username + +# io file +iofile=MailIOFile.txt + +##################################################################################################### +#### Properties used by ldap installation +# @ldap.server -- The type of ldap server. unboundid is supported by now +# @ldap.install.server -- Install ldap server by CTS script or not +# @ldap.ldif.file -- The ldif file containing data seeded in ldap server +# +# @unboundid.installation.package -- The package for installing Unboundid ldap server +######################################################################################################## +ldap.server=unboundid +ldap.install.server=true +ldap.ldif.file=${ts.home}/bin/ldap.ldif + +unboundid.installation.package=${ts.home}/lib/unboundid-ldapsdk.jar + +##################################################################################################### +# Properties used for JPA 2.2 Tests +######################################################################################################## +persistencs.properties.file=${bin.dir}/jpa-provider.properties +persistence.unit.name.2=JPATCK2 + +jpa.provider.implementation.specific.properties=eclipselink.logging.level\=OFF +jakarta.persistence.provider=org.eclipse.persistence.jpa.PersistenceProvider +jakarta.persistence.jdbc.driver=${derby.driver} +jakarta.persistence.jdbc.url=${derby.url} +jakarta.persistence.jdbc.user=${derby.user} +jakarta.persistence.jdbc.password=${derby.passwd} diff --git a/glassfish-runner/appclient-platform-tck/jakartaeetck/bin/tssql.stmt b/glassfish-runner/appclient-platform-tck/jakartaeetck/bin/tssql.stmt new file mode 100644 index 0000000000..2d279c5402 --- /dev/null +++ b/glassfish-runner/appclient-platform-tck/jakartaeetck/bin/tssql.stmt @@ -0,0 +1,805 @@ +# @(#)ctssql.dml.derby 1.16 01/06/20 +#------------------------------------------------- +#All sql DML statements used in the test cases against derby +#------------------------------------------------- + + + +Dbschema_Tab1_Insert=insert into ctstable2 values(?, ?, ?, ?) +Dbschema_Tab2_Insert=insert into ctstable1 values(?, ?) + +Dbschema_Tab1_Delete=delete from ctstable2 +Dbschema_Tab2_Delete=delete from ctstable1 + +Dbschema_Concur_Insert=insert into concurrencetable values(?, ?) +Dbschema_Concur_Delete=delete from concurrencetable + +#****************************************************************** +# SQL Statements for creating procedures in side the test. +#****************************************************************** + +UpdCoffee_Proc=create method alias UpdCoffee_Proc for com.sun.ts.lib.tests.jdbc.CS_Procs.UpdCoffee_Proc + +#****************************************************************** +# SQL Statements for deleting tables for appropriate JDBC Datatypes +#****************************************************************** + +Numeric_Tab_Delete=delete from Numeric_Tab + +Decimal_Tab_Delete=delete from Decimal_Tab + +Double_Tab_Delete=delete from Double_Tab + +Float_Tab_Delete=delete from Float_Tab + +Real_Tab_Delete=delete from Real_Tab + +Bit_Tab_Delete=delete from Bit_Tab + +Smallint_Tab_Delete=delete from Smallint_Tab + +Tinyint_Tab_Delete=delete from Tinyint_Tab + +Integer_Tab_Delete=delete from Integer_Tab + +Bigint_Tab_Delete=delete from Bigint_Tab + +Char_Tab_Delete=delete from Char_Tab + +Varchar_Tab_Delete=delete from Varchar_Tab + +Longvarchar_Tab_Delete=delete from Longvarchar_Tab + +Longvarcharnull_Tab_Delete=delete from Longvarcharnull_Tab + +Date_Tab_Delete=delete from Date_Tab + +Time_Tab_Delete=delete from Time_Tab + +Timestamp_Tab_Delete=delete from Timestamp_Tab + +Binary_Tab_Delete=delete from Binary_Tab + +Varbinary_Tab_Delete=delete from Varbinary_Tab + +Longvarbinary_Tab_Delete=delete from Longvarbinary_Tab + + + +#**************************************************** +# SQL Statements for inserting values into the tables +#**************************************************** + +Numeric_Tab_Insert=insert into Numeric_Tab values(999999999999999,0.000000000000001, null) + +Decimal_Tab_Insert= insert into Decimal_Tab values(999999999999999,0.000000000000001, null) + +#Double_Tab_Insert=insert into Double_Tab values(1.7976931348623157E308,4.9E-324,null) +Double_Tab_Insert=insert into Double_Tab values(1.0E125,1.0E-130,null) + +Float_Tab_Insert=insert into Float_Tab values(3.4028235E37,1.4E-45,null) + +Real_Tab_Insert= insert into Real_Tab values(3.402E38,1.4E-37, null) + +Bit_Tab_Insert=insert into Bit_Tab values(true,false,null) + +Smallint_Tab_Insert= insert into Smallint_Tab values(32767,-32768,null) + +Tinyint_Tab_Insert=insert into Tinyint_Tab values(127,0,null) + +Integer_Tab_Insert=insert into Integer_Tab values(2147483647,-2147483648,null) + +Bigint_Tab_Insert= insert into Bigint_Tab values(9223372036854775807,-9223372036854775808,null) + +Char_Tab_Insert= insert into Char_Tab values('Test Coffee', null) + +Varchar_Tab_Insert= insert into Varchar_Tab values('Test Coffee',null) + +Longvarchar_Tab_Insert= insert into Longvarchar_Tab values('Test Coffee') + +Longvarcharnull_Tab_Insert= insert into Longvarcharnull_Tab values(null) + +Date_Tab_Insert=insert into Date_Tab values({d '1999-05-05'}, null) + +Time_Tab_Insert= insert into Time_Tab values({t '12:59:59'}, null) + +Timestamp_Tab_Insert= insert into Timestamp_Tab values({ts '1999-12-31 12:59:59'}, null) + +Binary_Tab_Insert= insert into Binary_Tab values(null) + +Varbinary_Tab_Insert= insert into Varbinary_Tab values(null) + +Longvarbinary_Tab_Insert= insert into Longvarbinary_Tab values(null) + +Boolean_Tab_Insert = insert into Boolean_Tab values(true,false,null) + + +#***************************************************** +# SQL Statements for retrieving values from the tables +#***************************************************** + +SelCoffeeAll=SELECT COF_NAME, PRICE FROM ctstable2 +SelCoffeeNull=select * from ctstable2 where TYPE_ID=0 + +Numeric_Query_Max=Select MAX_VAL from Numeric_Tab +Numeric_Query_Min=Select MIN_VAL from Numeric_Tab +Numeric_Query_Null=Select NULL_VAL from Numeric_Tab + +Decimal_Query_Max=Select MAX_VAL from Decimal_Tab +Decimal_Query_Min=Select MIN_VAL from Decimal_Tab +Decimal_Query_Null=Select NULL_VAL from Decimal_Tab + +Double_Query_Max=Select MAX_VAL from Double_Tab +Double_Query_Min=Select MIN_VAL from Double_Tab +Double_Query_Null=Select NULL_VAL from Double_Tab + +Float_Query_Max=Select MAX_VAL from Float_Tab +Float_Query_Min=Select MIN_VAL from Float_Tab +Float_Query_Null=Select NULL_VAL from Float_Tab + +Real_Query_Max=Select MAX_VAL from Real_Tab +Real_Query_Min=Select MIN_VAL from Real_Tab +Real_Query_Null=Select NULL_VAL from Real_Tab + +Bit_Query_Max=Select MAX_VAL from Bit_Tab +Bit_Query_Min=Select MIN_VAL from Bit_Tab +Bit_Query_Null=Select NULL_VAL from Bit_Tab + +Smallint_Query_Max=Select MAX_VAL from Smallint_Tab +Smallint_Query_Min=Select MIN_VAL from Smallint_Tab +Smallint_Query_Null=Select NULL_VAL from Smallint_Tab + +Tinyint_Query_Max=Select MAX_VAL from Tinyint_Tab +Tinyint_Query_Min=Select MIN_VAL from Tinyint_Tab +Tinyint_Query_Null=Select NULL_VAL from Tinyint_Tab + +Integer_Query_Max=Select MAX_VAL from Integer_Tab +Integer_Query_Min=Select MIN_VAL from Integer_Tab +Integer_Query_Null=Select NULL_VAL from Integer_Tab + +Bigint_Query_Max=Select MAX_VAL from Bigint_Tab +Bigint_Query_Min=Select MIN_VAL from Bigint_Tab +Bigint_Query_Null=Select NULL_VAL from Bigint_Tab + +Char_Query_Name=Select COFFEE_NAME from Char_Tab +Char_Query_Null=Select NULL_VAL from Char_Tab + +Varchar_Query_Name=Select COFFEE_NAME from Varchar_Tab +Varchar_Query_Null=Select NULL_VAL from Varchar_Tab + +Longvarchar_Query_Name=Select COFFEE_NAME from Longvarchar_Tab +Longvarchar_Query_Null=Select NULL_VAL from Longvarcharnull_Tab + +Date_Query_Mfg=Select MFG_DATE from Date_Tab +Date_Query_Null=Select NULL_VAL from Date_Tab + +Time_Query_Brk=Select BRK_TIME from Time_Tab +Time_Query_Null=Select NULL_VAL from Time_Tab + +Timestamp_Query_In=Select IN_TIME from Timestamp_Tab +Timestamp_Query_Null=Select NULL_VAL from Timestamp_Tab + +Binary_Query_Val=Select BINARY_VAL from Binary_Tab +Varbinary_Query_Val=Select VARBINARY_VAL from Varbinary_Tab +Longvarbinary_Query_Val=Select LONGVARBINARY_VAL from Longvarbinary_Tab + + + + + +#*************************************** +# SQL Statements for updating the tables +#*************************************** + +Numeric_Tab_Max_Update=update Numeric_Tab set MAX_VAL=? +Numeric_Tab_Min_Update=update Numeric_Tab set MIN_VAL=? +Numeric_Tab_Null_Update=update Numeric_Tab set NULL_VAL=? + +Decimal_Tab_Max_Update=update Decimal_Tab set MAX_VAL=? +Decimal_Tab_Min_Update=update Decimal_Tab set MIN_VAL=? +Decimal_Tab_Null_Update=update Decimal_Tab set NULL_VAL=? + +Double_Tab_Max_Update=update Double_Tab set MAX_VAL=? +Double_Tab_Min_Update=update Double_Tab set MIN_VAL=? +Double_Tab_Null_Update=update Double_Tab set NULL_VAL=? + +Float_Tab_Max_Update=update Float_Tab set MAX_VAL=? +Float_Tab_Min_Update=update Float_Tab set MIN_VAL=? +Float_Tab_Null_Update=update Float_Tab set NULL_VAL=? + +Real_Tab_Max_Update=update Real_Tab set MAX_VAL=? +Real_Tab_Min_Update=update Real_Tab set MIN_VAL=? +Real_Tab_Null_Update=update Real_Tab set NULL_VAL=? + +Bit_Tab_Max_Update=update Bit_Tab set MAX_VAL=? +Bit_Tab_Min_Update=update Bit_Tab set MIN_VAL=? +Bit_Tab_Null_Update=update Bit_Tab set NULL_VAL=? + +Smallint_Tab_Max_Update=update Smallint_Tab set MAX_VAL=? +Smallint_Tab_Min_Update=update Smallint_Tab set MIN_VAL=? +Smallint_Tab_Null_Update=update Smallint_Tab set NULL_VAL=? + +Tinyint_Tab_Max_Update=update Tinyint_Tab set MAX_VAL=? +Tinyint_Tab_Min_Update=update Tinyint_Tab set MIN_VAL=? +Tinyint_Tab_Null_Update=update Tinyint_Tab set NULL_VAL=? + +Integer_Tab_Max_Update=update Integer_Tab set MAX_VAL=? +Integer_Tab_Min_Update=update Integer_Tab set MIN_VAL=? +Integer_Tab_Null_Update=update Integer_Tab set NULL_VAL=? + +Bigint_Tab_Max_Update=update Bigint_Tab set MAX_VAL=? +Bigint_Tab_Min_Update=update Bigint_Tab set MIN_VAL=? +Bigint_Tab_Null_Update=update Bigint_Tab set NULL_VAL=? + +Char_Tab_Name_Update=update Char_Tab set COFFEE_NAME=? +Char_Tab_Null_Update=update Char_Tab set NULL_VAL=? + +Varchar_Tab_Name_Update=update Varchar_Tab set COFFEE_NAME=? +Varchar_Tab_Null_Update=update Varchar_Tab set NULL_VAL=? + +Longvarchar_Tab_Name_Update=update Longvarchar_Tab set COFFEE_NAME=? +Longvarchar_Tab_Null_Update=update Longvarcharnull_Tab set NULL_VAL=? + +Date_Tab_Mfgdate_Update=update Date_Tab set MFG_DATE=? +Date_Tab_Null_Update=update Date_Tab set NULL_VAL=? + +Time_Tab_Brktime_Update=update Time_Tab set BRK_TIME=? +Time_Tab_Null_Update=update Time_Tab set NULL_VAL=? + +Timestamp_Tab_Intime_Update=update Timestamp_Tab set IN_TIME=? +Timestamp_Tab_Null_Update=update Timestamp_Tab set NULL_VAL=? + +Binary_Tab_Val_Update=update Binary_Tab set BINARY_VAL=? +Varbinary_Tab_Val_Update=update Varbinary_Tab set VARBINARY_VAL=? +Longvarbinary_Tab_Val_Update=update Longvarbinary_Tab set LONGVARBINARY_VAL=? + +CoffeeTab_Query=select COF_NAME,PRICE from ctstable2 where TYPE_ID=? +CoffeeTab_Delete=delete from ctstable2 where KEY_ID=? + +CoffeeTab_Select=select PRICE from ctstable2 where KEY_ID=? +CoffeeTab_Update=update ctstable2 set PRICE=PRICE*20 where TYPE_ID=? + +Ins_Coffee_Tab=insert into ctstable2 values (9,'COFFEE-9',9.0,5) +Del_Coffee_Tab=delete from ctstable2 where KEY_ID=9 +Upd_Coffee_Tab=update ctstable2 set PRICE=PRICE*20 where TYPE_ID=1 +Sel_Coffee_Tab=select PRICE from ctstable2 where KEY_ID>4 + +#********************************************************************************** +# is used in ResultSet. To update with BIT value. +#********************************************************************************** +Update_decimal_tab=update Decimal_Tab set MAX_VAL=1.0, MIN_VAL=0.0, NULL_VAL=null +Update_numeric_tab=update Numeric_Tab set MAX_VAL=1.0, MIN_VAL=0.0, NULL_VAL=null +Update_char_tab1=update Char_Tab set COFFEE_NAME=1, NULL_VAL=null +Update_char_tab2=update Char_Tab set COFFEE_NAME=0, NULL_VAL=null +Update_varchar_tab1=update Varchar_Tab set COFFEE_NAME=1, NULL_VAL=null +Update_varchar_tab2=update Varchar_Tab set COFFEE_NAME=0, NULL_VAL=null + +#********************************************************************************** +# is used in BatchUpdate Tests. +#********************************************************************************** +BatchUpdate_Query=select count(*) from ctstable2 where TYPE_ID=? +BatchUpdate_Delete=delete from ctstable2 +BatchInsert_String=insert into ctstable2 values(?,?,?,?) + +#********************************************************************************** +# is used in BatchUpdate exception +#********************************************************************************** +Coffee_InsTab=insert into ctstable2 values (9,'COFFEE-9',9.0,5) +Coffee_DelTab=delete from ctstable2 where KEY_ID=2 +Coffee_UpdTab=update ctstable2 set PRICE=PRICE*20 where TYPE_ID=1 +Coffee_SelTab=select PRICE from ctstable2 where KEY_ID>4 +Coffee_Inscount_Query=select count(*) from ctstable2 where KEY_ID=9 +Coffee_Delcount_Query=select count(*) from ctstable2 where KEY_ID=2 +Coffee_Updcount_Query=select count(*) from ctstable2 where TYPE_ID=1 +CoffeeTab_Continue1=update ctstable2 set KEY_ID=?, COF_NAME=? where COF_NAME=? +CoffeeTab_ContinueSelect1=Select count(*) from ctstable2 where COF_NAME in ('Continue-1') +CoffeeTab_Continue2=update ctstable2 set KEY_ID=1,COF_NAME = 'Continue-1' where COF_NAME='COFFEE-1' +CoffeeTab_Continue3=update ctstable2 set KEY_ID=1 ,COF_NAME = 'Invalid' where COF_NAME='COFFEE-3' +CoffeeTab_Continue4=update ctstable2 set KEY_ID=2,COF_NAME = 'Continue-3' where COF_NAME='COFFEE-2' +Coffee_Proc1=create procedure Coffee_Proc1(keyid in Numeric) as begin update ctstable2 set KEY_ID=keyid,COF_NAME = 'Continue-1' where KEY_ID=1;end; +Coffee_Proc1_Delete=Drop procedure Coffee_Proc1 +#********************************************************************************** +# is used in DataTruncation exception +#********************************************************************************** +DTrunc_Ins_Coffee=insert into ctstable2 values (10,'kumarjadjsjdhsjhdjsjdajhdjasdsdsdsd',21.00,1) + +#********************************************************************************** +# is used in SQLException +#********************************************************************************** +Error_Query=select * from + +#********************************************************************************** +# Constructor arguments for exceptions +#********************************************************************************** +Reason_BatUpdExec=Message +SQLState_BatUpdExec=S100 +VendorCode_BatUpdExec=10 +IntialValue_BatUpdExec={1,1,1} +Index_DataTrunc=1 +Param_DataTrunc=true +Read_DataTrunc=true +DataSize_DataTrunc=100 +TranSize_DataTrunc=50 + +#********************************************************************************** +# is used to print a message to the current logging writer +#********************************************************************************** +JDBCLogstream_Message=Hello World + + +#********************************************************************************** +#The following pair of values are related and so must be changed simultaneously +#The first one is a reference value and the second one is a equivalent in millisecond after epoch +#********************************************************************************** +DateTime_Str_Val1=1970-01-02 00:00:00.001 +DateTime_Long_Val1=86400001 + +#********************************************************************************** +#The following pair of values are related and so must be changed simultaneously +#The first one is a reference value and the second one is a equivalent in millisecond after epoch +#********************************************************************************** +DateTime_Str_Val2=1969-12-30 23:59:59.999 +DateTime_Long_Val2=-86400001 + +#********************************************************************************** +#value in millisecond for testing after() and before() in Timestamp +#********************************************************************************** +Ref_Milli_Val = 86400000 + +#********************************************************************************** +#Value in nanoseconds for testing time values +#********************************************************************************** +Ref_Nano_Val = 999999999 + + +#********************************************************************************** +#Value in nanoseconds and must be equivalent equivalent to multiples of milliseconds +#********************************************************************************** +Ref_Nano_Val2 = 1000000 + +Trial_String=TrialSetting +Escape_Seq_Query=select count(*) from ctstable2 where cof_name like '\%-%' { escape '\\' } +Escape_Seq_ChkQuery=select count(*) from ctstable2 +Max_Set_Val=10 + + +#********************************************************************************** +#The SQL Statements which are used to test the Scalar functions using escape syntax +#********************************************************************************** +Concat_Fn_Query=SELECT {FN CONCAT(STRING1,STRING2)} FROM ctstable3 +Ascii_Fn_Query=SELECT {FN ASCII(STRING1)} FROM ctstable3 +Insert_Fn_Query=SELECT {FN INSERT(STRING1,2,4,STRING2)} FROM ctstable3 +Lcase_Fn_Query=SELECT {FN LCASE(STRING1)} FROM ctstable3 +Left_Fn_Query=SELECT {FN LEFT(STRING1,2)} FROM ctstable3 +Length_Fn_Query=SELECT {FN LENGTH(STRING1)} FROM ctstable3 +Locate_Fn_Query=SELECT {FN LOCATE(STRING1,STRING2)} FROM ctstable3 +Ltrim_Fn_Query=SELECT {FN LTRIM(STRING2)} FROM ctstable3 +Repeat_Fn_Query=SELECT {FN REPEAT(STRING1,3)} FROM ctstable3 +Right_Fn_Query=SELECT {FN RIGHT(STRING1,3)} FROM ctstable3 +Rtrim_Fn_Query=SELECT {FN RTRIM(STRING2)} FROM ctstable3 +Soundex_Fn_Query=SELECT {FN SOUNDEX(STRING1)} FROM ctstable3 +Space_Fn_Query=SELECT {FN SPACE(5)} FROM ctstable3 +Substring_Fn_Query=SELECT {FN SUBSTR(STRING2,2,3)} FROM ctstable3 +Ucase_Fn_Query=SELECT {FN UCASE(STRING1)} FROM ctstable3 +Char_Fn_Query=SELECT {FN CHAR(NUMCOL)} FROM ctstable3 +Replace_Fn_Query=SELECT {FN REPLACE(STRING2,STRING1,STRING3)} FROM ctstable3 +User_Fn_Query=SELECT {FN USER()} FROM ctstable3 +Ifnull_Fn_Query=SELECT {FN IFNULL(STRING1,100)} FROM ctstable3 +Sin_Fn_Query=SELECT {FN SIN(0)} FROM ctstable3 +Abs_Fn_Query=SELECT {FN ABS(NUMCOL)} FROM ctstable3 +Power_Fn_Query=SELECT {FN POWER(NUMCOL,2)} FROM ctstable3 +Round_Fn_Query=SELECT {FN ROUND(FLOATCOL,2)} FROM ctstable3 +Sign_Fn_Query=SELECT {FN SIGN(NUMCOL)} FROM ctstable3 +Sqrt_Fn_Query=SELECT {FN SQRT(FLOATCOL)} FROM ctstable3 +Truncate_Fn_Query=SELECT {FN TRUNCATE(FLOATCOL,1)} FROM ctstable3 +Mod_Fn_Query=SELECT {FN MOD(NUMCOL,7)} FROM ctstable3 +Floor_Fn_Query=SELECT {FN FLOOR(FLOATCOL)} FROM ctstable3 +Ceiling_Fn_Query=SELECT {FN CEILING(NUMCOL)} FROM ctstable3 +Log10_Fn_Query=SELECT {FN LOG10(NUMCOL)} FROM ctstable3 +Log_Fn_Query=SELECT {FN LOG(NUMCOL)} FROM ctstable3 +Exp_Fn_Query=SELECT {FN EXP(FLOATCOL)} FROM ctstable3 +Cos_Fn_Query=SELECT {FN COS(FLOATCOL)} FROM ctstable3 +Tan_Fn_Query=SELECT {FN TAN(FLOATCOL)} FROM ctstable3 +Cot_Fn_Query=SELECT {FN COT(FLOATCOL)} FROM ctstable3 +Curdate_Fn_Query=SELECT {FN CURDATE()} FROM ctstable3 +Dayname_Fn_Query=SELECT {FN DAYNAME(DATECOL)} FROM ctstable3 +Dayofmonth_Fn_Query=SELECT {FN DAYOFMONTH(DATECOL)} FROM ctstable3 +Dayofweek_Fn_Query=SELECT {FN DAYOFWEEK(DATECOL)} FROM ctstable3 +Dayofyear_Fn_Query=SELECT {FN DAYOFYEAR(DATECOL)} FROM ctstable3 +Week_Fn_Query=SELECT {FN WEEK(DATECOL)} FROM ctstable3 +Month_Fn_Query=SELECT {FN MONTH(DATECOL)} FROM ctstable3 +Year_Fn_Query=SELECT {FN YEAR(DATECOL)} FROM ctstable3 +Monthname_Fn_Query=SELECT {FN MONTHNAME(DATECOL)} FROM ctstable3 +Quarter_Fn_Query=SELECT {FN QUARTER(DATECOL)} FROM ctstable3 +Now_Fn_Query=SELECT {FN NOW()} FROM ctstable3 +Hour_Fn_Query=SELECT {FN HOUR(TIMECOL)} FROM ctstable3 +Minute_Fn_Query=SELECT {FN MINUTE(TIMECOL)} FROM ctstable3 +Second_Fn_Query=SELECT {FN SECOND(TIMECOL)} FROM ctstable3 +Database_Fn_Query=SELECT {FN DATABASE()} FROM ctstable3 +Acos_Fn_Query=SELECT {FN ACOS(FLOATCOL)} FROM ctstable3 +Asin_Fn_Query=SELECT {FN ASIN(FLOATCOL)} FROM ctstable3 +Atan_Fn_Query=SELECT {FN ATAN(FLOATCOL)} FROM ctstable3 +Atan2_Fn_Query=SELECT {FN ATAN2(FLOATCOL,FLOATCOL)} FROM ctstable3 +Degrees_Fn_Query=SELECT {FN DEGREES(NUMCOL)} FROM ctstable3 +Radians_Fn_Query=SELECT {FN RADIANS(NUMCOL)} FROM ctstable3 +Pi_Fn_Query=SELECT {FN PI()} FROM ctstable3 +Rand_Fn_Query=SELECT {FN RAND(NUMCOL)} FROM ctstable3 +Difference_Fn_Query=SELECT {FN DIFFERENCE(STRING1,STRING2)} FROM ctstable3 +Locate_Fn_Query=SELECT {FN LOCATE(STRING1,STRING2,2)} FROM ctstable3 +Timestampaddfrac_Fn_Query=SELECT {FN TIMESTAMPADD(SQL_TSI_FRAC_SECOND,2,TSCOL1)} FROM ctstable3 +Timestampaddsecond_Fn_Query=SELECT {FN TIMESTAMPADD(SQL_TSI_SECOND,2,TSCOL1)} FROM ctstable3 +Timestampaddminute_Fn_Query=SELECT {FN TIMESTAMPADD(SQL_TSI_MINUTE,2,TSCOL1)} FROM ctstable3 +Timestampaddhour_Fn_Query=SELECT {FN TIMESTAMPADD(SQL_TSI_HOUR,2,TSCOL1)} FROM ctstable3 +Timestampaddday_Fn_Query=SELECT {FN TIMESTAMPADD(SQL_TSI_DAY,2,TSCOL1)} FROM ctstable3 +Timestampaddweek_Fn_Query=SELECT {FN TIMESTAMPADD(SQL_TSI_WEEK,2,TSCOL1)} FROM ctstable3 +Timestampaddmonth_Fn_Query=SELECT {FN TIMESTAMPADD(SQL_TSI_MONTH,2,TSCOL1)} FROM ctstable3 +Timestampaddquarter_Fn_Query=SELECT {FN TIMESTAMPADD(SQL_TSI_QUARTER,2,TSCOL1)} FROM ctstable3 +Timestampaddyear_Fn_Query=SELECT {FN TIMESTAMPADD(SQL_TSI_YEAR,2,TSCOL1)} FROM ctstable3 +Timestampdifffrac_Fn_Query=SELECT {FN TIMESTAMPDIFF(SQL_TSI_FRAC_SECOND,TSCOL1,TSCOL2)} FROM ctstable3 +Timestampdiffsecond_Fn_Query=SELECT {FN TIMESTAMPDIFF(SQL_TSI_SECOND,TSCOL1,TSCOL2)} FROM ctstable3 +Timestampdiffminute_Fn_Query=SELECT {FN TIMESTAMPDIFF(SQL_TSI_MINUTE,TSCOL1,TSCOL2)} FROM ctstable3 +Timestampdiffhour_Fn_Query=SELECT {FN TIMESTAMPDIFF(SQL_TSI_HOUR,TSCOL1,TSCOL2)} FROM ctstable3 +Timestampdiffday_Fn_Query=SELECT {FN TIMESTAMPDIFF(SQL_TSI_DAY,TSCOL1,TSCOL2)} FROM ctstable3 +Timestampdiffweek_Fn_Query=SELECT {FN TIMESTAMPDIFF(SQL_TSI_WEEK,TSCOL1,TSCOL2)} FROM ctstable3 +Timestampdiffmonth_Fn_Query=SELECT {FN TIMESTAMPDIFF(SQL_TSI_MONTH,TSCOL1,TSCOL2)} FROM ctstable3 +Timestampdiffquarter_Fn_Query=SELECT {FN TIMESTAMPDIFF(SQL_TSI_QUARTER,TSCOL1,TSCOL2)} FROM ctstable3 +Timestampdiffyear_Fn_Query=SELECT {FN TIMESTAMPDIFF(SQL_TSI_YEAR,TSCOL1,TSCOL2)} FROM ctstable3 + + +#***************************************************************************** +#The SQL Statements which are used to test the Outer Joins using escape syntax +#***************************************************************************** +Left_Oj_Query=SELECT * FROM {OJ ctstable3 LEFT OUTER JOIN ctstable4 ON ctstable3.NUMCOL=ctstable4.NUMCOL} +Right_Oj_Query=SELECT * FROM {OJ ctstable3 RIGHT OUTER JOIN ctstable4 ON ctstable3.NUMCOL=ctstable4.NUMCOL} +Full_Oj_Query=SELECT * FROM {OJ ctstable3 FULL OUTER JOIN ctstable4 ON ctstable3.NUMCOL=ctstable4.NUMCOL} + + +#***************************************************************************** +#The SQL Statements for creating, inserting and dropping the tables which are +#used in testing the scalar functions and outer joins using escape syntax +#***************************************************************************** + +Fnschema_Tab1_Insert=INSERT INTO ctstable3 VALUES ('Java',' HotJava ','JAVA',100,0.5,{d '1993-07-13'},{t '10:30:55'},{ts '1996-05-10 10:07:04'},{ts '1996-05-10 10:07:05'}) +Fnschema_Tab2_Insert=INSERT INTO ctstable4 VALUES ('STRING3',100) + +Fnschema_Tab1_Delete=delete from ctstable3 +Fnschema_Tab2_Delete=delete from ctstable4 + +#***************************************************************************** +#The SQL Statements which are used in TxBean (Session bean) +#***************************************************************************** +TxBean_insert1=insert into TxBean_Tab1 values(?, ?, ?) +TxBean_insert2=insert into TxBean_Tab2 values(?, ?, ?) + +TxBean_delete1=delete from TxBean_Tab1 where KEY_ID = ? +TxBean_delete2=delete from TxBean_Tab2 where KEY_ID = ? + +TxBean_update1=update TxBean_Tab1 set TABONE_NAME = ? where KEY_ID = ? +TxBean_update2=update TxBean_Tab2 set TABTWO_NAME = ? where KEY_ID = ? +TxBean_update3=update TxBean_Tab1 set PRICE = ? where KEY_ID = ? +TxBean_update4=update TxBean_Tab2 set PRICE = ? where KEY_ID = ? + +TxBean_query1=select * from TxBean_Tab1 +TxBean_query2=select * from TxBean_Tab2 +TxBean_query3=select KEY_ID, TABONE_NAME, PRICE from TxBean_Tab1 where KEY_ID = ? +TxBean_query4=select KEY_ID, TABTWO_NAME, PRICE from TxBean_Tab2 where KEY_ID = ? + + +TxBean_Tab1_Delete=delete from TxBean_Tab1 +TxBean_Tab2_Delete=delete from TxBean_Tab2 + +#***************************************************************************** +#The SQL Statements which are used in TxEBean (Entity bean) +#***************************************************************************** +TxEBean_updateString1=insert into TxEBean_Tab values(?, ?, ?) +TxEBean_updateString2=delete from TxEBean_Tab where KEY_ID = ? +TxEBean_updateString3=update TxEBean_Tab set BRAND_NAME = ?, PRICE = ? where KEY_ID = ? + +TxEBean_selectString1=select KEY_ID from TxEBean_Tab where KEY_ID = ? +TxEBean_selectString2=select KEY_ID from TxEBean_Tab where BRAND_NAME = ? +TxEBean_selectString3=select KEY_ID from TxEBean_Tab where PRICE = ? +TxEBean_selectString4=select KEY_ID, BRAND_NAME, PRICE from TxEBean_Tab where KEY_ID = ? +TxEBean_selectString5=select BRAND_NAME from TxEBean_Tab where KEY_ID = ? +TxEBean_selectString6=select PRICE from TxEBean_Tab where KEY_ID = ? + +TxEBean_queryStr1=select KEY_ID from TxEBean_Tab where KEY_ID = ? + +TxEBean_Delete=delete from TxEBean_Tab + +#***************************************************************************** +#The SQL Statements which are used in the integration/session and +#integration/entity tests +#***************************************************************************** +Integration_Tab_Delete=delete from Integration_Tab +Integration_Insert=insert into Integration_Tab values(?, ?) +Integration_Insert1=insert into Integration_Tab values(1000, 50000.0) +Integration_Insert2=insert into Integration_Tab values(1075, 10490.75) +Integration_Insert3=insert into Integration_Tab values(40, 200.50) +Integration_Insert4=insert into Integration_Tab values(30564, 25000.0) +Integration_Insert5=insert into Integration_Tab values(387, 1000000.0) +Integration_Select_Account=select * from Integration_Tab WHERE ACCOUNT = ? +Integration_Select_All=select * from Integration_Tab +Integration_Update_Account=update Integration_Tab set BALANCE = ? where ACCOUNT = ? +Integration_Delete_Account=delete from Integration_Tab where ACCOUNT = ? + +#***************************************************************************** +#The SQL Statements which are used in the integration/sec tests +#***************************************************************************** +Integration_Sec_Tab_Delete=delete from Integration_Sec_Tab +Integration_Sec_Tab_Insert=insert into Integration_Sec_Tab values(?, ?, ?) +Integration_Sec_Tab_Delete1=delete from Integration_Sec_Tab WHERE LOG_NO=? +Integration_Sec_Tab_Delete2=delete FROM Integration_Sec_Tab where LOG_NO=? and not ( LINE_NO = ? ) +Integration_Sec_Tab_Update=update Integration_Sec_Tab set MESSAGE= ? where LOG_NO = ? and LINE_NO = ? +Integration_Sec_Tab_Select1=select MESSAGE, LINE_NO from Integration_Sec_Tab where LOG_NO = ? and not( LINE_NO= ? ) order by LINE_NO +Integration_Sec_Tab_Select2=select MESSAGE FROM Integration_Sec_Tab where LOG_NO = ? and LINE_NO = ? +Integration_Sec_Tab_Select3=select MAX(LOG_NO) FROM Integration_Sec_Tab +Integration_Sec_Tab_Select4=select LOG_NO from Integration_Sec_Tab where MESSAGE = ? and LINE_NO = ? +Integration_Sec_Tab_Select5=select LINE_NO from Integration_Sec_Tab where LOG_NO = ? and LINE_NO= ? + + +#***************************************************************************** +#The SQL Statements which are used in DBSupport used by ejb/ee/bb tests +#***************************************************************************** +BB_Tab_Delete=delete from BB_Tab +BB_Insert1=insert into BB_Tab values(?, ?, ?) +BB_Select1=select KEY_ID from BB_Tab where KEY_ID = ? +BB_Select2=select KEY_ID from BB_Tab where BRAND_NAME = ? +BB_Select3=select KEY_ID from BB_Tab where PRICE = ? +BB_Select4=select KEY_ID from BB_Tab where PRICE >= ? and PRICE <= ? +BB_Select5=select KEY_ID from BB_Tab where KEY_ID >= ? and KEY_ID <= ? +BB_Select6=select PRICE from BB_Tab where KEY_ID = ? +BB_Update1=update BB_Tab set PRICE = ? where KEY_ID = ? +BB_Delete1=delete from BB_Tab where KEY_ID = ? + +#***************************************************************************** +#The SQL Statements which are used in DAO by ejb/ee/bb tests +#***************************************************************************** +COFFEE_BB_Tab_Delete=delete from BB_Tab +COFFEE_BB_Insert1=insert into BB_Tab values(?, ?, ?) +COFFEE_BB_Select1=select KEY_ID from BB_Tab where KEY_ID = ? +COFFEE_BB_Select2=select KEY_ID from BB_Tab where BRAND_NAME = ? +COFFEE_BB_Select3=select KEY_ID from BB_Tab where PRICE = ? +COFFEE_BB_Select4=select KEY_ID from BB_Tab where PRICE >= ? and PRICE <= ? +COFFEE_BB_Select5=select KEY_ID from BB_Tab where KEY_ID >= ? and KEY_ID <= ? +COFFEE_BB_Select6=select PRICE from BB_Tab where KEY_ID = ? +COFFEE_BB_Update1=update BB_Tab set PRICE = ? where KEY_ID = ? +COFFEE_BB_Delete1=delete from BB_Tab where KEY_ID = ? + +#***************************************************************************** +#The SQL Statements which are used in DBSupport in jta/ee/txpropagationtest +#***************************************************************************** +JTA_Tab1_Delete=delete from JTA_Tab1 +JTA_Tab2_Delete=delete from JTA_Tab2 + +JTA_Tab1_Insert=insert into JTA_Tab1 values(?, ?, ?) +JTA_Tab2_Insert=insert into JTA_Tab2 values(?, ?, ?) + +JTA_Delete1=delete from JTA_Tab1 where KEY_ID = ? +JTA_Delete2=delete from JTA_Tab2 where KEY_ID = ? + +JTA_Tab1_Update1=update JTA_Tab1 set COF_NAME = ? where KEY_ID = ? +JTA_Tab2_Update1=update JTA_Tab2 set CHOC_NAME = ? where KEY_ID = ? + +JTA_Tab1_Update2=update JTA_Tab1 set PRICE = ? where KEY_ID = ? +JTA_Tab2_Update2=update JTA_Tab2 set PRICE = ? where KEY_ID = ? + +JTA_Tab1_Select=select * from JTA_Tab1 +JTA_Tab2_Select=select * from JTA_Tab2 + +JTA_Tab1_Select1=select KEY_ID, COF_NAME, PRICE FROM JTA_Tab1 where KEY_ID = ? +JTA_Tab2_Select1=select KEY_ID, CHOC_NAME, PRICE FROM JTA_Tab2 where KEY_ID = ? + + +#***************************************************************************** +# SQL Statements used by deployment tests +# +# See /tests/assembly/util/dbsupport for more details +# +#***************************************************************************** + +# +# BMP table with Integer Primary Key +# +DEPLOY_intPKTable_Insert=insert into Deploy_Tab1 values(?, ?, ?) +DEPLOY_intPKTable_Select_PK=select KEY_ID from Deploy_Tab1 where KEY_ID = ? +DEPLOY_intPKTable_Select_Price=select PRICE from Deploy_Tab1 where KEY_ID = ? +DEPLOY_intPKTable_Update=update Deploy_Tab1 set PRICE = ? where KEY_ID = ? +DEPLOY_intPKTable_Delete=delete from Deploy_Tab1 where KEY_ID = ? +DEPLOY_intPKTable_Cleanup=delete from Deploy_Tab1 + +# +# BMP table with String Primary Key +# +DEPLOY_strPKTable_Insert=insert into Deploy_Tab2 values(?, ?, ?) +DEPLOY_strPKTable_Select_PK=select KEY_ID from Deploy_Tab2 where KEY_ID = ? +DEPLOY_strPKTable_Select_Price=select PRICE from Deploy_Tab2 where KEY_ID = ? +DEPLOY_strPKTable_Update=update Deploy_Tab2 set PRICE = ? where KEY_ID = ? +DEPLOY_strPKTable_Delete=delete from Deploy_Tab2 where KEY_ID = ? +DEPLOY_strPKTable_Cleanup=delete from Deploy_Tab2 + +# +# BMP table with Long Primary Key +# +DEPLOY_longPKTable_Insert=insert into Deploy_Tab3 values(?, ?, ?) +DEPLOY_longPKTable_Select_PK=select KEY_ID from Deploy_Tab3 where KEY_ID = ? +DEPLOY_longPKTable_Select_Price=select PRICE from Deploy_Tab3 where KEY_ID = ? +DEPLOY_longPKTable_Update=update Deploy_Tab3 set PRICE = ? where KEY_ID = ? +DEPLOY_longPKTable_Delete=delete from Deploy_Tab3 where KEY_ID = ? +DEPLOY_longPKTable_Cleanup=delete from Deploy_Tab3 + +# +# BMP table with Float Primary Key +# +DEPLOY_floatPKTable_Insert=insert into Deploy_Tab4 values(?, ?, ?) +DEPLOY_floatPKTable_Select_PK=select KEY_ID from Deploy_Tab4 where KEY_ID = ? +DEPLOY_floatPKTable_Select_Price=select PRICE from Deploy_Tab4 where KEY_ID = ? +DEPLOY_floatPKTable_Update=update Deploy_Tab4 set PRICE = ? where KEY_ID = ? +DEPLOY_floatPKTable_Delete=delete from Deploy_Tab4 where KEY_ID = ? +DEPLOY_floatPKTable_Cleanup=delete from Deploy_Tab4 + +# +# BMP table with Compound Primary Key +# +DEPLOY_compoundPKTable_Insert=insert into Deploy_Tab5 values(?, ?, ?, ?, ?) +DEPLOY_compoundPKTable_Select_PK=select KEY_ID1, KEY_ID2, KEY_ID3 from Deploy_Tab5 where KEY_ID1 = ? and KEY_ID2 = ? and KEY_ID3 = ? +DEPLOY_compoundPKTable_Select_Price=select PRICE from Deploy_Tab5 where KEY_ID1 = ? and KEY_ID2 = ? and KEY_ID3 = ? +DEPLOY_compoundPKTable_Update=update Deploy_Tab5 set PRICE = ? where KEY_ID1 = ? and KEY_ID2 = ? and KEY_ID3 = ? +DEPLOY_compoundPKTable_Delete=delete from Deploy_Tab5 where KEY_ID1 = ? and KEY_ID2 = ? and KEY_ID3 = ? +DEPLOY_compoundPKTable_Cleanup=delete from Deploy_Tab5 + +#***************************************************************************** +#The SQL Statements which are used in DBSupport2 used by secpropagation tests +#***************************************************************************** +SEC_Insert1=insert into SEC_Tab1 values(?, ?, ?) +SEC_Select1=select KEY_ID from SEC_Tab1 where KEY_ID = ? +SEC_Select2=select KEY_ID from SEC_Tab1 where BRAND = ? +SEC_Select3=select KEY_ID from SEC_Tab1 where PRICE = ? +SEC_Select4=select KEY_ID from SEC_Tab1 where PRICE >= ? and PRICE <= ? +SEC_Select5=select KEY_ID from SEC_Tab1 where KEY_ID >= ? and KEY_ID <= ? +SEC_Select6=select PRICE from SEC_Tab1 where KEY_ID = ? +SEC_Update1=update SEC_Tab1 set PRICE = ? where KEY_ID = ? +SEC_Delete1=delete from SEC_Tab1 where KEY_ID = ? +SEC_Tab1_Delete=delete from SEC_Tab1 + +#***************************************************************************** +# Connector tests in src/tests/connector +#***************************************************************************** +ConnectorTable_Insert=insert into Connector_Tab values(?, ?, ?) +ConnectorTable_Delete=delete from Connector_Tab + +#***************************************************************************** +# insert values EIS +#***************************************************************************** +TSEIS_insert_init=1 +TSEIS_insert1=2 +TSEIS_insert2=3 + +#***************************************************************************** +#The SQL Statements which are used in xa multires tests +#***************************************************************************** + +Xa_Tab1_Select=select * from Xa_Tab1 + +# insert values +Xa_Tab1_Insert=insert into Xa_Tab1 values(?, ?, ?) + +# delete using id +Xa_Tab1_Delete1=delete from Xa_Tab1 where col1 = ? + +Xa_Tab1_Delete=delete from Xa_Tab1 +Xa_Tab2_Delete=delete from Xa_Tab2 + +#initial insert +Xa_Tab1_insert_init=insert into Xa_Tab1 values (1, 'Table1 Line one ', '1.0' ) +Xa_Tab2_insert_init=insert into Xa_Tab2 values (1, 'Table2 Line one ', '2.0' ) + +#subsequent insert +Xa_Tab1_insert1=insert into Xa_Tab1 values (2, 'Table1 Line two ', '11.0' ) +Xa_Tab1_insert2=insert into Xa_Tab1 values (3, 'Table1 Line three ','111.0' ) + +Xa_Tab2_insert1=insert into Xa_Tab2 values (2, 'Table2 Line two ', '22.0' ) +Xa_Tab2_insert2=insert into Xa_Tab2 values (3, 'Table2 Line three ', '222.0' ) + +#get results + +Xa_Tab1_query=select col1 from Xa_Tab1 order by col1 +Xa_Tab2_query=select col1 from Xa_Tab2 order by col1 + + + +#***************************************************************************** +# Coffee DAO SQL statements +#***************************************************************************** + +# +# Standard Coffee DAO +# +COFFEE_insert=insert into Coffee_Table values(?, ?, ?) +COFFEE_select=select BRAND_NAME, PRICE from Coffee_Table where KEY_ID = ? +COFFEE_select_pk_by_name=select KEY_ID from Coffee_Table where BRAND_NAME = ? +COFFEE_select_pk_by_price=select KEY_ID from Coffee_Table where PRICE = ? +COFFEE_select_pk_by_price_range=select KEY_ID from Coffee_Table where PRICE >= ? and PRICE <= ? +COFFEE_select_pk_by_pk_range=select KEY_ID from Coffee_Table where KEY_ID >= ? and KEY_ID <= ? +COFFEE_select_price=select PRICE from Coffee_Table where KEY_ID = ? +COFFEE_update=update Coffee_Table set BRAND_NAME = ?, PRICE = ? where KEY_ID = ? +COFFEE_update_price=update Coffee_Table set PRICE = ? where KEY_ID = ? +COFFEE_delete=delete from Coffee_Table where KEY_ID = ? +COFFEE_delete_all=delete from Coffee_Table + + +# +# Coffee DAO variant with String Primary Key +# +COFFEE_STRING_PK_insert=insert into Coffee_StringPK_Table values(?, ?, ?) +COFFEE_STRING_PK_select=select KEY_ID from Coffee_StringPK_Table where KEY_ID = ? +COFFEE_STRING_PK_select_price=select PRICE from Coffee_StringPK_Table where KEY_ID = ? +COFFEE_STRING_PK_update_price=update Coffee_StringPK_Table set PRICE = ? where KEY_ID = ? +COFFEE_STRING_PK_delete=delete from Coffee_StringPK_Table where KEY_ID = ? +COFFEE_STRING_PK_delete_all=delete from Coffee_StringPK_Table + +# +# Coffee DAO variant with Long Primary Key +# +COFFEE_LONG_PK_insert=insert into Coffee_LongPK_Table values(?, ?, ?) +COFFEE_LONG_PK_select=select KEY_ID from Coffee_LongPK_Table where KEY_ID = ? +COFFEE_LONG_PK_select_price=select PRICE from Coffee_LongPK_Table where KEY_ID = ? +COFFEE_LONG_PK_update_price=update Coffee_LongPK_Table set PRICE = ? where KEY_ID = ? +COFFEE_LONG_PK_delete=delete from Coffee_LongPK_Table where KEY_ID = ? +COFFEE_LONG_PK_delete_all=delete from Coffee_LongPK_Table + +# +# Coffee DAO variant with Float Primary Key +# +COFFEE_FLOAT_PK_insert=insert into Coffee_FloatPK_Table values(?, ?, ?) +COFFEE_FLOAT_PK_select=select KEY_ID from Coffee_FloatPK_Table where KEY_ID = ? +COFFEE_FLOAT_PK_select_price=select PRICE from Coffee_FloatPK_Table where KEY_ID = ? +COFFEE_FLOAT_PK_update_price=update Coffee_FloatPK_Table set PRICE = ? where KEY_ID = ? +COFFEE_FLOAT_PK_delete=delete from Coffee_FloatPK_Table where KEY_ID = ? +COFFEE_FLOAT_PK_delete_all=delete from Coffee_FloatPK_Table + +# +# Coffee DAO variant with Compound Primary Key +# +COFFEE_COMPOUND_PK_insert=insert into Coffee_CompoundPK_Table values(?, ?, ?, ?, ?) +COFFEE_COMPOUND_PK_select=select KEY_ID1, KEY_ID2, KEY_ID3 from Coffee_CompoundPK_Table where KEY_ID1 = ? and KEY_ID2 = ? and KEY_ID3 = ? +COFFEE_COMPOUND_PK_select_price=select PRICE from Coffee_CompoundPK_Table where KEY_ID1 = ? and KEY_ID2 = ? and KEY_ID3 = ? +COFFEE_COMPOUND_PK_update_price=update Coffee_CompoundPK_Table set PRICE = ? where KEY_ID1 = ? and KEY_ID2 = ? and KEY_ID3 = ? +COFFEE_COMPOUND_PK_delete=delete from Coffee_CompoundPK_Table where KEY_ID1 = ? and KEY_ID2 = ? and KEY_ID3 = ? +COFFEE_COMPOUND_PK_delete_all=delete from Coffee_CompoundPK_Table + + +Simple_Select_Query= SELECT * FROM jstl_tab1 +Select_NoRows_Query= SELECT * FROM jstl_tab1 WHERE idNum = -9999 +Select_Jstl_Tab1_OneRow_Query= SELECT * FROM jstl_tab1 where idNum = 1 +Select_Jstl_Tab1_By_Id_Query= SELECT * FROM jstl_tab1 ORDER BY idNum +Select_Jstl_Tab1_Using_Param_Query= SELECT * FROM jstl_tab1 WHERE idNum = ? +Select_Jstl_Tab2_Using_Param_Query= SELECT idNum, lastName FROM jstl_tab2 WHERE idNum = ? + +Update_Jstl_Tab2_Using_Param_Query= UPDATE jstl_tab2 SET lastName= ? WHERE idNum = ? + +Delete_NoRows_Query= DELETE FROM jstl_tab2 WHERE idNum = -9999 +Delete_AllRows_Query= DELETE FROM jstl_tab2 + +Insert_Row_Query= INSERT INTO jstl_tab2(idNum, dob, firstName, lastName, rank, rating) VALUES (1, {d '1961-08-30'}, 'Clark', 'Kent', 1, 4.5) +Insert2_Row_Query= INSERT INTO jstl_tab2(idNum, dob, firstName, lastName, rank, rating) VALUES (2, {d '1980-12-30'}, 'Fred', 'Flinstone', 2, 4.5) +Insert3_Row_Query= INSERT INTO jstl_tab2(idNum, dob, firstName, lastName, rank, rating) VALUES (3, {d '1961-01-01'}, 'Scooby', 'Doo', 4, 4.5) +Insert4_Row_Query= INSERT INTO jstl_tab2(idNum, dob, firstName, lastName, rank, rating) VALUES (4, {d '1990-03-15'}, 'Bruce', 'Wayne', 3, 4.5) +Delete_Jstl_Tab2_Using_Param_Query=DELETE FROM jstl_tab2 where idNum = ? +Failed_Insert_Query=INSERT INTO jstl_tab2(idNum, dob, firstName, lastName, rank, rating) VALUES (2, '1992-02-03'}, NULL,NULL, 2, 4.5) +Select_Jstl_Tab2_AllRows_Query=SELECT * from jstl_tab2 +Invalid_SQL_Query=This Will Fail on Any RDBMS I Hope! +Select_Jstl_Tab1_MultiParam_Query=SELECT idNum, firstName, lastName from jstl_tab1 where idNum= ? and lastName = ? +Delete_Jstl_Tab2_MultiParam_Query=DELETE FROM jstl_tab2 where idNum = ? and lastName = ? +Select_Jstl_Tab3_Date_Query=SELECT * from jstl_tab3 where aDate= ? +Select_Jstl_Tab3_Time_Query=SELECT * from jstl_tab3 where aTime= ? +Select_Jstl_Tab3_Timestamp_Query=SELECT * from jstl_tab3 where aTimestamp= ? +Insert_Jstl_Tab3_Query=INSERT INTO jstl_tab3(idNum, aDate, aTime, aTimestamp) VALUES(1, {d '2001-08-30'}, {t '20:20:20'}, {ts '2001-08-30 20:20:20'}) +Insert_Jstl_Tab3_Date_Query=INSERT INTO jstl_tab3(idNum, aDate, aTime, aTimestamp) VALUES(1, ?, {t '20:20:20'}, {ts '2001-08-30 20:20:20'}) +Insert_Jstl_Tab3_Time_Query=INSERT INTO jstl_tab3(idNum, aDate, aTime, aTimestamp) VALUES(1, {d '2001-08-30'}, ?, {ts '2001-08-30 20:20:20'}) +Insert_Jstl_Tab3_Timestamp_Query=INSERT INTO jstl_tab3(idNum, aDate, aTime, aTimestamp) VALUES(1, {d '2001-08-30'}, {t '20:20:20'}, ?) +Delete_Jstl_Tab3_AllRows_Query= DELETE FROM jstl_tab3 + +Insert_Jstl_Tab3_Null_Query=INSERT INTO jstl_tab3(idNum, aDate, aTime, aTimestamp) VALUES(99, null, null, null) +Select_Jstl_Tab2_NullParam_Query= SELECT * FROM jstl_tab2 WHERE rank = ? +Insert_Jstl_Tab2_Null_Query=INSERT INTO jstl_tab2(idNum, dob, firstName, lastName, rank, rating) VALUES (5, {d '1970-07-04'}, 'Peter', 'Parker', 5, null) +Insert_Jstl_Tab2_NullParam_Query=INSERT INTO jstl_tab2(idNum, dob, firstName, lastName, rank, rating) VALUES (5, {d '1970-07-04'}, 'Peter', 'Parker', 5, ?) diff --git a/glassfish-runner/appclient-platform-tck/jakartaeetck/tmp/tstest.jte b/glassfish-runner/appclient-platform-tck/jakartaeetck/tmp/tstest.jte new file mode 100644 index 0000000000..a4a4dbea56 --- /dev/null +++ b/glassfish-runner/appclient-platform-tck/jakartaeetck/tmp/tstest.jte @@ -0,0 +1,84 @@ +#Properties for test: testStateful +#Mon Oct 21 11:26:38 IST 2024 +harness.socket.retry.count=10 +logical.hostname.servlet=server +harness.temp.directory=${ts.home}/tmp +whitebox-anno_no_md=java\:comp/env/eis/whitebox-anno_no_md +porting.ts.HttpsURLConnection.class.1=com.sun.ts.lib.implementation.sun.javaee.SunRIHttpsURLConnection +javamail.protocol=imap +whitebox-tx=java\:comp/env/eis/whitebox-tx +porting.ts.HttpsURLConnection.class.2=com.sun.ts.lib.implementation.sun.javaee.SunRIHttpsURLConnection +log.file.location=${vi.domain}/logs +password=j2ee +porting.ts.deploy.class.1=com.sun.ts.lib.implementation.sun.javaee.glassfish.AutoDeployment +porting.ts.deploy.class.2=com.sun.ts.lib.implementation.sun.javaee.glassfish.AutoDeploymentSeparateVM +db.supports.sequence=true +varbinarySize=48 +sigTestClasspath=${s1as.modules}/glassfish-corba-omgapi.jar${pathsep}${s1as.modules}/glassfish-corba-orb.jar${pathsep}${s1as.modules}/jakarta.enterprise.cdi-api.jar${pathsep}${s1as.modules}/jakarta.json-api.jar${pathsep}${s1as.modules}/jakarta.json.bind-api.jar${pathsep}${s1as.modules}/jakarta.batch-api.jar${pathsep}${s1as.modules}/jakarta.interceptor-api.jar${pathsep}${s1as.modules}/stax2-api.jar${pathsep}${s1as.modules}/jakarta.enterprise.concurrent-api.jar${pathsep}${s1as.modules}/jakarta.websocket-api.jar${pathsep}${s1as.modules}/jakarta.websocket-client-api.jar${pathsep}${s1as.modules}/jakarta.jms-api.jar${pathsep}${s1as.modules}/jakarta.faces.jar${pathsep}${s1as.modules}/jakarta.validation-api.jar${pathsep}${s1as.modules}/jakarta.annotation-api.jar${pathsep}${s1as.modules}/jakarta.xml.bind-api.jar${pathsep}${s1as.modules}/webservices-api-osgi.jar${pathsep}${pathsep}${s1as.modules}/jakarta.ws.rs-api.jar${pathsep}${s1as.modules}/weld-osgi-bundle.jar${pathsep}${s1as.modules}/jakarta.ejb-api.jar${pathsep}${s1as.modules}/jakarta.mail-api.jar${pathsep}${s1as.modules}/jakarta.persistence-api.jar${pathsep}${s1as.modules}/jakarta.resource-api.jar${pathsep}${s1as.modules}/jakarta.authorization-api.jar${pathsep}${s1as.modules}/jakarta.authentication-api.jar${pathsep}${s1as.modules}/jakarta.servlet-api.jar${pathsep}${s1as.modules}/jakarta.inject-api.jar${pathsep}${s1as.modules}/jakarta.el-api.jar${pathsep}${s1as.modules}/jakarta.servlet.jsp-api.jar${pathsep}${s1as.modules}/jakarta.servlet.jsp.jstl-api.jar${pathsep}${jtaJarClasspath}${pathsep}${s1as.modules}/jakarta.security.enterprise-api.jar${pathsep}${s1as.modules}/jakarta.activation-api.jar${pathsep}${jimage.dir}/java.base${pathsep}${jimage.dir}/java.rmi${pathsep}${jimage.dir}/java.sql${pathsep}${jimage.dir}/java.naming +porting.ts.login.class.1=com.sun.ts.lib.implementation.sun.javaee.GlassFishLoginContext +porting.ts.login.class.2=com.sun.ts.lib.implementation.sun.javaee.GlassFishLoginContext +DriverManager=no +authuser=javajoe +jstl.db.user=${derby.user} +securedWebServicePort=1044 +binarySize=24 +whitebox-multianno=java\:comp/env/eis/whitebox-multianno +cofSize=5 +javamail.mailbox=test1 +finder=cts +authpassword=javajoe +work.dir=/home/jenkins/agent/workspace/jakartaee-tck_master/JTWork +variable.mapper=org.glassfish.expressly.lang.VariableMapperImpl +imap.port=1143 +ftable=ctstable2 +whitebox-xa=java\:comp/env/eis/whitebox-xa +whitebox-mdcomplete=java\:comp/env/eis/whitebox-mdcomplete +harness.log.delayseconds=0 +mailuser1=user01@james.local +harness.log.traceflag=true +transport_protocol=smtp +org.omg.CORBA.ORBClass=foo +javamail.root.path=mailboxes +whitebox-notx-param=java\:comp/env/eis/whitebox-notx-param +jms_timeout=10000 +test_classname=com.sun.ts.tests.appclient.deploy.ejbref.single.Client +rauser1=cts1 +whitebox-mixedmode=java\:comp/env/eis/whitebox-mixedmode +javamail.server=localhost +db.dml.file=derby/derby.dml.sql +java.naming.factory.initial=com.sun.enterprise.naming.impl.SerialInitContextFactory +Driver=DriverOnlyUsedIfDriverManagerIsYes +rauser2=cts2 +harness.log.port=2000 +ws_wait=5 +vehicle=none +whitebox-notx=java\:comp/env/eis/whitebox-notx +javamail.username=user01@james.local +smtp.port=1025 +jdbc.db=derby +iofile=MailIOFile.txt +porting.ts.url.class.2=com.sun.ts.lib.implementation.sun.common.SunRIURL +password1=cts1 +porting.ts.url.class.1=com.sun.ts.lib.implementation.sun.common.SunRIURL +webServerPort=8080 +user1=cts1 +porting.ts.jms.class.2=com.sun.ts.lib.implementation.sun.javaee.SunRIJMSAdmin +cofTypeSize=5 +platform.mode=jakartaEE +vehicle_archive_name=appclient_dep_ejbref_single +ts_home=/home/g/tck/platform-tck/glassfish-runner/appclient-platform-tck/jakartaeetck/ +whitebox-permissiondd=java\:comp/env/eis/whitebox-permissiondd +porting.ts.jms.class.1=com.sun.ts.lib.implementation.sun.javaee.SunRIJMSAdmin +whitebox-xa-param=java\:comp/env/eis/whitebox-xa-param +service_eetest.vehicles=none +javamail.password=1234 +jstl.db.password=${derby.passwd} +ptable=ctstable1 +rapassword2=cts2 +db1=db1OnlyUsedIfDriverManagerIsYes +whitebox-tx-param=java\:comp/env/eis/whitebox-tx-param +longvarbinarySize=50 +db2=db1OnlyUsedIfDriverManagerIsYes +user=j2ee +rapassword1=cts1 +webServerHost=localhost diff --git a/glassfish-runner/appclient-platform-tck/pom.xml b/glassfish-runner/appclient-platform-tck/pom.xml new file mode 100644 index 0000000000..0d4b0b58ba --- /dev/null +++ b/glassfish-runner/appclient-platform-tck/pom.xml @@ -0,0 +1,572 @@ + + + + 4.0.0 + + org.glassfish + standalone-tck + 11.0.0-SNAPSHOT + ../pom.xml + + jakarta + glassfish.appclient-platform-tck + 11.0.0-SNAPSHOT + jar + + admin + /tmp/ripassword + ${admin.pass.file}.encoded + admin + 1.9.1.Final + 1.9.1.Final + ${glassfish.home}/glassfish/bin/asadmin + ${project.build.directory}/${glassfish.toplevel.dir}/glassfish/bin/asadmin + ${ri.home}/bin/imqbrokerd + ${ri.home}/bin/imqcmd + ${ri.home}/bin/imqobjmgr + ${ri.home}/bin/imqusermgr + ${project.build.directory}/glassfish7 + ${glassfish.home}/glassfish/lib + ${glassfish.home}/glassfish/modules + glassfish7 + + + 1234 + imap + + localhost + user01@james.local + java.naming.factory.initial=com.sun.jndi.fscontext.RefFSContextFactory + /tmp/ri_admin_objects + java.naming.provider.url=file:///${jndi.fs.dir} + mail/Session + + 5.9.1 + ${project.build.directory}/${glassfish.toplevel.dir}/mq + + jakarta.jms-tck + 11.0.0-SNAPSHOT + 3.1.0 + + + + + org.junit + junit-bom + ${junit.jupiter.version} + pom + import + + + + + + org.junit.jupiter + junit-jupiter + ${junit.jupiter.version} + + + jakarta.tck + common + ${project.version} + + + jakarta.tck + libutil + ${project.version} + + + jakarta.tck + runtime + ${project.version} + + + jakarta.tck + appclient + 11.0.0-SNAPSHOT + + + org.jboss.arquillian.container + arquillian-container-test-spi + ${arquillian.core.version} + + + org.jboss.arquillian.junit5 + arquillian-junit5-container + ${arquillian.core.version} + test + + + org.junit.vintage + junit-vintage-engine + test + + + jakarta.tck.arquillian + arquillian-protocol-appclient + ${project.version} + + + jakarta.tck.arquillian + arquillian-protocol-common + ${project.version} + + + jakarta.tck.arquillian + arquillian-protocol-javatest + ${project.version} + + + jakarta.tck.arquillian + arquillian-protocol-lib + ${project.version} + + + jakarta.tck.arquillian + tck-porting-lib + ${project.version} + + + org.omnifaces.arquillian + arquillian-glassfish-server-managed + 1.6 + test + + + org.jboss.arquillian + arquillian-bom + ${arquillian.junit} + pom + import + + + org.jboss.arquillian + arquillian-build + ${arquillian.junit} + pom + import + + + org.jboss.arquillian.container + arquillian-container-spi + ${arquillian.junit} + + + org.jboss.arquillian.container + arquillian-container-test-spi + ${arquillian.junit} + + + org.jboss.arquillian.core + arquillian-core-spi + ${arquillian.junit} + + + org.jboss.arquillian.test + arquillian-test-impl-base + ${arquillian.junit} + + + org.jboss.shrinkwrap + shrinkwrap-api + 1.2.6 + + + + + + org.apache.maven.plugins + maven-dependency-plugin + 3.2.0 + + + 1-unpack + + unpack + + pre-integration-test + + + + org.glassfish.main.distributions + ${glassfish-artifact-id} + ${glassfish.container.version} + zip + true + ${project.build.directory} + + + + + + + + org.apache.maven.plugins + maven-dependency-plugin + 3.2.0 + + + 1-unpack + + unpack + + pre-integration-test + + + + org.glassfish.main.distributions + ${glassfish-artifact-id} + ${glassfish.container.version} + zip + true + ${project.build.directory} + + + + + + 2-copy-lib + + copy + + pre-integration-test + + + + jakarta.tck.arquillian + arquillian-protocol-lib + true + ${glassfish.lib.dir} + arquillian-protocol-lib.jar + + + jakarta.tck + libutil + true + ${glassfish.lib.dir} + libutil.jar + + + jakarta.tck.arquillian + tck-porting-lib + true + ${glassfish.lib.dir} + tck-porting-lib.jar + + + jakarta.tck + runtime + true + ${glassfish.lib.dir} + runtime.jar + + + + + + + + org.apache.maven.plugins + maven-antrun-plugin + 3.0.0 + + + 1-startbkr + + run + + pre-integration-test + + + + + + + + + + + + + + 2-init + + run + + pre-integration-test + + + + + + + + + + + + 3-encodeAdminPassword + + run + + pre-integration-test + + + + + + + + + + + + + 4-create.tck.users + + run + + pre-integration-test + + + + + + + + + + + + 5-create.tck.jms.objects + + run + + pre-integration-test + + + + + + + + + + + + + + + + + + + 6-list.tck.jms.objects + + run + + pre-integration-test + + + + + + + + + + + + + + org.codehaus.mojo + exec-maven-plugin + + + 1-stop-domain + + exec + + pre-integration-test + + ${exec.asadmin} + + stop-domain + + + + + 2-start-domain + + exec + + pre-integration-test + + ${exec.asadmin} + + start-domain + + + + + 91-create-mail-resource + + exec + + pre-integration-test + + ${exec.asadmin} + + create-mail-resource + --mailhost + ${mail.host} + --mailuser + ${mail.user} + --fromaddress + ${mail.from} + --property + mail.smtp.port=${smtp.port} + ${jndiName} + + + + + 92-create-jms-resource + + exec + + pre-integration-test + + ${exec.asadmin} + + create-jms-resource + --restype + jakarta.jms.QueueConnectionFactory + jms/QueueConnectionFactory + + + + + 93-create-jms-resource + + exec + + pre-integration-test + + ${exec.asadmin} + + create-jms-resource + --restype + jakarta.jms.TopicConnectionFactory + jms/TopicConnectionFactory + + + + + 93-list-jndi-resource + + exec + + pre-integration-test + + ${exec.asadmin} + + list-jndi-resources + + + + + 95-stop-domain + + exec + + pre-integration-test + + ${exec.asadmin} + + stop-domain + + + + + + + maven-failsafe-plugin + 3.0.0-M5 + + + mail-tests-appclient + + integration-test + verify + + + jakarta.tck:appclient + + **/ejblink/casesens/*.* + + + ${glassfish.module.dir}/angus-mail.jar + ${glassfish.module.dir}/jakarta.mail-api.jar + ${glassfish.module.dir}/mail-connector.jar + ${glassfish.module.dir}/mail-runtime.jar + ${glassfish.module.dir}/glassfish-naming.jar + ${glassfish.module.dir}/glassfish-api.jar + ${glassfish.module.dir}/jakarta.jms-api.jar + ${glassfish.module.dir}/glassfish-corba-omgapi.jar + ${glassfish.module.dir}/glassfish-corba-orb.jar + ${project.build.directory}/${glassfish.toplevel.dir}/javadb/lib/derbyclient.jar + ${project.build.directory}/${glassfish.toplevel.dir}/javadb/lib/derby.jar + ${project.build.directory}/${glassfish.toplevel.dir}/mq/lib/imq.jar + ${project.build.directory}/${glassfish.toplevel.dir}/mq/lib/jms.jar + ${project.build.directory}/${glassfish.toplevel.dir}/mq/lib/fscontext.jar + + + ${project.build.directory}/${glassfish.toplevel.dir} + ${env.TS_HOME} + ${project.basedir} + arquillian.xml + + + ${project.build.directory}/${glassfish.toplevel.dir} + + + + + + + + + + full + + true + + + glassfish + + + + web + + web + + + + diff --git a/glassfish-runner/appclient-platform-tck/src/main/resources/jndi.properties b/glassfish-runner/appclient-platform-tck/src/main/resources/jndi.properties new file mode 100644 index 0000000000..50c75accbc --- /dev/null +++ b/glassfish-runner/appclient-platform-tck/src/main/resources/jndi.properties @@ -0,0 +1,28 @@ +# +# Copyright (c) 2013, 2018 Oracle and/or its affiliates. All rights reserved. +# +# This program and the accompanying materials are made available under the +# terms of the Eclipse Public License v. 2.0, which is available at +# http://www.eclipse.org/legal/epl-2.0. +# +# This Source Code may also be made available under the following Secondary +# Licenses when the conditions for such availability set forth in the +# Eclipse Public License v. 2.0 are satisfied: GNU General Public License, +# version 2 with the GNU Classpath Exception, which is available at +# https://www.gnu.org/software/classpath/license.html. +# +# SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0 +# + +# Properties for establishing initial JNDI Context. These properties +# are automatically read by JNDI during new InitialContext() as long +# as this file is in the search path. For JMS TCK the Open Message +# Queue uses the JNDI FileSystem Context Provider. +# +# If on a WINDOWS based system then the path below will need to contain +# the drive letter in the path. The path below is for UNIX based systems. +# So for WINDOWS platforms the (java.naming.provider.url) MUST BE: +# java.naming.provider.url=file:///C:/tmp/ri_admin_objects +# +java.naming.factory.initial=com.sun.jndi.fscontext.RefFSContextFactory +java.naming.provider.url=file:///tmp/ri_admin_objects diff --git a/glassfish-runner/appclient-platform-tck/src/main/resources/logging.properties b/glassfish-runner/appclient-platform-tck/src/main/resources/logging.properties new file mode 100644 index 0000000000..5139b6bf9d --- /dev/null +++ b/glassfish-runner/appclient-platform-tck/src/main/resources/logging.properties @@ -0,0 +1,15 @@ +handlers=java.util.logging.FileHandler,java.util.logging.ConsoleHandler + +tck.jakarta.platform.ant.level = FINER +org.glassfish.appclient.client.level = FINER + +java.util.logging.FileHandler.pattern = tck-run.log +java.util.logging.FileHandler.level = FINEST +#java.util.logging.FileHandler.formatter = tck.conversion.log.TestLogFormatter +java.util.logging.FileHandler.formatter = java.util.logging.SimpleFormatter +# date(1), source(2), logger(3), level(4), message(5), thrown(6) +java.util.logging.SimpleFormatter.format = [%1$tH:%tM:%1$tS.%1$tL] %2$.12s/%4$s %5$s %n + +# Limit the message that are printed on the console to INFO and above. +java.util.logging.ConsoleHandler.level = FINEST +java.util.logging.ConsoleHandler.formatter = java.util.logging.SimpleFormatter \ No newline at end of file diff --git a/glassfish-runner/appclient-platform-tck/src/test/java/arquillian/AppclientConfigTest.txt b/glassfish-runner/appclient-platform-tck/src/test/java/arquillian/AppclientConfigTest.txt new file mode 100644 index 0000000000..56fcdb2ec1 --- /dev/null +++ b/glassfish-runner/appclient-platform-tck/src/test/java/arquillian/AppclientConfigTest.txt @@ -0,0 +1,34 @@ +package arquillian; + +import org.jboss.arquillian.config.descriptor.api.ArquillianDescriptor; +import org.jboss.arquillian.config.descriptor.api.ProtocolDef; +import org.jboss.arquillian.container.test.impl.MapObject; +import org.jboss.shrinkwrap.descriptor.api.Descriptors; +import org.junit.jupiter.api.Test; +import tck.arquillian.protocol.appclient.AppClientProtocolConfiguration; + +import java.io.InputStream; +import java.util.Arrays; +import java.util.Map; + +public class AppclientConfigTest { + @Test + public void testLoadAppclientConfig() throws Exception{ + System.out.println("AppclientConfigTest.testLoadAppclientConfig"); + InputStream input = AppclientConfigTest.class.getResource("/arquillian.xml").openStream(); + ArquillianDescriptor descriptor = Descriptors.importAs(ArquillianDescriptor.class) + .fromStream(input); + System.out.println("########################" +descriptor.getGroups().get(0)); + AppClientProtocolConfiguration config = new AppClientProtocolConfiguration(); + ProtocolDef appclientDef = descriptor.getGroups().get(0).getGroupContainers().get(0).getProtocols().get(0); + System.out.println(appclientDef); + Map props = appclientDef.getProtocolProperties(); + System.out.println(props); + MapObject.populate(config, props); + System.out.println(config.getClientCmdLineString()); + System.out.println("--- ENV array:"); + System.out.println(Arrays.asList(config.clientEnvAsArray())); + System.out.println("--- CMD array:"); + System.out.println(Arrays.asList(config.clientCmdLineAsArray())); + } +} diff --git a/glassfish-runner/appclient-platform-tck/src/test/java/arquillian/GlassfishTckExtension.java b/glassfish-runner/appclient-platform-tck/src/test/java/arquillian/GlassfishTckExtension.java new file mode 100644 index 0000000000..413555b96a --- /dev/null +++ b/glassfish-runner/appclient-platform-tck/src/test/java/arquillian/GlassfishTckExtension.java @@ -0,0 +1,13 @@ +package arquillian; + +import org.jboss.arquillian.container.test.spi.client.deployment.ApplicationArchiveProcessor; +import org.jboss.arquillian.core.spi.LoadableExtension; +import org.jboss.arquillian.test.spi.enricher.resource.ResourceProvider; + +public class GlassfishTckExtension implements LoadableExtension { + @Override + public void register(ExtensionBuilder builder) { + builder.service(ResourceProvider.class, GlassfishXmlProcessor.class); + builder.observer(GlassfishXmlProcessor.class); + } +} \ No newline at end of file diff --git a/glassfish-runner/appclient-platform-tck/src/test/java/arquillian/GlassfishXmlProcessor.java b/glassfish-runner/appclient-platform-tck/src/test/java/arquillian/GlassfishXmlProcessor.java new file mode 100644 index 0000000000..0db6d11f0b --- /dev/null +++ b/glassfish-runner/appclient-platform-tck/src/test/java/arquillian/GlassfishXmlProcessor.java @@ -0,0 +1,139 @@ +package arquillian; + +import org.jboss.arquillian.config.descriptor.api.ArquillianDescriptor; +import org.jboss.arquillian.config.descriptor.api.ExtensionDef; +import org.jboss.arquillian.core.api.annotation.Observes; +import org.jboss.shrinkwrap.api.Archive; +import org.jboss.shrinkwrap.api.container.ManifestContainer; +import org.jboss.shrinkwrap.api.spec.EnterpriseArchive; +import org.jboss.shrinkwrap.api.spec.JavaArchive; +import org.jboss.shrinkwrap.api.spec.WebArchive; +import tck.arquillian.porting.lib.spi.AbstractTestArchiveProcessor; +import org.jboss.shrinkwrap.api.asset.StringAsset; + + +import java.io.File; +import java.io.IOException; +import java.net.URL; +import java.nio.file.Files; +import java.nio.file.Path; +import java.nio.file.Paths; +import java.util.Collections; +import java.util.HashSet; +import java.util.List; +import java.util.logging.Logger; + +public class GlassfishXmlProcessor extends AbstractTestArchiveProcessor { + static Logger log = Logger.getLogger(GlassfishXmlProcessor.class.getName()); + static HashSet sunXmlFiles = new HashSet(); + static { + sunXmlFiles.add("META-INF/sun-application-client.xml"); + sunXmlFiles.add("META-INF/sun-application.xml"); + sunXmlFiles.add("META-INF/sun-ra.xml"); + sunXmlFiles.add("WEB-INF/sun-web.xml"); + sunXmlFiles.add("META-INF/sun-ejb-jar.xml"); + } + + private Path descriptorDirRoot; + + /** + * Called on completion of the Arquillian configuration. + */ + public void initalize(@Observes ArquillianDescriptor descriptor) { + // Must call to setup the ResourceProvider + super.initalize(descriptor); + + // Get the descriptor path + ExtensionDef descriptorsDef = descriptor.extension("jboss-descriptors"); + String descriptorDir = descriptorsDef.getExtensionProperties().get("descriptorDir"); + if(descriptorDir == null) { + String msg = "Specify the descriptorDir property in arquillian.xml as extension:\n"+ + "\n" + + " path-to-descriptors-dir\n" + + ""; + //throw new IllegalStateException(msg); + } else { + this.descriptorDirRoot = Paths.get(descriptorDir); + if(!Files.exists(this.descriptorDirRoot)) { + //throw new RuntimeException("Descriptor directory does not exist: " + this.descriptorDirRoot); + } + } + } + + @Override + public void processClientArchive(JavaArchive clientArchive, Class testClass, URL sunXmlURL) { + String name = clientArchive.getName(); + addDescriptors(name, clientArchive, testClass); + } + + @Override + public void processWebArchive(WebArchive webArchive, Class testClass, URL sunXmlURL) { + String name = webArchive.getName(); + addDescriptors(name, webArchive, testClass); + } + + @Override + public void processRarArchive(JavaArchive warArchive, Class testClass, URL sunXmlURL) { + + } + + @Override + public void processParArchive(JavaArchive javaArchive, Class aClass, URL url) { + + } + + @Override + public void processEarArchive(EnterpriseArchive earArchive, Class testClass, URL sunXmlURL) { + String name = earArchive.getName(); + addDescriptors(name, earArchive, testClass); + } + + @Override + public void processEjbArchive(JavaArchive ejbArchive, Class testClass, URL sunXmlURL) { + String name = ejbArchive.getName(); + addDescriptors(name, ejbArchive, testClass); + } + + /** + * + * @param archiveName + * @param archive + * @param testClass + */ + protected void addDescriptors(String archiveName, ManifestContainer archive, Class testClass) { + /*String pkgName = testClass.getPackageName(); + Path pkgPath = Paths.get(pkgName.replace(".", "/")); + Path descriptorDir = descriptorDirRoot.resolve(pkgPath); + List files = findJBossDescriptors(descriptorDir); + for (File f : files) { + String name = f.getName(); + if(!name.startsWith(archiveName)) { + continue; + } + try { + URL url = f.toURL(); + // stateful_migration_threetwo_annotated.ear.jboss-deployment-structure.xml -> jboss-deployment-structure.xml + String descriptorName = name.replace(archiveName+".", ""); + if(archive instanceof WebArchive webArchive) { + webArchive.addAsWebInfResource(url, descriptorName); + } else { + + archive.addAsManifestResource(url, descriptorName); + } + } catch (IOException e) { + throw new RuntimeException(e); + } + }*/ + } + protected List findJBossDescriptors(Path pkgPath) { + try { + List files = Files.walk(pkgPath, 1) + .map(Path::toFile) + .filter(File::isFile) + .toList(); + return files; + } catch (Exception e) { + } + return Collections.emptyList(); + } +} diff --git a/glassfish-runner/appclient-platform-tck/src/test/resources/META-INF/services/org.jboss.arquillian.core.spi.LoadableExtension b/glassfish-runner/appclient-platform-tck/src/test/resources/META-INF/services/org.jboss.arquillian.core.spi.LoadableExtension new file mode 100644 index 0000000000..213f7f5aa9 --- /dev/null +++ b/glassfish-runner/appclient-platform-tck/src/test/resources/META-INF/services/org.jboss.arquillian.core.spi.LoadableExtension @@ -0,0 +1 @@ +arquillian.GlassfishTckExtension \ No newline at end of file diff --git a/glassfish-runner/appclient-platform-tck/src/test/resources/appclient-arquillian.xml b/glassfish-runner/appclient-platform-tck/src/test/resources/appclient-arquillian.xml new file mode 100644 index 0000000000..0c311e2a65 --- /dev/null +++ b/glassfish-runner/appclient-platform-tck/src/test/resources/appclient-arquillian.xml @@ -0,0 +1,64 @@ + + + + + + true + true + target/appclient + true + + ${glassfish.home}/glassfish/bin/appclient \ + -Djdk.tls.client.enableSessionTicketExtension=false \ + -Djdk.tls.server.enableSessionTicketExtension=false \ + -Djava.security.policy=${glassfish.home}/glassfish/lib/appclient/client.policy \ + -Dcts.tmp=${ts.home}/tmp \ + -Djava.security.auth.login.config=${glassfish.home}/glassfish/lib/appclient/appclientlogin.conf \ + -Djava.protocol.handler.pkgs=javax.net.ssl \ + -Djavax.net.ssl.keyStore=${ts.home}/bin/certificates/clientcert.jks \ + -Djavax.net.ssl.keyStorePassword=changeit \ + -Djavax.net.ssl.trustStore=${glassfish.home}/glassfish/domains/domain1/config/cacerts.jks \ + -Djavax.xml.parsers.SAXParserFactory=com.sun.org.apache.xerces.internal.jaxp.SAXParserFactoryImpl \ + -Djavax.xml.parsers.DocumentBuilderFactory=com.sun.org.apache.xerces.internal.jaxp.DocumentBuilderFactoryImpl \ + -Djavax.xml.transform.TransformerFactory=com.sun.org.apache.xalan.internal.xsltc.trax.TransformerFactoryImpl \ + -Dorg.xml.sax.driver=com.sun.org.apache.xerces.internal.parsers.SAXParser \ + -Dorg.xml.sax.parser=org.xml.sax.helpers.XMLReaderAdapter \ + -Doracle.jdbc.J2EE13Compliant=true \ + -Doracle.jdbc.mapDateToTimestamp \ + -Dstartup.login=false \ + -Dauth.gui=false \ + -Dlog.file.location=${glassfish.home}/glassfish/domains/domain1/logs \ + -Dri.log.file.location=${glassfish.home}/glassfish/domains/domain1/logs \ + -DwebServerHost.2=localhost \ + -DwebServerPort.2=8080 \ + -Ddeliverable.class=com.sun.ts.lib.deliverable.cts.CTSDeliverable \ + -jar \ + ${clientEarDir}/${clientAppArchive} + + \\ + + PATH=${env.PATH};LD_LIBRARY_PATH=${glassfish.home}/lib;AS_DEBUG=true; + APPCPATH=${glassfish.home}/glassfish/lib/arquillian-protocol-lib.jar:target/appclient/lib/arquillian-core.jar:target/appclient/lib/arquillian-junit5.jar:${glassfish.home}/glassfish/modules/security.jar + ${project.basedir} + ${ts.home}/tmp + ${ts.home}/bin/ts.jte + ${ts.home}/bin/tssql.stmt + true + 20000 + + + \ No newline at end of file diff --git a/glassfish-runner/appclient-platform-tck/src/test/resources/arquillian.xml b/glassfish-runner/appclient-platform-tck/src/test/resources/arquillian.xml new file mode 100644 index 0000000000..02ab1a7c68 --- /dev/null +++ b/glassfish-runner/appclient-platform-tck/src/test/resources/arquillian.xml @@ -0,0 +1,32 @@ + + + + + + true + true + target/appclient + true + ${project.basedir} + ${ts.home}/tmp + ${ts.home}/bin/ts.jte + ${ts.home}/bin/tssql.stmt + true + 20000 + + + \ No newline at end of file diff --git a/glassfish-runner/appclient-platform-tck/src/test/resources/logging.properties b/glassfish-runner/appclient-platform-tck/src/test/resources/logging.properties new file mode 100644 index 0000000000..5139b6bf9d --- /dev/null +++ b/glassfish-runner/appclient-platform-tck/src/test/resources/logging.properties @@ -0,0 +1,15 @@ +handlers=java.util.logging.FileHandler,java.util.logging.ConsoleHandler + +tck.jakarta.platform.ant.level = FINER +org.glassfish.appclient.client.level = FINER + +java.util.logging.FileHandler.pattern = tck-run.log +java.util.logging.FileHandler.level = FINEST +#java.util.logging.FileHandler.formatter = tck.conversion.log.TestLogFormatter +java.util.logging.FileHandler.formatter = java.util.logging.SimpleFormatter +# date(1), source(2), logger(3), level(4), message(5), thrown(6) +java.util.logging.SimpleFormatter.format = [%1$tH:%tM:%1$tS.%1$tL] %2$.12s/%4$s %5$s %n + +# Limit the message that are printed on the console to INFO and above. +java.util.logging.ConsoleHandler.level = FINEST +java.util.logging.ConsoleHandler.formatter = java.util.logging.SimpleFormatter \ No newline at end of file