.addUserName("H") .addPassword("gummy bears") .addHostName("localhost") .addJmsConnectorPort(5446) .addKeystorePassword("R") .addKeystoreLocation("ssl/client_keystore.jks") .addTruststorePassword("D") .addTruststoreLocation("ssl/truststore.jts") .addKieSessionQueue(ksessionQueue) .addResponseQueue(responseQueue) .build(); .addUserName("H") .addPassword("gummy bears") .addHostName("localhost") .addJmsConnectorPort(5446) .addKeystorePassword("R") .addKeystoreLocation("ssl/DOES_NOT_EXIST.jks") .addTruststorePassword("D") .addTruststoreLocation("ssl/truststore.jts") .addKieSessionQueue(ksessionQueue) .addResponseQueue(responseQueue) .build(); fail( "Should have thrown exception"); } catch( InsufficientInfoToBuildException iitbe ) { .addUserName("H") .addPassword("gummy bears") .addHostName("localhost")
String hostName = model.getHostName(); if (hostName != null) { builder.addHostName(hostName); try { Properties props = new Properties(); builder.addRemoteInitialContext(ctx); } catch (NamingException ne) { throw new RuntimeException(ne); try { ctx = new InitialContext(); builder.addRemoteInitialContext(ctx); } catch (NamingException ne) { throw new RuntimeException(ne); builder.addJmsConnectorPort(messagingPort); builder.useSsl(model.isUseSsl()); String keystorePassword = model.getKeystorePassword(); if (keystorePassword != null) { builder.addKeystorePassword(keystorePassword); builder.addTruststorePassword(keystorePassword); builder.addKeystoreLocation(keystoreLocation); builder.addTruststoreLocation(keystoreLocation); builder.addTruststorePassword(truststorePassword);
@Test public void jmsRuntimeEngineNoSslTest() { // disableTaskSecurity RemoteRuntimeEngineFactory.newJmsBuilder() .addUserName("H") .addPassword("gummy bears") .addHostName("localhost") .addJmsConnectorPort(5446) .addRemoteInitialContext(remoteInitialContext) .disableTaskSecurity() .build(); }
/** * 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(); }
.addUserName("user") .addPassword("pass") .addRemoteInitialContext(remoteInitialContext) .addHostName("localhost") .addJmsConnectorPort(5446) .addKeystorePassword("R") .addKeystoreLocation("ssl/client_keystore.jks") .useKeystoreAsTruststore() .useSsl(true) .build();
@Test public void jmsRuntimeFactoryBuilderReuseTest() throws Exception { RemoteJmsRuntimeEngineBuilder runtimeEngineBuilder = RemoteRuntimeEngineFactory.newJmsBuilder() .addDeploymentId("deploymentId") .useSsl(true) .addHostName("localhost") .addJmsConnectorPort(5446) .addKeystoreLocation("ssl/client_keystore.jks") .addKeystorePassword("CLIENT_KEYSTORE_PASSWORD") .useKeystoreAsTruststore(); .addTaskServiceQueue((Queue) remoteInitialContext.lookup(TASK_QUEUE_NAME)) .addKieSessionQueue((Queue) remoteInitialContext.lookup(SESSION_QUEUE_NAME)) .addResponseQueue((Queue) remoteInitialContext.lookup(RESPONSE_QUEUE_NAME)); } catch( Exception e ) { String msg = "Unable to lookup queue instances: " + e.getMessage(); String krisPassword = "kris123@"; RemoteJmsRuntimeEngineFactory krisRemoteEngineFactory = runtimeEngineBuilder .addUserName(krisUser) .addPassword(krisPassword) .buildFactory(); .addUserName(maryUser) .addPassword(maryPass) .buildFactory(); .addUserName(johnUser) .addPassword(johnPassword) .buildFactory();
.addDeploymentId("deployment") .addProcessInstanceId(46l) .addUserName("C") .addPassword("cake") .addRemoteInitialContext(remoteInitialContext) .addTimeout(3) .addExtraJaxbClasses(MyType.class) .useSsl(false) .buildFactory(); assertNotNull( jmsRuntimeFactory ); .addRemoteInitialContext(remoteInitialContext) .addUserName("E*") .addPassword("koffie") .buildFactory(); .addRemoteInitialContext(remoteInitialContext) .addPassword("koffie") .buildFactory(); fail( "A user name should always be required!"); } catch(InsufficientInfoToBuildException e) { .addRemoteInitialContext(remoteInitialContext) .addUserName("E*") .buildFactory(); fail( "A password should always be required!"); } catch(InsufficientInfoToBuildException e) { .addUserName("E*")
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; }
.addUserName("user") .addPassword("pass") .addRemoteInitialContext(remoteInitialContext) .addHostName("localhost") .addJmsConnectorPort(5446) .addKeystorePassword("R") .addKeystoreLocation("ssl/client_keystore.jks") .useKeystoreAsTruststore() .useSsl(true) .buildFactory();
.addDeploymentId("deployment") .addProcessInstanceId(46l) .addUserName("C") .addPassword("cake") .addRemoteInitialContext(remoteInitialContext) .addTimeout(3) .addExtraJaxbClasses(MyType.class) .useSsl(false) .buildFactory(); assertNotNull( jmsRuntimeFactory ); .addRemoteInitialContext(remoteInitialContext) .addUserName("E*") .addPassword("koffie") .buildFactory(); .addRemoteInitialContext(remoteInitialContext) .addPassword("koffie") .buildFactory(); fail( "A user name should always be required!"); } catch(InsufficientInfoToBuildException e) { .addRemoteInitialContext(remoteInitialContext) .addUserName("E*") .buildFactory(); fail( "A password should always be required!"); } catch(InsufficientInfoToBuildException e) { .addUserName("E*")
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); }
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; }
int port = 12345; RemoteJmsRuntimeEngineBuilder builder = RemoteRuntimeEngineFactory.newJmsBuilder() .addUserName("H") .addPassword("gummy bears") .addHostName(hostName) .addJmsConnectorPort(port) .addKieSessionQueue(ksessionQueue) .addResponseQueue(responseQueue) .useSsl(true); .addUserName("H") .addPassword("gummy bears") .addJmsConnectorPort(5446) .addKieSessionQueue(ksessionQueue) .addResponseQueue(responseQueue) .buildFactory(); fail( "Should have thrown exception"); } catch( InsufficientInfoToBuildException iitbe ) { .addUserName("H") .addPassword("gummy bears") .addHostName("localhost") .addKieSessionQueue(ksessionQueue) .addResponseQueue(responseQueue) .buildFactory(); fail( "Should have thrown exception"); } catch( InsufficientInfoToBuildException iitbe ) {
String hostName = model.getHostName(); if (hostName != null) { builder.addHostName(hostName); try { Properties props = new Properties(); builder.addRemoteInitialContext(ctx); } catch (NamingException ne) { throw new RuntimeException(ne); try { ctx = new InitialContext(); builder.addRemoteInitialContext(ctx); } catch (NamingException ne) { throw new RuntimeException(ne); builder.addJmsConnectorPort(messagingPort); builder.useSsl(model.isUseSsl()); String keystorePassword = model.getKeystorePassword(); if (keystorePassword != null) { builder.addKeystorePassword(keystorePassword); builder.addTruststorePassword(keystorePassword); builder.addKeystoreLocation(keystoreLocation); builder.addTruststoreLocation(keystoreLocation); builder.addTruststorePassword(truststorePassword);
.addDeploymentId(deploymentId) .addJbossServerHostName("localhost") .addUserName(userId) .addPassword(password) .disableTaskSecurity() .build();