问题
I currently work on a simple business process with the wso2 Business Process Server in Eclipse Developer Studio. I have created a little bpel process with an “if” condition. I got it to work on the server without problems. But, I had to make my “if” condition in the source code, I was not able to configure the if component per gui. I always get the following error when I click on the “Details” tab of the “if” component:
An error has occurred. See error log for more details.
org.eclipse.ui.internal.EditorReference.<init>(Lorg/eclipse/ui/internal/EditorManager;Lorg/eclipse/ui/IEditorInput;Lorg/eclipse/ui/internal/registry/EditorDescriptor;)V
Does anyone know how to avoid this error? It would be great to configure the “if” condition per GUI for demonstrations…
I'am using Developer Studio 3.2.0
Here is my bpel source code:
<!-- Befunde BPEL Process [Generated by the Eclipse BPEL Designer] -->
<!-- Date: Mon Mar 05 12:13:11 IST 2012 -->
<bpel:process name="Befunde"
targetNamespace="http://avintis.com/befunde"
suppressJoinFailure="yes"
xmlns:tns="http://avintis.com/befunde"
xmlns:bpel="http://docs.oasis-open.org/wsbpel/2.0/process/executable"
xmlns:ns1="urn:hl7-org:v2xml"
xmlns:hl7="http://wso2.org/hl7"
xmlns:ns="http://ws.apache.org/axis2">
<!-- Import the client WSDL -->
<bpel:import location="BefundeArtifacts.wsdl" namespace="http://avintis.com/befunde" importType="http://schemas.xmlsoap.org/wsdl/" />
<!-- ================================================================= -->
<!-- PARTNERLINKS -->
<!-- List of services participating in this BPEL process -->
<!-- ================================================================= -->
<bpel:partnerLinks>
<!-- The 'client' role represents the requester of this service. -->
<bpel:partnerLink name="client"
partnerLinkType="tns:Befunde"
myRole="BefundeProvider"
/>
</bpel:partnerLinks>
<!-- ================================================================= -->
<!-- VARIABLES -->
<!-- List of messages and XML documents used within this BPEL process -->
<!-- ================================================================= -->
<bpel:variables>
<!-- Reference to the message passed as input during initiation -->
<bpel:variable name="input"
messageType="tns:BefundeRequestMessage"/>
<!--
Reference to the message that will be returned to the requester
-->
<bpel:variable name="output"
messageType="tns:BefundeResponseMessage"/>
</bpel:variables>
<!-- ================================================================= -->
<!-- ORCHESTRATION LOGIC -->
<!-- Set of activities coordinating the flow of messages across the -->
<!-- services integrated within this business process -->
<!-- ================================================================= -->
<bpel:sequence name="main">
<!-- Receive input from requester.
Note: This maps to operation defined in Befunde.wsdl
-->
<bpel:receive name="receiveInput" partnerLink="client"
portType="tns:Befunde"
operation="process" variable="input"
createInstance="yes"/>
<!-- Generate reply to synchronous request -->
<bpel:assign validate="no" name="InputToResult">
<bpel:copy>
<bpel:from>
<bpel:literal>
<tns:BefundeResponse xmlns:hl7="http://wso2.org/hl7" xmlns:ns1="urn:hl7-org:v2xml" xmlns:tns="http://avintis.com/befunde" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"><tns:result>tns:result</tns:result>
</tns:BefundeResponse>
</bpel:literal>
</bpel:from>
<bpel:to variable="output" part="payload"></bpel:to>
</bpel:copy>
<bpel:copy>
<bpel:from part="payload" variable="input">
<bpel:query queryLanguage="urn:oasis:names:tc:wsbpel:2.0:sublang:xpath1.0">
<![CDATA[hl7:message/ns1:ORU_R01/ns1:ORU_R01.RESPONSE/ns1:ORU_R01.ORDER_OBSERVATION/ns1:ORU_R01.OBSERVATION/ns1:OBX/ns1:OBX.8]]>
</bpel:query>
</bpel:from>
<bpel:to part="payload" variable="output">
<bpel:query queryLanguage="urn:oasis:names:tc:wsbpel:2.0:sublang:xpath1.0">
<![CDATA[tns:result]]>
</bpel:query>
</bpel:to>
</bpel:copy>
</bpel:assign>
<bpel:if name="If_OBX8">
<bpel:condition>
<![CDATA[$output.payload/tns:result="HH"]]>
</bpel:condition>
<bpel:assign validate="no" name="Panic">
<bpel:copy>
<bpel:from>
<bpel:literal xml:space="preserve">Panic</bpel:literal>
</bpel:from>
<bpel:to part="payload" variable="output">
<bpel:query queryLanguage="urn:oasis:names:tc:wsbpel:2.0:sublang:xpath1.0"><![CDATA[tns:result]]></bpel:query>
</bpel:to>
</bpel:copy>
</bpel:assign>
<bpel:else>
<bpel:assign validate="no" name="Normal">
<bpel:copy>
<bpel:from>
<bpel:literal xml:space="preserve">Normal</bpel:literal>
</bpel:from>
<bpel:to part="payload" variable="output">
<bpel:query queryLanguage="urn:oasis:names:tc:wsbpel:2.0:sublang:xpath1.0"><![CDATA[tns:result]]></bpel:query>
</bpel:to>
</bpel:copy>
</bpel:assign>
</bpel:else>
</bpel:if>
<bpel:reply name="replyOutput"
partnerLink="client"
portType="tns:Befunde"
operation="process"
variable="output"
/>
</bpel:sequence>
</bpel:process>
回答1:
It's a known issue as explained WSO2 developer studio edit properties of an assign activity
Please try out Developer Studio 3.0.0, that works!
来源:https://stackoverflow.com/questions/17616862/wso2-business-process-bpel-error-in-gui-with-if-component