2016-06-29 1 views
2

Je veux vérifier certaines commandes cli si elles sont valables depuis Java. Je ne peux pas utiliser le fichier de configuration en cours d'exécution. De plus, je ne peux pas utiliser un Wildfly en cours d'exécution, car je devrais recharger de temps en temps.Comment puis-je démarrer un serveur embarqué dans jboss cli à partir de code java?

Je veux utiliser hors ligne cli (cli avec le serveur embarqué)

Ce que je fais:

Connectez-vous à l'aide CLi org.jboss.as.cli.scriptsupport.CLI

CLI cli = CLI.newInstance(); 
cli.connect("127.0.0.1",9990,"admin","admin".toCharArray()); 

à partir d'un serveur embarqué via cli.cmd

cli.cmd("embed-server --server-config=standalone.xml --std-out=discard"); 

Mais à part moi qui attend toujours pour que cette commande finisse (?) Rien ne se passe.

Une chose que j'ai remarquée était, après le déploiement de mon application configuration-management.war à wildfly, l'état des modifications à «déployés». Mais alors, un service ne démarre pas. Je n'y ai pas prêté beaucoup d'attention, car après cela, je peux voir une sortie de mon application. Peut-être que cela a quelque chose à voir avec ça?

2016-06-29 15:59:55,333 INFO [org.wildfly.extension.undertow] (ServerService Thread Pool -- 83) WFLYUT0021: Registered web context: /configuration 

2016-06-29 15:59:55,364 INFO [org.jboss.as.server] (DeploymentScanner-threads - 2) WFLYSRV0016: Replaced deployment "configuration-management.war" with deployment "configuration-management.war" 

2016-06-29 15:59:55,364 INFO [org.jboss.as.controller] (DeploymentScanner-threads - 2) WFLYCTL0183: Service status report 

WFLYCTL0186: Services which failed to start:  service jboss.deployment.unit."configuration-management.war".POST_MODULE 



2016-06-29 16:00:29,530 INFO [stdout] (default task-1) this is mine! 

Tout ce qu'il ya est tout petit rouet de la mort dans le coin supérieur gauche de mon mozilla firefox, ce qui indique que je suis toujours en attente d'une réponse.

Des indices?

Répondre

1

Lorsque vous démarrez un serveur intégré, il ne démarre aucune interface. Cela inclut l'interface de gestion. Il ne semble pas que le support de script permette l'intégration de CLI. Vous pouvez cependant le supporter.

Cependant, vous pouvez utiliser l'API CLI CommandContext pour y parvenir.

final CommandContext commandContext = CommandContextFactory.getInstance().newCommandContext(); 
commandContext.handle("embed-server --jboss-home=/path/to/wildfly-10.0.0.Final"); 
commandContext.handle(":read-resource"); 
commandContext.handle("stop-embedded-server"); 

Prenez note une commande, comme module add, exigera la propriété système jboss.home.dir à régler ainsi.