private RemoteConfiguration buildRemoteConfiguration(RemoteModel remoteModel) { RuntimeEngine engine = null; if (remoteModel instanceof RemoteJmsModel) { RemoteJmsRuntimeEngineBuilder builder = RemoteRuntimeEngineFactory.newJmsBuilder(); InitialContext ctx = configRemoteJms(builder, (RemoteJmsModel)remoteModel); try { engine = builder.build(); } finally { if (ctx != null) { try { ctx.close(); } catch (Exception e) { e.getMessage(); // ignore but keep checkstyle happy } } } } else if (remoteModel instanceof RemoteRestModel) { RemoteRestRuntimeEngineBuilder builder = RemoteRuntimeEngineFactory.newRestBuilder(); configRemoteRest(builder, (RemoteRestModel)remoteModel); engine = builder.build(); } RemoteConfiguration config = null; if (engine instanceof RemoteRuntimeEngine) { Access<RemoteConfiguration> configAccess = new FieldAccess<RemoteConfiguration>(RemoteRuntimeEngine.class, "config"); config = configAccess.isReadable() ? configAccess.read(engine) : null; } return config; }
/** * In the 6.0.x code, we did this: * * // Setup remote JMS runtime engine factory * RemoteJmsRuntimeEngineFactory remoteJmsFactory * = new RemoteJmsRuntimeEngineFactory(deploymentId, serverUrl, user, password); * * // Create runtime engine * RuntimeEngine engine = remoteJmsFactory.newRuntimeEngine(); */ public void createJmsRuntimeEngine(String deploymentId, URL serverUrl, String user, String password) { // Now we just do this: RuntimeEngine engine = RemoteRuntimeEngineFactory.newJmsBuilder() .addDeploymentId(deploymentId) .addJbossServerHostName(serverUrl.getHost()) .addUserName(user) .addPassword(password) .build(); // If you still want to use the factory to create multiple instances, you can always still do this: RemoteJmsRuntimeEngineFactory jmsRuntimeFactory = RemoteRuntimeEngineFactory.newJmsBuilder() .addDeploymentId(deploymentId) .addJbossServerHostName(serverUrl.getHost()) .addUserName(user) .addPassword(password) .buildFactory(); engine = jmsRuntimeFactory.newRuntimeEngine(); }
private RemoteConfiguration buildRemoteConfiguration(RemoteModel remoteModel) { RuntimeEngine engine = null; if (remoteModel instanceof RemoteJmsModel) { RemoteJmsRuntimeEngineBuilder builder = RemoteRuntimeEngineFactory.newJmsBuilder(); InitialContext ctx = configRemoteJms(builder, (RemoteJmsModel)remoteModel); try { engine = builder.build(); } finally { if (ctx != null) { try { ctx.close(); } catch (Exception e) { e.getMessage(); // ignore but keep checkstyle happy } } } } else if (remoteModel instanceof RemoteRestModel) { RemoteRestRuntimeEngineBuilder builder = RemoteRuntimeEngineFactory.newRestBuilder(); configRemoteRest(builder, (RemoteRestModel)remoteModel); engine = builder.build(); } RemoteConfiguration config = null; if (engine instanceof RemoteRuntimeEngine) { Access<RemoteConfiguration> configAccess = new FieldAccess<RemoteConfiguration>(RemoteRuntimeEngine.class, "config"); config = configAccess.isReadable() ? configAccess.read(engine) : null; } return config; }
public void startProcessAndTaskViaJmsRemoteJavaAPI(URL serverUrl, String deploymentId, String user, String password) { // the serverURL should contain a URL similar to "http://localhost:8080/jbpm-console" // Setup remote JMS runtime engine factory RuntimeEngine engine = RemoteRuntimeEngineFactory.newJmsBuilder() .addDeploymentId(deploymentId) .addJbossServerHostName(serverUrl.getHost()) .addUserName(user) .addPassword(password) .build(); // Interface with JMS api KieSession ksession = engine.getKieSession(); Map<String, Object> params = new HashMap<String, Object>(); params.put("paramName", new MyType("name", 23)); ProcessInstance processInstance = ksession.startProcess("com.burns.reactor.maintenance.cycle", params); long procId = processInstance.getId(); TaskService taskService = engine.getTaskService(); List<Long> tasks = taskService.getTasksByProcessInstanceId(procId); taskService.start(tasks.get(0), user); }
@Test public void jmsRuntimeEngineNoSslTest() { // disableTaskSecurity RemoteRuntimeEngineFactory.newJmsBuilder() .addUserName("H") .addPassword("gummy bears") .addHostName("localhost") .addJmsConnectorPort(5446) .addRemoteInitialContext(remoteInitialContext) .disableTaskSecurity() .build(); }
.addPassword(password) .disableTaskSecurity() .build();
.useKeystoreAsTruststore() .useSsl(true) .build();
.addKieSessionQueue(ksessionQueue) .addResponseQueue(responseQueue) .build(); .addKieSessionQueue(ksessionQueue) .addResponseQueue(responseQueue) .build(); fail( "Should have thrown exception"); } catch( InsufficientInfoToBuildException iitbe ) { .addKieSessionQueue(ksessionQueue) .addResponseQueue(responseQueue) .build(); fail( "Should have thrown exception"); } catch( InsufficientInfoToBuildException iitbe ) { .addKieSessionQueue(ksessionQueue) .addResponseQueue(responseQueue) .build(); fail( "Should have thrown exception"); } catch( InsufficientInfoToBuildException iitbe ) { .addKieSessionQueue(ksessionQueue) .addResponseQueue(responseQueue) .build(); fail( "Should have thrown exception"); } catch( InsufficientInfoToBuildException iitbe ) { .addTruststoreLocation("ssl/truststore.jts")