That seems convoluted? Doesn't something like this work?
[code]
Map<String, Object> params = new HashMap<String, Object>();
TransformData tData = new TransformData();
tData.setValues(transform);
params.put("transformData", tData);
org.drools.runtime.process.ProcessInstance pInst = ksession.startProcess(transformationWorkflow.getUuid().toString().substring(1), params);
tData = (TransformData) ksession.getEnvironment().get("transformData");
[/code]