Search in sources :

Example 26 with GlassFishProperties

use of org.glassfish.embeddable.GlassFishProperties in project Payara by payara.

the class BasicSharedServiceTest method test.

@Test
public void test() throws Exception {
    // 1. Bootstrap GlassFish DAS in embedded mode.
    GlassFishProperties glassFishProperties = new GlassFishProperties();
    glassFishProperties.setInstanceRoot(System.getenv("S1AS_HOME") + "/domains/domain1");
    glassFishProperties.setConfigFileReadOnly(false);
    GlassFish glassfish = GlassFishRuntime.bootstrap().newGlassFish(glassFishProperties);
    PrintStream sysout = System.out;
    glassfish.start();
    System.setOut(sysout);
    // 2. Deploy the PaaS-bookstore application.
    File archive = new File(System.getProperty("basedir") + // TODO :: use mvn apis to get the
    "/target/basic-shared-service-test.war");
    // archive location.
    org.junit.Assert.assertTrue(archive.exists());
    Deployer deployer = null;
    String appName = null;
    try {
        // Create the shared services first, as these services will be referenced by the application
        createSharedServices();
        deployer = glassfish.getDeployer();
        appName = deployer.deploy(archive);
        System.err.println("Deployed [" + appName + "]");
        Assert.assertNotNull(appName);
        CommandRunner commandRunner = glassfish.getCommandRunner();
        CommandResult result = commandRunner.run("list-services");
        System.out.println("\nlist-services command output [ " + result.getOutput() + "]");
        // 3. Access the app to make sure PaaS-basic-shared-service-test app is correctly
        // provisioned.
        String HTTP_PORT = (System.getProperty("http.port") != null) ? System.getProperty("http.port") : "28080";
        String instanceIP = getLBIPAddress(glassfish);
        get("http://" + instanceIP + ":" + HTTP_PORT + "/basic-shared-service-test/list", "Here is a list of animals in the zoo.");
        testSharedService();
        // 4. Access the app to make sure PaaS-basic-shared-service-test app is correctly
        // provisioned after running Shared-Services test
        get("http://" + instanceIP + ":" + HTTP_PORT + "/basic-shared-service-test/list", "Here is a list of animals in the zoo.");
    // 5. Undeploy the Zoo catalogue application .
    } finally {
        if (appName != null) {
            deployer.undeploy(appName);
            System.err.println("Undeployed [" + appName + "]");
            deleteSharedService();
            try {
                boolean undeployClean = false;
                CommandResult commandResult = glassfish.getCommandRunner().run("list-services");
                System.out.println(commandResult.getOutput().toString());
                if (commandResult.getOutput().contains("Nothing to list")) {
                    undeployClean = true;
                }
                Assert.assertTrue(undeployClean);
            } catch (Exception e) {
                System.err.println("Couldn't varify whether undeploy succeeded");
            }
        }
    }
}
Also used : PrintStream(java.io.PrintStream) GlassFish(org.glassfish.embeddable.GlassFish) File(java.io.File) CommandRunner(org.glassfish.embeddable.CommandRunner) GlassFishProperties(org.glassfish.embeddable.GlassFishProperties) Deployer(org.glassfish.embeddable.Deployer) CommandResult(org.glassfish.embeddable.CommandResult) Test(org.junit.Test)

Example 27 with GlassFishProperties

use of org.glassfish.embeddable.GlassFishProperties in project Payara by payara.

the class BasicPaaSTest method bootstrap.

private GlassFish bootstrap() throws Exception {
    GlassFishProperties glassFishProperties = new GlassFishProperties();
    glassFishProperties.setInstanceRoot(System.getenv("S1AS_HOME") + "/domains/domain1");
    glassFishProperties.setConfigFileReadOnly(false);
    GlassFish glassfish = GlassFishRuntime.bootstrap().newGlassFish(glassFishProperties);
    PrintStream sysout = System.out;
    glassfish.start();
    System.setOut(sysout);
    return glassfish;
}
Also used : PrintStream(java.io.PrintStream) GlassFish(org.glassfish.embeddable.GlassFish) GlassFishProperties(org.glassfish.embeddable.GlassFishProperties)

Example 28 with GlassFishProperties

use of org.glassfish.embeddable.GlassFishProperties in project Payara by payara.

the class LifeCycleTest method test.

@Test
public void test() throws GlassFishException {
    runtime = GlassFishRuntime.bootstrap();
    GlassFish instance1 = runtime.newGlassFish();
    logger.info("Instance1 created" + instance1);
    instance1.start();
    logger.info("Instance1 started #1");
    sleep();
    instance1.stop();
    logger.info("Instance1 stopped #1");
    instance1.start();
    logger.info("Instance1 started #2");
    sleep();
    instance1.stop();
    logger.info("Instance1 stopped #2");
    instance1.dispose();
    logger.info("Instance1 disposed");
    checkDisposed();
    GlassFishProperties props = new GlassFishProperties();
    props.setProperty("glassfish.embedded.tmpdir", System.getProperty("user.dir"));
    GlassFish instance2 = runtime.newGlassFish(props);
    logger.info("instance2 created" + instance2);
    instance2.start();
    logger.info("Instance2 started #1");
    sleep();
    instance2.stop();
    logger.info("Instance2 stopped #1");
    instance2.start();
    logger.info("Instance2 started #2");
    sleep();
    instance2.stop();
    logger.info("Instance2 stopped #2");
    instance2.dispose();
    logger.info("Instance2 disposed");
    checkDisposed();
}
Also used : GlassFish(org.glassfish.embeddable.GlassFish) GlassFishProperties(org.glassfish.embeddable.GlassFishProperties) Test(org.junit.Test)

Example 29 with GlassFishProperties

use of org.glassfish.embeddable.GlassFishProperties in project Payara by payara.

the class ScatteredArchiveTest method test.

@Test
public void test() throws Exception {
    GlassFishProperties props = new GlassFishProperties();
    props.setPort("http-listener", 8080);
    GlassFish glassfish = GlassFishRuntime.bootstrap().newGlassFish(props);
    glassfish.start();
    // Test Scattered Web Archive
    ScatteredArchive sa = new ScatteredArchive("scatteredarchive", ScatteredArchive.Type.WAR, new File("src/main/webapp"));
    sa.addClassPath(new File("target/classes"));
    sa.addClassPath(new File("src/main/resources"));
    URI warURI = sa.toURI();
    printContents(warURI);
    // Deploy archive
    Deployer deployer = glassfish.getDeployer();
    String appname = deployer.deploy(warURI);
    System.out.println("Deployed [" + appname + "]");
    Assert.assertEquals(appname, "scatteredarchive");
    // Now create a http listener and access the app.
    WebContainer webcontainer = glassfish.getService(WebContainer.class);
    HttpListener listener = new HttpListener();
    listener.setId("my-listener");
    listener.setPort(9090);
    webcontainer.addWebListener(listener);
    get("http://localhost:9090/satest", "Hi, my name is Bhavani. What's yours?");
    get("http://localhost:9090/satest/ScatteredArchiveTestServlet", "Hi from ScatteredArchiveTestServlet");
    get("http://localhost:8080/satest/ScatteredArchiveTestServlet", "Hi from ScatteredArchiveTestServlet");
    deployer.undeploy(appname);
    // Test Scattered RA
    ScatteredArchive rar = new ScatteredArchive("scatteredra", ScatteredArchive.Type.RAR);
    rar.addClassPath(new File("target/classes"));
    rar.addMetadata(new File("src/main/config/ra.xml"));
    URI rarURI = rar.toURI();
    printContents(rarURI);
    appname = deployer.deploy(rarURI);
    System.out.println("Deployed RAR [" + appname + "]");
    Assert.assertEquals(appname, "scatteredra");
    // Test Scattered Enterprise Archive.
    ScatteredEnterpriseArchive ear = new ScatteredEnterpriseArchive("sear");
    ear.addArchive(warURI, "sa.war");
    ear.addArchive(rarURI);
    ear.addMetadata(new File("src/main/config/application.xml"));
    URI earURI = ear.toURI();
    printContents(earURI);
    appname = deployer.deploy(earURI);
    System.out.println("Deployed [" + appname + "]");
    Assert.assertEquals(appname, "sear");
    get("http://localhost:9090/satest", "Hi, my name is Bhavani. What's yours?");
    get("http://localhost:9090/satest/ScatteredArchiveTestServlet", "Hi from ScatteredArchiveTestServlet");
    get("http://localhost:8080/satest/ScatteredArchiveTestServlet", "Hi from ScatteredArchiveTestServlet");
    glassfish.dispose();
}
Also used : ScatteredArchive(org.glassfish.embeddable.archive.ScatteredArchive) WebContainer(org.glassfish.embeddable.web.WebContainer) ScatteredEnterpriseArchive(org.glassfish.embeddable.archive.ScatteredEnterpriseArchive) HttpListener(org.glassfish.embeddable.web.HttpListener) GlassFish(org.glassfish.embeddable.GlassFish) JarFile(java.util.jar.JarFile) File(java.io.File) URI(java.net.URI) GlassFishProperties(org.glassfish.embeddable.GlassFishProperties) Deployer(org.glassfish.embeddable.Deployer) Test(org.junit.Test)

Example 30 with GlassFishProperties

use of org.glassfish.embeddable.GlassFishProperties in project Payara by payara.

the class RunAdminCommandsTest method test.

@Test
public void test() throws Exception {
    GlassFishProperties props = new GlassFishProperties();
    props.setPort("http-listener", 9090);
    GlassFish glassfish = GlassFishRuntime.bootstrap().newGlassFish(props);
    glassfish.start();
    // Bind the command runner in JNDI tree with your own mapped-name.
    CommandRunner cr = glassfish.getCommandRunner();
    new InitialContext().bind("org.glassfish.embeddable.CommandRunner", cr);
    // Deploy archive
    Deployer deployer = glassfish.getDeployer();
    String appname = deployer.deploy(new File("target/servlet_runs_admin_cmds.war"));
    System.out.println("Deployed [" + appname + "]");
    Assert.assertEquals(appname, "servlet_runs_admin_cmds");
    get("http://localhost:9090/servlet_runs_admin_cmds", "JDBC connection pool sample_derby_pool created successfully");
    deployer.undeploy(appname);
    glassfish.dispose();
}
Also used : GlassFish(org.glassfish.embeddable.GlassFish) CommandRunner(org.glassfish.embeddable.CommandRunner) File(java.io.File) GlassFishProperties(org.glassfish.embeddable.GlassFishProperties) InitialContext(javax.naming.InitialContext) Deployer(org.glassfish.embeddable.Deployer) Test(org.junit.Test)

Aggregations

GlassFishProperties (org.glassfish.embeddable.GlassFishProperties)35 GlassFish (org.glassfish.embeddable.GlassFish)30 File (java.io.File)24 PrintStream (java.io.PrintStream)21 Deployer (org.glassfish.embeddable.Deployer)21 Test (org.junit.Test)21 CommandRunner (org.glassfish.embeddable.CommandRunner)18 CommandResult (org.glassfish.embeddable.CommandResult)17 JarFile (java.util.jar.JarFile)13 IOException (java.io.IOException)6 BootstrapProperties (org.glassfish.embeddable.BootstrapProperties)6 GlassFishException (org.glassfish.embeddable.GlassFishException)4 ServiceLocator (org.glassfish.hk2.api.ServiceLocator)4 URI (java.net.URI)3 ScatteredArchive (org.glassfish.embeddable.archive.ScatteredArchive)3 HttpListener (org.glassfish.embeddable.web.HttpListener)3 WebContainer (org.glassfish.embeddable.web.WebContainer)3 GlassFishRuntime (org.glassfish.embeddable.GlassFishRuntime)2 ArchiveFactory (com.sun.enterprise.deploy.shared.ArchiveFactory)1 ModulesRegistry (com.sun.enterprise.module.ModulesRegistry)1