use of org.glassfish.embeddable.GlassFishProperties in project Payara by payara.
the class EmployeeTest 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 application.
File archive = new File(System.getProperty("basedir") + "/target/multiple_app_scoped_service_test.war");
// TODO :: use mvn apis to get the archive location.
Assert.assertTrue(archive.exists());
Deployer deployer = null;
String appName = null;
CommandRunner commandRunner = glassfish.getCommandRunner();
try {
// 2. Deploy app
deployer = glassfish.getDeployer();
appName = deployer.deploy(archive);
System.err.println("Deployed [" + appName + "]");
Assert.assertNotNull(appName);
CommandResult result = commandRunner.run("list-services");
System.out.println("\nlist-services command output [ " + result.getOutput() + "]");
// 3. Access the app to make sure PaaS 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 + "/multiple_app_scoped_service_test/EmployeeServlet", "Employee ID");
get("http://" + instanceIP + ":" + HTTP_PORT + "/multiple_app_scoped_service_test/EmployeeServlet", "Employee Salary");
// 4. Undeploy the PaaS application .
} finally {
if (appName != null) {
deployer.undeploy(appName);
System.err.println("Undeployed [" + appName + "]");
}
}
}
use of org.glassfish.embeddable.GlassFishProperties in project Payara by payara.
the class EmployeeTest 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 application.
File archive = new File(System.getProperty("basedir") + "/target/multiple_shared_db_service_test.war");
// TODO :: use mvn apis to get the archive location.
Assert.assertTrue(archive.exists());
Deployer deployer = null;
String appName = null;
CommandRunner commandRunner = glassfish.getCommandRunner();
try {
// 2.1. Create the shared DB services
CommandResult createSharedServiceResult = commandRunner.run("create-shared-service", "--characteristics", "service-type=Database", "--configuration", "database.name=hr_database:database.init.sql=/tmp/init.hr-service.sql", "--servicetype", "Database", "hr-service");
System.out.println("\ncreate-shared-service command output [ " + createSharedServiceResult.getOutput() + "]");
CommandResult createSharedServiceResult1 = commandRunner.run("create-shared-service", "--characteristics", "service-type=Database:product-vendor=MySQL", "--configuration", "database.name=salary_database:database.init.sql=/tmp/init.salary-service.sql", "--servicetype", "Database", "salary-service");
System.out.println("\ncreate-shared-service command output [ " + createSharedServiceResult1.getOutput() + "]");
// 2.2. List services to check for the shared service
CommandResult listSharedServicesResult = commandRunner.run("list-services", "--scope", "shared");
System.out.println("\nlist-services command output [ " + listSharedServicesResult.getOutput() + "]");
// 2.3. Deploy app
deployer = glassfish.getDeployer();
appName = deployer.deploy(archive);
System.err.println("Deployed [" + appName + "]");
Assert.assertNotNull(appName);
CommandResult result = commandRunner.run("list-services");
System.out.println("\nlist-services command output [ " + result.getOutput() + "]");
// 3. Access the app to make sure PaaS 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 + "/multiple_shared_db_service_test/EmployeeServlet", "Employee ID");
get("http://" + instanceIP + ":" + HTTP_PORT + "/multiple_shared_db_service_test/EmployeeServlet", "Employee Salary");
// 4. Undeploy the PaaS application .
} finally {
if (appName != null) {
deployer.undeploy(appName);
System.err.println("Undeployed [" + appName + "]");
System.out.println("Destroying the resources created");
// 4.1. Delete Shared DB Service.
CommandResult deletehrResult = commandRunner.run("delete-shared-service", "hr-service");
System.out.println("\ndelete-shared-service hr-service command output [" + deletehrResult.getOutput() + "]");
CommandResult deletesalResult = commandRunner.run("delete-shared-service", "salary-service");
System.out.println("\ndelete-shared-service salary-service command output [" + deletesalResult.getOutput() + "]");
}
}
}
use of org.glassfish.embeddable.GlassFishProperties in project Payara by payara.
the class BasicCDITest 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("cdi_basic", 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, "cdi_basic");
// 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:8080/cdi_basic/BasicCDITestServlet", "All CDI beans have been injected.");
deployer.undeploy(appname);
glassfish.dispose();
}
use of org.glassfish.embeddable.GlassFishProperties in project Payara by payara.
the class StaticGlassFishRuntime method newGlassFish.
/**
* Creates a new GlassFish instance and add it to a Map of instances
* created by this runtime.
*
* @param glassFishProperties
* @return
* @throws Exception
*/
@Override
public synchronized GlassFish newGlassFish(GlassFishProperties glassFishProperties) throws GlassFishException {
// some code to be executed which may be depending on the environment variable values.
try {
// Don't set temporarily created instanceroot in the user supplied
// GlassFishProperties, hence clone it.
Properties cloned = new Properties();
cloned.putAll(glassFishProperties.getProperties());
final GlassFishProperties gfProps = new GlassFishProperties(cloned);
setEnv(gfProps);
final StartupContext startupContext = new StartupContext(gfProps.getProperties());
ModulesRegistry modulesRegistry = SingleHK2Factory.getInstance().createModulesRegistry();
ServiceLocator serviceLocator = main.createServiceLocator(modulesRegistry, startupContext, Arrays.asList((PopulatorPostProcessor) new EmbeddedInhabitantsParser(), new ContextDuplicatePostProcessor()), null);
final ModuleStartup gfKernel = main.findStartupService(modulesRegistry, serviceLocator, null, startupContext);
// create a new GlassFish instance
GlassFishImpl gfImpl = new GlassFishImpl(gfKernel, serviceLocator, gfProps.getProperties()) {
@Override
public void dispose() throws GlassFishException {
try {
super.dispose();
} finally {
gfMap.remove(gfProps.getInstanceRoot());
if ("true".equalsIgnoreCase(gfProps.getProperties().getProperty(autoDelete)) && gfProps.getInstanceRoot() != null) {
File instanceRoot = new File(gfProps.getInstanceRoot());
if (instanceRoot.exists()) {
// might have been deleted already.
Util.deleteRecursive(instanceRoot);
}
}
}
}
};
// Add this newly created instance to a Map
gfMap.put(gfProps.getInstanceRoot(), gfImpl);
return gfImpl;
} catch (GlassFishException e) {
throw e;
} catch (Exception e) {
throw new GlassFishException(e);
}
}
use of org.glassfish.embeddable.GlassFishProperties in project Payara by payara.
the class UberMain method run.
public void run() throws Exception {
// handle Ctrt-C.
addShutdownHook();
GlassFishProperties gfProps = new GlassFishProperties();
gfProps.setProperty("org.glassfish.embeddable.autoDelete", System.getProperty("org.glassfish.embeddable.autoDelete", "true"));
gf = GlassFishRuntime.bootstrap().newGlassFish(gfProps);
gf.start();
CommandRunner cr = gf.getCommandRunner();
while (true) {
System.out.print("\n\nGlassFish $ ");
String str = null;
try {
str = new BufferedReader(new InputStreamReader(System.in)).readLine();
} catch (Exception e) {
e.printStackTrace();
}
if (str != null && str.trim().length() != 0) {
if ("exit".equalsIgnoreCase(str) || "quit".equalsIgnoreCase(str)) {
break;
}
String[] split = str.split(" ");
String command = split[0].trim();
String[] commandParams = null;
if (split.length > 1) {
commandParams = new String[split.length - 1];
for (int i = 1; i < split.length; i++) {
commandParams[i - 1] = split[i].trim();
}
}
try {
CommandResult result = commandParams == null ? cr.run(command) : cr.run(command, commandParams);
System.out.println("\n" + result.getOutput());
} catch (Exception ex) {
System.out.println(ex.getMessage());
}
}
}
try {
gf.stop();
gf.dispose();
} catch (Exception ex) {
}
}
Aggregations