This example shows code for the following:
Using the existing file c:\myapp\embeddedserver\domains\domain1\config\domain.xml and preserving this file when the application is stopped.
Deploying an application from the archive file c:\samples\simple.war.
The files that this example uses are organized as follows:
c:\myapp\embeddedserver\lib\glassfish-embedded-all.jar
c:\myapp\embeddedserver\domains\domain1\config\domain.xml
c:\myapp\embeddedserver\domains\domain1\logs
c:\myapp\embeddedserver\domains\domain1\docroot
import java.io.File; import java.io.BufferedReader; import org.glassfish.api.deployment.*; import org.glassfish.api.embedded.*; public class Main { /** * @param args the command line arguments */ public static void main(String[] args) { File installDir = new File ("c:\\myapp\\embeddedserver"); File war = new File("c:\\samples\\simple.war"); try { Server.Builder builder = new Server.Builder("test"); ... EmbeddedFileSystem.Builder efsb = new EmbeddedFileSystem.Builder(); efsb.autoDelete(false); efsb.installRoot(installDir); EmbeddedFileSystem efs = efsb.build(); builder.embeddedFileSystem(efs); ... Server server = builder.build(); server.createPort(8080); server.start(); EmbeddedDeployer deployer = server.getDeployer(); DeployCommandParameters params = new DeployCommandParameters(); deployer.deploy(war, params); } catch (Exception e) { e.printStackTrace(); } System.out.println("Press Enter to stop server"); // wait for Enter new BufferedReader(new java.io.InputStreamReader(System.in)).readLine(); try { deployer.undeployAll(); server.stop(); } catch (Exception e) { e.printStackTrace(); } } }