Bug 1162906 - service task workitemhandler node parsing error in JBDS
Summary: service task workitemhandler node parsing error in JBDS
Keywords:
Status: CLOSED EOL
Alias: None
Product: JBoss BPMS Platform 6
Classification: Retired
Component: Eclipse Tooling
Version: 6.0.3
Hardware: Unspecified
OS: Unspecified
medium
high
Target Milestone: ---
: ---
Assignee: Kris Verlaenen
QA Contact: Jozef Marko
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2014-11-12 00:39 UTC by Prabakar
Modified: 2020-03-27 19:12 UTC (History)
2 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2020-03-27 19:12:01 UTC
Type: Bug


Attachments (Terms of Use)

Description Prabakar 2014-11-12 00:39:05 UTC
Description of problem:


Version-Release number of selected component (if applicable):


How reproducible:


Steps to Reproduce:
1.Create workitemhandler in JBDS as follows...
	public void executeWorkItem(WorkItem workItem, WorkItemManager manager) {

		// extract parameters
		String snd_message = (String) workItem.getParameter("SecondMessage");
		System.out.println("Prabakar  ::: " + snd_message);
		
		Map<String,Object> results = new HashMap<String,Object>();
		results.put("Result", "Ak");
		
		manager.completeWorkItem(workItem.getId(), results);
	}
2.Update your workitemdefinition information as follows...
  [
    "name" : "SecondNotification",
    "parameters" : [
      "SecondMessage" : new StringDataType(),
    ],
  	  "results" :[
  	  "Result" : new StringDataType()
  	],
  	[
  	  "icon" : "com/icon/world.png",
  	  "displayName" : "Get"
  	]
3. Call the process in main method in JBDS
public static final void main(String[] args) {
try {
KieServices ks = KieServices.Factory.get();
KieContainer kContainer = ks.getKieClasspathContainer();
KieSession kSession = kContainer.newKieSession("ksession-process");			kSession.getWorkItemManager().registerWorkItemHandler("SecondNotification", new SecondWorkingHandler());
Map<String, Object> params = new HashMap<String, Object>();
params.put("MyResultParam", "Prabakar");
kSession.startProcess("com.sample.bpmn.hello", params);
			
        } catch (Throwable t) {
            t.printStackTrace();
        }
    }

Actual results:

	... 15 more
Caused by: org.xmlpull.v1.XmlPullParserException: only whitespace content allowed before start tag and not A (position: START_DOCUMENT seen A... @1:1) 
	at org.xmlpull.mxp1.MXParser.parseProlog(MXParser.java:1519)
	at org.xmlpull.mxp1.MXParser.nextImpl(MXParser.java:1395)
	at org.xmlpull.mxp1.MXParser.next(MXParser.java:1093)
	at com.thoughtworks.xstream.io.xml.XppReader.pullNextEvent(XppReader.java:109)
	... 32 more
4. process xml file...
<?xml version="1.0" encoding="UTF-8"?>
<bpmn2:definitions xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:bpmn2="http://www.omg.org/spec/BPMN/20100524/MODEL" xmlns:bpmndi="http://www.omg.org/spec/BPMN/20100524/DI" xmlns:dc="http://www.omg.org/spec/DD/20100524/DC" xmlns:di="http://www.omg.org/spec/DD/20100524/DI" xmlns:g="http://www.jboss.org/drools/flow/gpd" xmlns:tns="http://www.jboss.org/drools" xmlns="http://www.jboss.org/drools" xsi:schemaLocation="http://www.omg.org/spec/BPMN/20100524/MODEL BPMN20.xsd http://www.jboss.org/drools drools.xsd http://www.bpsim.org/schemas/1.0 bpsim.xsd" id="Definition" expressionLanguage="http://www.mvel.org/2.0" targetNamespace="http://www.jboss.org/drools" typeLanguage="http://www.java.com/javaTypes">
  <bpmn2:itemDefinition id="_ResultItem" structureRef="java.lang.Object"/>
  <bpmn2:itemDefinition id="_String" structureRef="String"/>
  <bpmn2:itemDefinition id="ItemDefinition_1" structureRef="org.drools.core.process.core.datatype.impl.type.ListDataType"/>
  <bpmn2:itemDefinition id="ItemDefinition_2" structureRef="StringDataType"/>
  <bpmn2:itemDefinition id="_Integer" structureRef="Integer"/>
  <bpmn2:itemDefinition id="ItemDefinition_3" structureRef="ObjectDataType"/>
  <bpmn2:itemDefinition id="ItemDefinition_4" structureRef="StirngDataType"/>
  <bpmn2:itemDefinition id="ItemDefinition_5" structureRef="com/icon/world.png"/>
  <bpmn2:itemDefinition id="ItemDefinition_6" structureRef="Get Interviewers"/>
  <bpmn2:itemDefinition id="ItemDefinition_7" structureRef="Get"/>
  <bpmn2:process id="com.sample.bpmn.hello" tns:version="1" tns:packageName="defaultPackage" tns:adHoc="false" name="Hello World" isExecutable="true" processType="Private">
    <bpmn2:extensionElements>
      <tns:import name="org.drools.core.process.core.datatype.impl.type.StringDataType"/>
      <tns:import name="org.drools.core.process.core.datatype.impl.type.ListDataType"/>
    </bpmn2:extensionElements>
    <bpmn2:property id="MyResultParam" itemSubjectRef="ItemDefinition_2"/>
    <bpmn2:startEvent id="_1" name="StartProcess">
      <bpmn2:outgoing>SequenceFlow_1</bpmn2:outgoing>
    </bpmn2:startEvent>
    <bpmn2:sequenceFlow id="SequenceFlow_1" tns:priority="1" sourceRef="_1" targetRef="Task_2"/>
    <bpmn2:endEvent id="EndEvent_1" name="">
      <bpmn2:incoming>SequenceFlow_3</bpmn2:incoming>
    </bpmn2:endEvent>
    <bpmn2:task id="Task_2" tns:taskName="SecondNotification" tns:icon="task.png" name="SecondNotification">
      <bpmn2:incoming>SequenceFlow_1</bpmn2:incoming>
      <bpmn2:outgoing>SequenceFlow_3</bpmn2:outgoing>
      <bpmn2:ioSpecification id="_InputOutputSpecification_3">
        <bpmn2:dataInput id="_DataInput_3" itemSubjectRef="ItemDefinition_2" name="SecondMessage"/>
        <bpmn2:dataOutput id="_DataOutput_3" itemSubjectRef="ItemDefinition_2" name="Result"/>
        <bpmn2:inputSet id="_InputSet_4"/>
        <bpmn2:inputSet id="_InputSet_5" name="New Input Set">
          <bpmn2:dataInputRefs>_DataInput_3</bpmn2:dataInputRefs>
        </bpmn2:inputSet>
        <bpmn2:outputSet id="_OutputSet_4"/>
        <bpmn2:outputSet id="_OutputSet_5" name="New Output Set">
          <bpmn2:dataOutputRefs>_DataOutput_3</bpmn2:dataOutputRefs>
        </bpmn2:outputSet>
      </bpmn2:ioSpecification>
      <bpmn2:dataInputAssociation id="_DataInputAssociation_3">
        <bpmn2:sourceRef>MyResultParam</bpmn2:sourceRef>
        <bpmn2:targetRef>_DataInput_3</bpmn2:targetRef>
      </bpmn2:dataInputAssociation>
      <bpmn2:dataOutputAssociation id="DataOutputAssociation_2">
        <bpmn2:sourceRef>_DataOutput_3</bpmn2:sourceRef>
        <bpmn2:targetRef>MyResultParam</bpmn2:targetRef>
      </bpmn2:dataOutputAssociation>
    </bpmn2:task>
    <bpmn2:sequenceFlow id="SequenceFlow_3" tns:priority="1" sourceRef="Task_2" targetRef="EndEvent_1"/>
  </bpmn2:process>
  <bpmndi:BPMNDiagram id="BPMNDiagram_1">
    <bpmndi:BPMNPlane id="BPMNPlane_Process_1" bpmnElement="com.sample.bpmn.hello">
      <bpmndi:BPMNShape id="BPMNShape_StartEvent_1" bpmnElement="_1">
        <dc:Bounds height="48.0" width="48.0" x="16.0" y="16.0"/>
      </bpmndi:BPMNShape>
      <bpmndi:BPMNShape id="BPMNShape_EndEvent_2" bpmnElement="EndEvent_1">
        <dc:Bounds height="36.0" width="36.0" x="706.0" y="30.0"/>
      </bpmndi:BPMNShape>
      <bpmndi:BPMNShape id="BPMNShape_Task_2" bpmnElement="Task_2">
        <dc:Bounds height="56.0" width="255.0" x="308.0" y="26.0"/>
      </bpmndi:BPMNShape>
      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_1" bpmnElement="SequenceFlow_1" sourceElement="BPMNShape_StartEvent_1" targetElement="BPMNShape_Task_2">
        <di:waypoint xsi:type="dc:Point" x="64.0" y="40.0"/>
        <di:waypoint xsi:type="dc:Point" x="173.0" y="40.0"/>
        <di:waypoint xsi:type="dc:Point" x="173.0" y="54.0"/>
        <di:waypoint xsi:type="dc:Point" x="308.0" y="54.0"/>
      </bpmndi:BPMNEdge>
      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_3" bpmnElement="SequenceFlow_3" sourceElement="BPMNShape_Task_2" targetElement="BPMNShape_EndEvent_2">
        <di:waypoint xsi:type="dc:Point" x="563.0" y="54.0"/>
        <di:waypoint xsi:type="dc:Point" x="627.0" y="54.0"/>
        <di:waypoint xsi:type="dc:Point" x="627.0" y="48.0"/>
        <di:waypoint xsi:type="dc:Point" x="706.0" y="48.0"/>
      </bpmndi:BPMNEdge>
    </bpmndi:BPMNPlane>
  </bpmndi:BPMNDiagram>
</bpmn2:definitions>
Expected results:

no error should...
Additional info:


Note You need to log in before you can comment on or make changes to this bug.