Je suis programme à partir d'un service dans l'axe 2 (1,5), comme ceci:démarrage d'un service axis2 programme
ConfigurationContext context = ConfigurationContextFactory.createConfigurationContextFromFileSystem(null, null);
AxisConfiguration cfg = context.getAxisConfiguration();
Map<String, MessageReceiver> mrMap = new HashMap<String, MessageReceiver>();
mrMap.put("http://www.w3.org/ns/wsdl/in-only", RPCInOnlyMessageReceiver.class.newInstance());
mrMap.put("http://www.w3.org/ns/wsdl/in-out", RPCMessageReceiver.class.newInstance());
AxisService service = AxisService.createService(MonitorWebService.class.getName(), cfg, mrMap, "", "http://samples", MonitorWebService.class.getClassLoader());
service.setScope("application");
cfg.addService(service);
SimpleHTTPServer server = new SimpleHTTPServer(context, 8080);
server.start();
Avec cette configuration, le service est créé uniquement lorsque la première demande d'opération arrive - comment puis-je forcer l'axe à construire le service immédiatement?
Mise à jour: J'ai essayé d'utiliser deployService(), plutôt que cfg.addService(), et cela démarre le service immédiatement. Cependant, une autre instance du service est créée lorsque la première requête arrive, donc ce n'est pas bon non plus.
Avec cette approche, puis-je utiliser service.xml pour configurer le service? –